---
title: "7+ million Postgres tables without flinching"
publication: "Postgres Weekly"
issue: 581
published_at: "2024-12-11"
canonical_url: "https://postgresweekly.com/issues/581"
---

Plus a look at why Postgres 7.1 broke some extensions, and Microsoft's VP of engineering for Postgres explains Microsoft's strategy. |        

#​581 — December 11, 2024 

[Web Version](https://postgresweekly.com/issues/581)  

Together with [![Timescale logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_1500,h_362/e_make_transparent/co_white,e_outline:30/qjz9oczunihxrp2w6fhc.png)](https://github.com/timescale/pgai)   

Postgres Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/qetnbvmsxtbxsosfq2zc.jpg)](https://electric-sql.com/blog/2024/12/10/electric-beta-release)  

[Electric: A Postgres Sync Engine, Now in Beta](https://electric-sql.com/blog/2024/12/10/electric-beta-release) — It’s always nice to see a new project we casually mentioned a year ago come to fruition, and this real-time engine for syncing data between Postgres and numerous other services (over HTTP) has come a long way since then. [GitHub repo.](https://github.com/electric-sql/electric) 

Kyle Mathews   

💡 If Electric seems familiar to you, the same team created [PGlite](https://pglite.dev/), a way to run a full Postgres database via WebAssembly. (Yes, you can run Postgres _in the browser_.)  

[Running Durable Workflows in Postgres using DBOS](https://supabase.com/blog/durable-workflows-in-postgres-dbos) — A look at [DBOS](https://www.dbos.dev/), a ‘durable workflow’ engine built by a team including none other than one of the founders of the Postgres project. 

Paul Copplestone (Supabase)   [![\](https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/1cffa55e.png)](https://github.com/timescale/pgai) 

[Building AI Apps on Postgres? Start with pgai](https://github.com/timescale/pgai) — pgai is a PostgreSQL extension that brings more AI workflows to PostgreSQL, like embedding creation and model completion. pgai empowers developers with AI superpowers, making it easier to build search and retrieval-augmented generation (RAG) applications. 

Timescale sponsor   

▶[7+ Million Postgres Tables](https://www.youtube.com/watch?v=xhi5Q_wL9i0) — Firmly in the space of _“you might not wanna do this, but it’s certainly interesting”_, an engineer shares an interesting approach to large scale analytics that involves creating a colossal amount of tables (which Postgres has no problem with). 

Kailash Nadh   

**QUICK BITS:** 

- Peter Eisentraut wonders [where _are_ all the Postgres users?](https://peter.eisentraut.org/blog/2024/12/10/where-are-all-the-postgresql-users) Postgres clearly has a _lot_ of users, but where are they all hanging out and are the communities available good enough?
- 🎤 Microsoft's VP of Engineering for Postgres, Affan Dar, [went on the _Talking Postgres_ podcast](https://talkingpostgres.com/episodes/leading-engineering-for-postgres-on-azure-with-affan-dar) to talk both about his background and the strategy behind Microsoft’s investments into Postgres.
- Cary Huang shares [highlights from _Postgres Conference 2024_ in Seattle](https://www.highgo.ca/2024/12/05/highlights-from-postgresql-conference-2024-in-seattle/) which took place at last month's [PASS Data Community Summit.](https://passdatacommunitysummit.com/)
- The _DevClass_ blog spoke to the [Amazon Aurora DSQL](https://aws.amazon.com/rds/aurora/dsql/features/) team about [why DSQL currently lacks so many core Postgres features.](https://devclass.com/2024/12/09/amazon-explains-absence-of-familiar-features-in-postgresql-compatible-aurora-dsql/) Ultimately, it's a work in progress.
- 🇫🇷 The 9th [pgDay Paris](https://2025.pgday.paris/) takes place in France next March and [their Call for Papers](https://2025.pgday.paris/call-for-papers/) is now open (until December 31). Other open CFPs include those [for PGConf.dev 2025](https://2025.pgconf.dev/cfp.html) and [Nordic PgDay 2025.](https://2025.nordicpgday.org/cfp/)
- [Ben Nadel reviews](https://www.bennadel.com/blog/4740-mastering-postgres-video-course-by-aaron-francis.htm) Aaron Francis' new [_Mastering Postgres_](https://masteringpostgres.com/) course.
- 🎄 If solving [Advent of Code's](https://adventofcode.com/2024) challenges in SQL isn't for you, how about trying out [Advent of SQL?](https://adventofsql.com/)   

🤯 [Explaining the ABI Breakage in Postgres 17.1](https://www.enterprisedb.com/blog/explaining-abi-breakage-postgresql-171) — A few weeks ago, Postgres 17.1 was released and some changes caused problems for a few popular extensions. [Postgres 17.2](https://www.postgresql.org/about/news/postgresql-172-166-1510-1415-1318-and-1222-released-2965/) was rapidly released to resolve the problem, but here we get a bit more of the story and technical detail behind what happened. Certainly stuff to be aware of if you’re an extension developer. 

Pavan Deolasee (EDB)   

[Smarter Postgres LLM with Retrieval Augmented Generation](https://www.crunchydata.com/blog/smarter-postgres-llm-with-retrieval-augmented-generation) — A quick, easy to digest introduction to the concept of ‘RAG’ where the results from large language models are improved by providing added context sourced from extra data sources. 

Paul Ramsey (Crunchy Data)   

📄 [Achieving a Zero-Downtime Postgres Major Version Upgrade](https://www.medplum.com/blog/zero-downtime-postgres-major-version-upgrade) Matt Long (Medplum) 

📄 [Iceberg Ahead! Analyzing Shipping Data in Postgres](https://www.crunchydata.com/blog/iceberg-ahead-analyzing-shipping-data-in-postgres) Marco Slot (Crunchy Data) 

📄 [Performing ELT Operations Using DOMAINs](https://www.percona.com/blog/performing-elt-operations-using-domains/) Robert Bernier (Percona) 

📄 [Understanding Wait Events in Postgres](https://stormatics.tech/blogs/understanding-wait-events-in-postgresql) Umair Shahid (Stormatics) 

📄 [Implementing Time Travel in Postgres](https://proopensource.it/blog/postgresql-time-travel) Stefanie Janine Stölting   

🛠 Code and Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/lv21byqtzyutb2ojpadl.jpg)](https://pgbadger.darold.net/)  

[pgBadger 13.0: A Postgres Log Analysis Tool](https://pgbadger.darold.net/) — A performance-focused log analyzer that produces detailed usage reports. [Here’s an example report](https://pgbadger.darold.net/examples/sample.html) to get a feel for it. [GitHub repo.](https://github.com/darold/pgbadger) 

Gilles Darold   

[pg_worker_pool: Extension to Create a Pool of Background Workers](https://github.com/serpent7776/pg_worker_pool/) — A simple extension that leans on Postgres’s [background worker process](https://www.postgresql.org/docs/current/bgworker.html) mechanism to make it easy to distribute queries across a number of workers. 

Krzysztof Leśniak   

- [pgtt-rsl 2.0](https://github.com/darold/pgtt-rsl/) – Create & manage Oracle / DB2 style global temporary tables.
- [pgRoll 0.8](https://github.com/xataio/pgroll) – Zero-downtime, reversible schema migrations for Postgres.
- [pgwire 0.28](https://github.com/sunng87/pgwire) – The Postgres wire protocol implemented in a Rust library.
- [pgai 0.3](https://github.com/timescale/pgai) – Timescale's tools to work with RAG and LLMs in Postgres.
- [bb8 0.9](https://github.com/djc/bb8) – Full-featured async Postgres connection pool for Rust.
- [DoltgreSQL 0.15](https://github.com/dolthub/doltgresql) – Version-controlled Postgres-a-like.    

**Got a new email?** You can [change your address here](https://postgresweekly.com/edit_subscription/*|UID|*). 

--- 

**Bored of us?** [Click here to stop getting Postgres Weekly](https://postgresweekly.com/leave/*|UID|*). 

--- 

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. _Thanks!_ 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada. 

[Stop getting this newsletter](https://postgresweekly.com/leave/*|UID|*).
