#​544 — February 28, 2024

Web Version

Together with  Redgate

Postgres Weekly

The azure_ai Extension to Azure Database for PostgreSQL — One benefit of Microsoft’s close relationship with OpenAI is that it’s available directly within Azure, and now you can directly work with Azure OpenAI from within Azure Database for PostgreSQL using the azure_ai extension, as well as pgvector to work with any embedding-based results of that work. Claire shows off how this all looks in practice in ▶️ this five minute screencast.

Claire Giordano (Microsoft)

PGlite: Postgres in WebAssembly — People have brought Postgres into WebAssembly contexts before, though usually with a Linux VM layer sat in between. PGlite packages a WASM build of Postgres into a TypeScript library that can be run in the browser or on Node.js or Bun and is only 3.7MB gzipped! An exciting development - we look forward to seeing where it goes next.

ElectricSQL / Neon

💡 You can play with a real world PGlite deployment in this simple browser-based playground by Anton Zhiyanov.

The State of the Database Landscape 2024 — Redgate’s latest survey results show that PostgreSQL continues to be in the top four most used databases as organizations continue to embrace multiple database platforms. Find out more about the latest trends in the database landscape.

Redgate Software sponsor

The Rest is History: Investigations of WAL — Get a deeper insight into just what the WAL files used by Postgres contain as Brian steps through reviewing the Write-Ahead Log history as part of a sample recovery scenario.

Brian Pace (Crunchy Data)

11 Lessons to Learn When Using NULLsNULL represents a missing, unknown or ‘non’-value in SQL and it has some interesting properties and behaviors to be aware of.

Francesco Tisiot


The Two Types of Indexes in pgvectorpgvector is a popular extension for working with and querying against vectors, and vectors demand different index types from the norm. Semab compares the IVFFLAT and HNSW options on offer.

Semab Tariq (Stormatics)

The Default Value of fdw_tuple_cost Was Updated to 0.2 – Why? — A quick look at a recent change to Postgres.

Umair Shahid (Stormatics)

When Less is More: Database Connection Scaling — The more connections a Postgres server can handle, the better.. right? Not always. If max_connections is set to an unrealistic number, even if those connections aren’t being used, negative effects can be felt. (A classic article, but potentially worth revisiting.)

Richard Yen

📰 Classifieds

Want to scale your app to millions of users? 📈 Learn how to confidently autoscale your database to always perform under real-world demands.

📢 Free Distributed Postgres DB with 3 node cluster and 1-click provisioning across 3 regions from pgEdge Cloud. Sign up and get a cool t-shirt.

Installing Postgres on SLES 15 Just Got Easier (and Better) — One for SuSE Enterprise Linux users.

David Detter

Maximizing Microservice Databases with Kubernetes, Postgres, and CloudNativePG
Gabriele Bartolini

🛠 Code and Tools

pg-lock-tracer: An eBPF-Based Lock Tracer — Use eBPF instrumentation to dig into lock-related bottlenecks in Postgres when running on Linux. Unlike with pg_locks, you get a continuous view of the locking activity and timings, and can produce animated views of locks.

Jan Nidzwetzki

pgagroal 1.6: A High Performance Postgres Connection Pool — Introduces support for CLI/JSON output, client certificates, as well as macOS.

Red Hat Inc.

pg_dumpbinary v2.15: Dump a Postgres Database to Binary Format — Rather than produce a SQL dump, this produces a binary one (which can be restored by the accompanying pg_restorebinary tool). There are various edge cases where a binary dump may be preferable, such as when using (very) large bytea columns or custom types that use \0 values that can break standard dumps.