Exploring the OAuth method in PostgreSQL 18

The latest PostgreSQL release introduced a new authentication method: OAuth. This brings PostgreSQL closer to enterprise SSO systems, while opening new discussions around design and security considerations. I spent some time exploring how Postgres implemented this method and the tradeoffs involved. This post summarizes how OAuth works in PostgreSQL, steps I took to set it up using Keycloak, along with some practices to follow. Here are a few points for the reader:

Read More about Exploring the OAuth method in PostgreSQL 18

mDNSResponder and Cloudflare

Ever since I began using a MacBook for personal usage, I’ve been seeing an error that prevented me from using WARP by Cloudflare. The error message, A third-party process is performing DNS resolution on this device often points to Google Chrome helper or mDNSResponder as the conflicting process. After spending some time in the documentation, I found some processes can cause mDNSResponder to bind to port 53, preventing WARP from setting local DNS proxy on the same port. Here are the list of applications I’ve noticed that cause this:

Read More about mDNSResponder and Cloudflare

An Unexpected Invitation

Last Friday, December 13, 2024, I attended the Hyderabad PostgreSQL UserGroup Meetup, expecting a regular attendee experience. However, the host, Hari, surprised me with an unplanned invite to join the round table as one of the panelists. Being fairly inexperienced around databases and having no experience giving talks at community meetups, I was initially stunned and hesitant. However, I decided to join anyway: thought it would be a good experience. Out of nervousness, my answers seemed scattered, with my mentally-prepared points slipping away mid-conversation. By the end of this round table, I felt embarrassed of my answers.

Read More about An Unexpected Invitation

Concurrency Limits and Performance

I read this blog by Netflix Engineering team this morning, which reminded me of a challenge I faced on, working on a project in my first role. The blog shares Netflix’s approach to managing system performance and availability under heavy workload through adaptive concurrency limits. Their algorithm dynamically adjusts the number of concurrent requests their system would handle, finding the right number that maximised their throughput while maintaining low latency. Reading the article helped me understand why my application failed, and thought it would be good to share what went wrong, and how we could’ve improved it.

Read More about Concurrency Limits and Performance