#​569 — September 11, 2024

Web Version

Together with  Blacksmith

Postgres Weekly

Tetris-SQL: Using SQL's Turing Completeness to Build Tetris — An implementation of Tetris in just a few SQL queries on Postgres! As well as being an impressive bit of work, it’s also educational, as Nuno takes time to walk through the implementation details in the README.

Nuno Faria

Postgres 17 Release Candidate 1 Released — If you’ve been uncertain about running any of the betas, now is a good time to kick the tires, as the release candidates tend to be largely identical to the final release. The final release is expected on September 26 (we may delay Postgres Weekly that week, due to this).

PostgreSQL Global Development Group

Run GitHub Actions Up to 2x Faster at Half the Cost — Blacksmith runs your GitHub Actions substantially faster by running them on modern gaming CPUs. Integrating Blacksmith is a one-line code change. 100+ companies like Ashby, Superblocks, and Slope use Blacksmith to help developers merge code faster.

Blacksmith sponsor

Shrinking Big Postgres Tables: Copy-Swap-Drop — If you’ve got a big unwieldy table with only a subset of its data in active use but you don’t want to partition the table or perform lots of DELETE operations, you could copy the rows you want to keep into a new table, rename the new table, and drop the original one.

Andrew Atkinson

QUICK BITS:

How Neon Dynamically Estimates Postgres’ Working Set Size — ‘Working set’ refers to the data that’s used/read/written by a system over a specific time period. Figuring out what the current ‘working set’ of a Postgres server is is actually quite difficult, but essential to do if you want to do autoscaling, as serverless platform Neon now can.

Em Sharnoff (Neon)

Understanding the Postgres Hackers Mailing List — If you want to get involved with Postgres development or otherwise have a deep interest in following along with developments, the pgsql-hackers list is the place to be. As a busy, highly technical list, there’s a lot of in-house jargon, which Greg explains here.

Greg Sabino Mullane

Why SELECT * FROM Table is Not Merely a 'Read' — Surely selecting all of the content from a table is a read operation that can be safely load balanced? Not so fast, says Hans, who comes armed with a counter-example.

Hans-Jürgen Schönig

📄 Implementing Filtered Semantic Search Using pgvector and JavaScript Team Timescale

📄 Writing a Good Talk Proposal – From someone who’s written a lot of proposals for Postgres events. Tomas Vondra

📄 How to Get Info About Relations Between System Tables Pavel Stěhule

🛠 Code and Tools

PG Back Web 0.3: A Postgres Backup System with Web Interface — A Go-powered app for bringing a bit more of a friendly user interface to Postgres backups, as well as scheduled backups, backup monitoring, and webhooks. It’s available as a Docker image too.

Luis Eduardo

📰 Classifieds

Redgate Software is researching how Postgres users utilise database tools. Please complete our short survey to share your views.


Dragonfly (25k GitHub stars) is a modern Redis replacement. Organizations that switch to Dragonfly can see 25X performance improvements.


New PostgreSQL partnership announced between PASS Data Community Summit and Postgres Conference Seattle this November.

pgcopydb 0.17: Copy a Postgres Database to a Target Postgres Server — Automates and provides a little structure around the running of pg_dump | pg_restore between two running Postgres servers.

Dimitri Fontaine

PL/Haskell 4.0: Use Haskell in Your SQL Functions — Haskell is a functional language but you can, nonetheless, use it to define procedures in such a way that Postgres can work with.

Edward F. Behn, Jr.

  • PLV8 3.2.3 – Use the V8 JavaScript engine in Postgres. This version bump introduces Postgres 17 support.

  • pgrx 0.12.3 – A way to build Postgres extensions with Rust. Now supports Postgres 17 RC1.

  • pgxmock 4.3 – Mock driver to test database interactions in Go.

  • ruby-pg 1.5.8 – The Postgres client library for Ruby