#​510 — June 14, 2023

Web Version

Together with  pgAnalyze

Postgres Weekly

🗣 Let's Make Postgres Multi-Threaded? — Inspired by some conversations at PGCon, Postgres contributor Heikki Linnakangas is excited about the idea of taking Postgres from a multi-process world to one with a single process using multiple threads. Don’t get excited yet; it'll be a huge undertaking, if it happens. The response was mixed: Tom Lane predicts disaster, though Robert Haas is in support, but thinks a process-based model may need to remain an option for a long time to come.

Heikki Linnakangas

Postgres Performance at Any Scale — Deliver consistent database performance and availability through intelligent tuning advisors and continuous database profiling. Take control of your Postgres workload and query plans and empower all development teams to fix slow queries. Try pganalyze today!

pganalyze sponsor

Remotely Loading Google Sheets Data into Postgres — Getting data out of Google Sheets in CSV format is pretty easy, but what about getting that CSV into a Postgres database? There are a few options from COPY to pulling in data directly over HTTP (with an extension), an FDW, or even spinning up some PL/Python to do the job.

Paul Ramsey


Building Hypothetical Indexes in Amazon RDS with HypoPGHypoPG is an interesting extension for Postgres that lets you pretend that certain indexes exist when they don’t in order to see whether or not Postgres would use them. This tutorial targets RDS but the idea can be used anywhere.

Peter Celentano

Migrating SQL Server Databases to Babelfish for Aurora PostgreSQLBabelfish for Aurora PostgreSQL includes support for both T-SQL and the SQL Server wire-protocol so it's possible to migrate a SQL Server database to Babelfish using AWS’s ‘Bulk Copy Program’ utility.

Fernandes, Valentim, and Carvalho Queiroz (AWS)

Three Ways to Plot Incremental Materialized Views
David Bailey (Timescale)

Security Hardening Best Practices for Azure Database for PostgreSQL - Flexible Server
Gennady Kostinsky (Microsoft)

Code and Tools

Automatically Filling Prepared Statement Placeholders with pgBadgerpgBadger is a Postgres log analyzer with a specific feature to dump all queries from a log file in a format where bind parameters are interpolated into the queries directly.

Kaarel Moppel

An Open Source Alternative to PostgreSQL on the Cloud. Sign Up for Early Access

EDB BigAnimal sponsor

Supabase Vector: An Open Source Vector Toolkit for Postgres and Python — Everyone wants to store embedding vectors lately for ML-powered search, and pgvector makes it easy to do with Postgres. Supabase goes a step further by wrapping it all up with their cloud platform and Python libraries. There’s also a tutorial on building an image search feature (▶️ video version) with it.


credcheck v2.0: The Credential Checking Extension — credcheck can enforce rules around using secure credentials for user creation, password changes, and user renaming. v2.0 adds Postgres 16 compatibility, plus a feature to limit the number of auth failure attempts before a user is banned.

Gilles Darold

“When going with Postgres, I thought 'this is the first thing we'll have to replace'. Still didn't happen after 6 years.”

CodeSandbox co-founder Ives van Hoorne 🐦 posting on Twitter about how CodeSandbox stores over 40 million sandboxes and 400 million files with Postgres.