<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Postgres Weekly</title>
    <description>A weekly email roundup of Postgres news and articles</description>
    <link>https://postgresweekly.com/</link>
    <item>
      <title>Can REPACK CONCURRENTLY replace pg_repack?</title>
      <link>https://postgresweekly.com/issues/667</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​667 — September 30, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://postgresweekly.com/link/191060/rss" style=" color: #0088bb;"&gt;Web Version&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;Postgres Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/190987/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/cjv01ik6nyjgnpab0kla.jpg" width="640" style="    line-height: 1.0em;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190987/rss" title="www.postgresql.org" style=" color: #0088bb; font-size: 1.1em; line-height: 1.4em;"&gt;Postgres 19 Beta 4 Released&lt;/a&gt;&lt;/span&gt; — Confirming &lt;a href="https://postgresweekly.com/link/190988/rss" style=" color: #0088bb;"&gt;recent developments&lt;/a&gt;, the latest beta is largely about what’s been removed, although numerous fixes have also made it in. A release candidate is due in the next couple of weeks, with the final release &lt;em&gt;possibly&lt;/em&gt; in October if things go well.&lt;/p&gt;
  &lt;p&gt;PostgreSQL Global Development Group &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 What's gone? SQL/PGQ (property graph) support, online enabling/disabling of checksums, temporal updates/deletes with &lt;code&gt;FOR PORTION OF&lt;/code&gt;, &lt;code&gt;MERGE/SPLIT PARTITIONS&lt;/code&gt;, and the &lt;code&gt;pg_get_role_ddl()&lt;/code&gt;, &lt;code&gt;pg_get_tablespace_ddl()&lt;/code&gt;, and &lt;code&gt;pg_get_database_ddl()&lt;/code&gt; functions.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://postgresweekly.com/link/190986/rss" style=" color: #0088bb;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/f46e96c8.png" width="140" height="140" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190986/rss" title="www.tigerdata.com" style=" color: #0088bb; font-size: 1.05em;"&gt;SELECT count(*) Shouldn't Take Eight Seconds&lt;/a&gt;&lt;/span&gt; — A count or a rollup over millions of rows crawls, so you add indexes, a read replica, a nightly job. TimescaleDB extends the Postgres you already run so those queries return in milliseconds on live data. No warehouse. &lt;a href="https://postgresweekly.com/link/190986/rss" style=" color: #0088bb;"&gt;Get $1000 credit to start&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Tiger Data (creators of TimescaleDB) &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #997 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190989/rss" title="boringsql.com" style=" color: #0088bb; font-size: 1.05em;"&gt;What &lt;code&gt;REPACK (CONCURRENTLY)&lt;/code&gt; Costs While It Runs&lt;/a&gt;&lt;/span&gt; — A measurement of Postgres 19's new online table rewrite against &lt;code&gt;pg_repack&lt;/code&gt; and &lt;code&gt;pg_squeeze&lt;/code&gt;. &lt;code&gt;REPACK&lt;/code&gt; was fastest, but has some downsides to consider.&lt;/p&gt;
  &lt;p&gt;Radim Marek &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 &lt;code&gt;REPACK (CONCURRENTLY)&lt;/code&gt; is getting a lot of attention on pgsql-hackers this week too. A &lt;a href="https://postgresweekly.com/link/190990/rss" style=" color: #0088bb; font-weight: 600;"&gt;bug that could lose updates&lt;/a&gt; was fixed, and Radim's own testing found &lt;a href="https://postgresweekly.com/link/190991/rss" style=" color: #0088bb; font-weight: 600;"&gt;a hard limit&lt;/a&gt; on how many concurrent changes a repack can absorb.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;⚠️ &lt;a href="https://postgresweekly.com/link/190992/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;PgBouncer 1.26&lt;/a&gt; addresses three CVEs, including two DoS bugs that unauthenticated clients can trigger. It also now tracks &lt;code&gt;search_path&lt;/code&gt; and &lt;code&gt;default_transaction_read_only&lt;/code&gt; by default.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Devrim Gunduz &lt;a href="https://postgresweekly.com/link/190993/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;reports&lt;/a&gt; that Postgres's official &lt;a href="https://postgresweekly.com/link/190994/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Yum&lt;/a&gt; and &lt;a href="https://postgresweekly.com/link/190995/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Zypper&lt;/a&gt; repositories are now easier to navigate on the Web. He's also &lt;a href="https://postgresweekly.com/link/190996/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;begun packaging Rust extensions&lt;/a&gt; there, starting with &lt;em&gt;PostgreSQL Anonymizer&lt;/em&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Google has &lt;a href="https://postgresweekly.com/link/190997/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;rounded up its upstream Postgres work&lt;/a&gt; so far this year.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Amazon Aurora &lt;a href="https://postgresweekly.com/link/190998/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;now supports&lt;/a&gt; Postgres 18.6, 17.11, 16.15, 15.19 and 14.24.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190999/rss" title="clickhouse.com" style=" color: #0088bb; font-size: 1.05em;"&gt;Can Your Postgres Survive a Bad Query?&lt;/a&gt;&lt;/span&gt; — ClickHouse compares what happens on four Postgres cloud providers (itself included) when queries eat all the RAM, and explains why setting &lt;code&gt;work_mem&lt;/code&gt; doesn’t prevent it.&lt;/p&gt;
  &lt;p&gt;Kevin Biju (ClickHouse) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;▶  &lt;a href="https://postgresweekly.com/link/191000/rss" title="www.youtube.com" style=" color: #0088bb; font-size: 1.05em;"&gt;Andres Freund on Where Linux Helps and Hurts Postgres&lt;/a&gt;&lt;/span&gt; — A candid talk from this year’s &lt;a href="https://postgresweekly.com/link/191001/rss" style=" color: #0088bb;"&gt;Kernel Recipes&lt;/a&gt; conference, aimed at kernel developers, covering topics like io_uring, huge pages, futexes, and atomic writes.&lt;/p&gt;
  &lt;p&gt;Andres Freund &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/191002/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;PgQ and PgQue: The Queue Engines You Might Need&lt;/a&gt; – Spotting bloated task tables and moving them to a purpose-built queue. &lt;cite&gt;Jobin Augustine (Percona)&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/191003/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Fixing One Function's Disk Spills with &lt;code&gt;ALTER FUNCTION … SET work_mem&lt;/code&gt;&lt;/a&gt; – An API slowdown was traced to a function causing 150GB of temporary-file writes a day, but a function-local setting tidied up the mess. &lt;cite&gt;Dinesh Kumar (CortexRidge)&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/191004/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;When to Choose x86 or ARM for Postgres&lt;/a&gt; – Some pros and cons, if you're able to make the choice. &lt;cite&gt;Ahmed Darwich (PlanetScale)&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/191005/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;pgBackRest and Failover: Why &lt;code&gt;archive_mode&lt;/code&gt; Matters&lt;/a&gt; &lt;cite&gt;Stefan Fercot&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
    &lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;🎟️ Join us at &lt;a href="https://postgresweekly.com/link/191006/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Supabase Select&lt;/a&gt; and learn how we’re building the next generation operating system for Postgres with Multigres. &lt;a href="https://postgresweekly.com/link/191006/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Apply to attend with 25% off: SUPAWEEKLY&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;span style="font-size: 1.2em;"&gt;🛠️&lt;/span&gt; &lt;span style="text-transform: uppercase;    font-weight: 600; font-size: 1.3em;"&gt;Tools and Releases&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/191007/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/wavbvnwvp3kzshmrqsra.jpg" width="640" style="    line-height: 1.0em;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/191007/rss" title="safenotsafe.dev" style=" color: #0088bb; font-size: 1.05em;"&gt;Safe Not Safe: Is My Migration Safe?&lt;/a&gt;&lt;/span&gt; — A fun side project from a former lead of Cloudflare's Postgres platform team, who spent years reviewing other teams' migrations. Paste in a SQL migration and it flags common problems, parsing entirely in the browser using Postgres's own SQL parser via WASM.&lt;/p&gt;
  &lt;p&gt;Vignesh Ravichandran &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/191008/rss" title="rynr.dev" style=" color: #0088bb; font-size: 1.05em;"&gt;Kafgres 0.2: 700 MB/s of Kafka Throughput on Postgres&lt;/a&gt;&lt;/span&gt; — We featured this Kafka-compatible broker that runs &lt;em&gt;inside&lt;/em&gt; Postgres a few weeks ago. Its author has since taken it from 113 MB/s to 700 MB/s write throughput on a single box.&lt;/p&gt;
  &lt;p&gt;Raynor Elgie &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/191009/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;Pgpool-II 4.7.3, 4.6.8, 4.5.13, 4.4.18, 4.3.21&lt;/a&gt; – A raft of security fixes to fix seven CVEs, one allowing clients using certificate authentication to log in as another user without a password.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/191010/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;PgDog 0.1.60&lt;/a&gt; – Rust-powered pooler and sharding proxy. Sharded &lt;code&gt;SELECT&lt;/code&gt; queries are now handled 40% faster.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/191011/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;pg_raw_parse&lt;/a&gt; – PgDog's Rust bindings to the Postgres parser with 20–60x faster parsing than &lt;code&gt;pg_query.rs&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/191012/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;pgBackRest 2.59.2&lt;/a&gt; – The backup/restore tool adds Postgres 19 beta 4 support.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/191014/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;PLHaskell 6.0&lt;/a&gt; – Write Haskell in SQL code. Now supports &lt;code&gt;Range&lt;/code&gt; types.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;span style="font-size: 1.2em;"&gt;✨&lt;/span&gt; &lt;span style="text-transform: uppercase;    font-weight: 600; font-size: 1.3em;"&gt;And finally…&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/191013/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/uyyrumbtq6jmmhybqa3p.jpg" width="640" style="    line-height: 1.0em;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/191013/rss" title="cedardb.com" style=" color: #0088bb; font-size: 1.05em;"&gt;'We Ported the Original Doom to SQL'&lt;/a&gt;&lt;/span&gt; — Not &lt;em&gt;quite&lt;/em&gt; Postgres, but a fun project from the team behind the Postgres-compatible CedarDB. It takes 1993's pioneering FPS and runs the logic and renderer in SQL, returning each frame as a bitmap for Python to show. Some neat architectural details (the renderer uses 89 CTEs!) and SQL queries here.&lt;/p&gt;
  &lt;p&gt;Lukas Vogel (CedarDB) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
     
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://postgresweekly.com/open/667/rss" width="1" height="1" /&gt;</description>
      <pubDate>Wed, 30 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://postgresweekly.com/issues/667</guid>
    </item>
    <item>
      <title>Postgres 19's bumpy road to release</title>
      <link>https://postgresweekly.com/issues/666</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​666 — September 23, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190723/rss" style=" color: #0088bb;"&gt;Web Version&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;Postgres Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/190698/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/orpeyafvjtdmeurbgwki.jpg" width="640" style="    line-height: 1.0em;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190698/rss" title="www.pgedge.com" style=" color: #0088bb; font-size: 1.1em; line-height: 1.4em;"&gt;Looking Forward to Postgres 19: Epilogue&lt;/a&gt;&lt;/span&gt; — Postgres 19 is having an eventful beta, with several headline features pulled and no release date. Shaun digs into why via the &lt;code&gt;pgsql-hackers&lt;/code&gt; mailing list, and suggests AI-assisted review is surfacing bugs faster than committers can handle them. For the &lt;em&gt;good&lt;/em&gt; news, Elizabeth Garrett Christensen &lt;a href="https://postgresweekly.com/link/190699/rss" style=" color: #0088bb;"&gt;lists what's still shipping&lt;/a&gt;, like parallel autovacuum and &lt;code&gt;ON CONFLICT DO SELECT&lt;/code&gt;.&lt;/p&gt;
  &lt;p&gt;Shaun Thomas (pgEdge) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 &lt;b&gt;Beta 4 is expected tomorrow (September 24).&lt;/b&gt; &lt;a href="https://postgresweekly.com/link/190700/rss" style=" color: #0088bb; font-weight: 600;"&gt;This &lt;em&gt;draft&lt;/em&gt; release announcement&lt;/a&gt; lists the reverts, and a release candidate should follow in early October.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://postgresweekly.com/link/190701/rss" style=" color: #0088bb;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/e12423d6.png" width="110" height="110" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190701/rss" title="www.tigerdata.com" style=" color: #0088bb; font-size: 1.05em;"&gt;Analytics Shouldn't Mean a Second Database&lt;/a&gt;&lt;/span&gt; — A dashboard query slows as data grows, and the fix is usually a warehouse plus a pipeline: sync jobs, lag, stale copies. TimescaleDB extends the Postgres you already run, so analytics stay fast on live data. &lt;a href="https://postgresweekly.com/link/190701/rss" style=" color: #0088bb;"&gt;Get $1000 credit to start&lt;/a&gt;&lt;/p&gt;
  &lt;p&gt;Tiger Data (creators of TimescaleDB) &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #997 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;span style="text-transform: uppercase;    font-weight: 600; font-size: 1.3em;"&gt;In Brief&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;🔎 PlanetScale &lt;a href="https://postgresweekly.com/link/190702/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;has launched TIN&lt;/a&gt;, a fast BM25 full-text search index for Postgres. It's closed source and PlanetScale-only, though they do offer &lt;a href="https://postgresweekly.com/link/190703/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Lead&lt;/a&gt;, an open source &lt;em&gt;"slow but correct substitute"&lt;/em&gt; for testing TIN queries locally.&lt;/li&gt;
&lt;li&gt;🎧 Over on &lt;em&gt;Talking Postgres&lt;/em&gt;, Claire Giordano &lt;a href="https://postgresweekly.com/link/190704/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;spoke with Peter Eisentraut&lt;/a&gt; about his 25 years of contributing to Postgres, which began with &lt;code&gt;psql&lt;/code&gt; tab completion.&lt;/li&gt;
&lt;li&gt;🇨🇦 &lt;a href="https://postgresweekly.com/link/190705/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;PGConf.dev 2027&lt;/a&gt; takes place May 11–14 in Montréal. Registration is open. It's always popular and you can watch &lt;a href="https://postgresweekly.com/link/190706/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;📺 this year's talks here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://postgresweekly.com/link/190707/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Google has previewed native BM25 search&lt;/a&gt; in AlloyDB and Cloud SQL, built atop the &lt;a href="https://postgresweekly.com/link/190708/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;&lt;code&gt;pg_textsearch&lt;/code&gt;&lt;/a&gt; extension.&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;span style="font-size: 1.2em;"&gt;⚙️&lt;/span&gt; &lt;span style="text-transform: uppercase;    font-weight: 600; font-size: 1.3em;"&gt;Operations &amp;amp; Performance&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/190709/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/f967fqujsh9acwnl9qvn.jpg" width="640" style="    line-height: 1.0em;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190709/rss" title="www.percona.com" style=" color: #0088bb; font-size: 1.05em;"&gt;pgBackRest Compression: How Much CPU is a Smaller Backup Worth?&lt;/a&gt;&lt;/span&gt; — A benchmark of pgBackRest's compression algorithms and levels to find where extra CPU stops paying off in smaller backups. Spoiler: &lt;em&gt;"Zstandard at a low level is the sweet spot"&lt;/em&gt;.&lt;/p&gt;
  &lt;p&gt;Agustín Gallego (Percona) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190710/rss" title="tapoueh.org" style=" color: #0088bb; font-size: 1.05em;"&gt;Ten Years of Postgres Logical Replication&lt;/a&gt;&lt;/span&gt; — A tour of what each Postgres release (from 10 to 19) added to logical replication, shown through building a multi-server write setup using only core features.&lt;/p&gt;
  &lt;p&gt;Dimitri Fontaine &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190711/rss" title="www.dbos.dev" style=" color: #0088bb; font-size: 1.05em;"&gt;When Deleting Old Rows Costs More Than the Work&lt;/a&gt;&lt;/span&gt; — Some lessons for anyone with big tables where bulk deletes can cost more than the writes. DBOS's engineers share some fixes, like replacing cascading deletes with batched deletes and running manual vacuums.&lt;/p&gt;
  &lt;p&gt;Kraft and Li (DBOS) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/190712/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Where Postgres Stores Row Locks&lt;/a&gt; – Every row lock ends up as a write to the heap page, as revealed by &lt;code&gt;pageinspect&lt;/code&gt;. &lt;cite&gt;Radim Marek&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;span style="font-size: 1.2em;"&gt;🛠️&lt;/span&gt; &lt;span style="text-transform: uppercase;    font-weight: 600; font-size: 1.3em;"&gt;Tools and Releases&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/190713/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/w0fiwim4hc6clvxcy8ra.jpg" width="640" style="    line-height: 1.0em;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190713/rss" title="github.com" style=" color: #0088bb; font-size: 1.05em;"&gt;pgcli 4.7: The Friendlier &lt;code&gt;psql&lt;/code&gt; Now Works in Scripts Too&lt;/a&gt;&lt;/span&gt; — A popular alternative to &lt;code&gt;psql&lt;/code&gt; for interactive work, with context-aware autocompletion, syntax highlighting, and named queries. v4.7 makes it more useful for scripting, with psql-style &lt;code&gt;-c&lt;/code&gt;, &lt;code&gt;-f&lt;/code&gt; and &lt;code&gt;-t&lt;/code&gt; flags, plus &lt;code&gt;-y&lt;/code&gt; to skip destructive command prompts.&lt;/p&gt;
  &lt;p&gt;the dbcli project &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190714/rss" title="github.com" style=" color: #0088bb; font-size: 1.05em;"&gt;pgwrh 1.0 Alpha: Read Scaling with Sharded Replicas&lt;/a&gt;&lt;/span&gt; — An experimental extension that shards a partitioned table across read replicas, with each holding only part of the data and fetching the rest from peers. Not for production!&lt;/p&gt;
  &lt;p&gt;Michał Kłeczek &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190715/rss" title="www.commandprompt.com" style=" color: #0088bb; font-size: 1.05em;"&gt;pgColumnar 1.0 Alpha 4: A Columnar Table Access Method&lt;/a&gt;&lt;/span&gt; — A columnar storage option for Postgres tables. This alpha can lay tables out along a &lt;a href="https://postgresweekly.com/link/190716/rss" style=" color: #0088bb;"&gt;Hilbert curve&lt;/a&gt;, so range filters read up to 2x fewer row groups than with Z-order.&lt;/p&gt;
  &lt;p&gt;Joshua D. Drake (Command Prompt) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190717/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;TimescaleDB 2.30&lt;/a&gt; – Tiger Data's time-series extension makes &lt;code&gt;ORDER BY ... LIMIT&lt;/code&gt; queries fast even on hypertables with huge numbers of chunks.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190718/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;PostgreSQL Anonymizer 3.2&lt;/a&gt; – Dalibo's data masking extension adds faster pseudonymization functions and includes fixes for 3 critical vulnerabilities.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190719/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;pgAdmin 4 v9.18&lt;/a&gt; – The popular Postgres management tool.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
    &lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;🚀 Triple your Postgres productivity. &lt;a href="https://postgresweekly.com/link/190720/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;pgEdge AI DBA Workbench&lt;/a&gt;: AI monitoring &amp;amp; diagnostics for ANY Postgres v14+. &lt;a href="https://postgresweekly.com/link/190720/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Open source&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;🎟️ Join us at &lt;a href="https://postgresweekly.com/link/190721/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Supabase Select&lt;/a&gt; on October 2. Learn from the industry’s best builders and meet people building developer tools. &lt;a href="https://postgresweekly.com/link/190721/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Apply to attend with 25% off: SUPAWEEKLY&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;span style="text-transform: uppercase;    font-weight: 600; font-size: 1.3em;"&gt;And Finally…&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/190722/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/yp3rlgkd8o5yxbhj9l2b.jpg" width="640" style="    line-height: 1.0em;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;span&gt;🤖&lt;/span&gt; &lt;a href="https://postgresweekly.com/link/190722/rss" title="rohanbansal.com" style=" color: #0088bb; font-size: 1.05em;"&gt;Teaching a 4B Model to Write 81% Faster Query Plans&lt;/a&gt;&lt;/span&gt; — As a sabbatical project at the Recurse Center, a developer used reinforcement learning to train a small model to write &lt;code&gt;pg_hint_plan&lt;/code&gt; hints for join-heavy benchmark queries (and, on its best runs, it beat Postgres's own plans!). An intriguing read.&lt;/p&gt;
  &lt;p&gt;Rohan Bansal &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
     
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://postgresweekly.com/open/666/rss" width="1" height="1" /&gt;</description>
      <pubDate>Wed, 23 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://postgresweekly.com/issues/666</guid>
    </item>
    <item>
      <title>Tom Lane on threads, MVCC and 30 years of Postgres</title>
      <link>https://postgresweekly.com/issues/665</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​665 — September 16, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190403/rss" style=" color: #0088bb;"&gt;Web Version&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;Postgres Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/190374/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/fs6z3yph6p3jzdk4akbg.jpg" width="640" style="    line-height: 1.0em;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190374/rss" title="www.snowflake.com" style=" color: #0088bb; font-size: 1.1em; line-height: 1.4em;"&gt;Tom Lane on 30 Years of Postgres Architecture&lt;/a&gt;&lt;/span&gt; — The hugely prolific Postgres core team member (who also co-wrote the original PNG spec!) tackles a &lt;em&gt;lot&lt;/em&gt; here, including why Postgres uses processes rather than threads, reliability, MVCC, and how v13 was his least favorite version. There's also &lt;a href="https://postgresweekly.com/link/190375/rss" style=" color: #0088bb;"&gt;▶️ an hour-long video&lt;/a&gt; of the entire interview.&lt;/p&gt;
  &lt;p&gt;Elizabeth Garrett Christensen and Tom Lane &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://postgresweekly.com/link/190373/rss" style=" color: #0088bb;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/9c656ab3.jpg" width="189" height="130" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190373/rss" title="dashboard.render.com" style=" color: #0088bb; font-size: 1.05em;"&gt;Render Runs Postgres Alongside Your Apps&lt;/a&gt;&lt;/span&gt; — Spin up a production-ready Postgres database in seconds. Connect from web services, background workers, and agent workflows over a private network, all on one platform. Manage backups, scaling, and high availability without the operational overhead. &lt;a href="https://postgresweekly.com/link/190373/rss" style=" color: #0088bb;"&gt;Start free and scale from there&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Render &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #997 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190376/rss" title="planetscale.com" style=" color: #0088bb; font-size: 1.05em;"&gt;The Lifecycle of a Sharded Postgres Query&lt;/a&gt;&lt;/span&gt; — PlanetScale has &lt;a href="https://postgresweekly.com/link/190377/rss" style=" color: #0088bb;"&gt;launched Neki&lt;/a&gt;, a sharded Postgres system where a router speaks the wire protocol and plans queries across shards of standard Postgres servers. This illustrated walkthrough is the more interesting read, though.&lt;/p&gt;
  &lt;p&gt;PlanetScale Team &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 PlanetScale is &lt;a href="https://postgresweekly.com/link/190378/rss" style=" color: #0088bb; font-weight: 600;"&gt;'undecided'&lt;/a&gt; as to whether Neki will be open sourced. &lt;a href="https://postgresweekly.com/link/190379/rss" style=" color: #0088bb; font-weight: 600;"&gt;Citus&lt;/a&gt; is the established open-source distributed Postgres option, taking a more integrated extension-based approach instead.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190380/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;postgres-contrib.org now has a submissions form&lt;/a&gt; for telling them about non-code Postgres contributions (talks, meetups, translations, reviews, mentoring). No account or email is needed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🇨🇳 你会说中文吗？Ruohang Feng &lt;a href="https://postgresweekly.com/link/190381/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;has unveiled &lt;code&gt;pgsql.cc&lt;/code&gt;&lt;/a&gt;, a Chinese-language Postgres site with full Chinese documentation for 11 versions.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🇨🇭 &lt;a href="https://postgresweekly.com/link/190382/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;CERN PGDay 2027&lt;/a&gt; takes place on February 12, 2027 at CERN in Geneva. A &lt;a href="https://postgresweekly.com/link/190383/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;CFP is open&lt;/a&gt; until November 8.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🇪🇺 &lt;a href="https://postgresweekly.com/link/190384/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;PGConf.EU 2026&lt;/a&gt; is only a month away on October 20–22 in Valencia, Spain.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190385/rss" title="tapoueh.org" style=" color: #0088bb; font-size: 1.05em;"&gt;Plan Advice in Postgres 19&lt;/a&gt;&lt;/span&gt; — Two new modules, &lt;code&gt;pg_plan_advice&lt;/code&gt; and &lt;code&gt;pg_stash_advice&lt;/code&gt;, let you capture planner advice, selectively enforce it, and apply advice automatically by query ID. Dimitri shows off the workflow.&lt;/p&gt;
  &lt;p&gt;Dimitri Fontaine &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190386/rss" title="boringsql.com" style=" color: #0088bb; font-size: 1.05em;"&gt;The Unbearable Lightness of 'One More Index'&lt;/a&gt;&lt;/span&gt; — Adding an index to tackle a problem on a hot table can seem sensible, but the costs can quickly rack up as they accumulate. This post looks at the tradeoffs involved and how to assess them.&lt;/p&gt;
  &lt;p&gt;Radim Marek &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;span&gt;📊&lt;/span&gt; &lt;a href="https://postgresweekly.com/link/190387/rss" title="vondra.me" style=" color: #0088bb; font-size: 1.05em;"&gt;Postgres Development Activity Over 28 Years&lt;/a&gt;&lt;/span&gt; — Armed with charts, Tomas shows how the &lt;code&gt;pgsql-hackers&lt;/code&gt; list has got much busier over time, while commits and insertions/deletions have been slowly and steadily growing.&lt;/p&gt;
  &lt;p&gt;Tomas Vondra &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190388/rss" title="aws.amazon.com" style=" color: #0088bb; font-size: 1.05em;"&gt;Troubleshooting Row Lock Contention in Amazon Aurora PostgreSQL&lt;/a&gt;&lt;/span&gt; — How to trace row lock contention with built-in views, &lt;code&gt;pgrowlocks&lt;/code&gt;, and lock-wait logging. &lt;a href="https://postgresweekly.com/link/190389/rss" style=" color: #0088bb;"&gt;Part two&lt;/a&gt; covers using AWS's tooling to locate the contention, then explores ways to fix it.&lt;/p&gt;
  &lt;p&gt;Kumar and Manivasakan (Amazon) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/190390/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Optimizing Aggregates: What Can an Extension Do?&lt;/a&gt; – Using Postgres 19's new planner hook to prototype stripping a needless sort from &lt;code&gt;SUM(x ORDER BY x)&lt;/code&gt;. &lt;cite&gt;Andrei Lepikhov&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
    &lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;🎟️ Join us at &lt;a href="https://postgresweekly.com/link/190391/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Supabase Select&lt;/a&gt; and learn how we’re building the next generation operating system for Postgres with Multigres. &lt;a href="https://postgresweekly.com/link/190391/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Apply to attend with 25% off: SUPAWEEKLY&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;🧊 Paying SSD prices for data nobody reads? &lt;a href="https://postgresweekly.com/link/190392/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;ColdFront tiers old Postgres rows to S3 automatically&lt;/a&gt;, the open source way.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;RELEASES AND CODE:&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190393/rss" title="pgrust.com" style=" color: #0088bb; font-size: 1.05em;"&gt;pgrust 0.3: A Rust Rewrite of Postgres, Now Ready to Try&lt;/a&gt;&lt;/span&gt; — A noteworthy milestone for a Rust reimplementation of Postgres that you're invited to try on real world workloads (in a non-critical environment!). &lt;a href="https://postgresweekly.com/link/190394/rss" style=" color: #0088bb;"&gt;v0.3&lt;/a&gt; now tracks Postgres 18.6 and focuses on reliability. There's also &lt;a href="https://postgresweekly.com/link/190395/rss" style=" color: #0088bb;"&gt;a browser-based demo&lt;/a&gt; so you can kick the tires without installing it. &lt;a href="https://postgresweekly.com/link/190396/rss" style=" color: #0088bb;"&gt;GitHub repo&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Michael Malis &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190397/rss" title="clickhouse.com" style=" color: #0088bb; font-size: 1.05em;"&gt;WalShadow: Replicating Postgres to ClickHouse from Physical WAL&lt;/a&gt;&lt;/span&gt; — A new open-source engine to replicate Postgres data into ClickHouse without logical decoding. ClickHouse reports ~200ms commit-to-visible latency.&lt;/p&gt;
  &lt;p&gt;Sai Srirampur (ClickHouse) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190398/rss" title="blog.dalibo.com" style=" color: #0088bb; font-size: 1.05em;"&gt;PostgreSQL Migrator 1.0: Migrate Oracle and MySQL to Postgres&lt;/a&gt;&lt;/span&gt; — A single-binary tool for migrating Oracle and MySQL/MariaDB databases, with a web UI for spotting problems and fast &lt;code&gt;COPY&lt;/code&gt;-based data transfers.&lt;/p&gt;
  &lt;p&gt;Étienne Bersac (Dalibo) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190399/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;OrioleDB beta17&lt;/a&gt; – Supabase's alternative storage engine for Postgres adds &lt;code&gt;CREATE INDEX CONCURRENTLY&lt;/code&gt; and &lt;code&gt;REINDEX CONCURRENTLY&lt;/code&gt; for btree indexes, page checksums, and cross-major &lt;code&gt;pg_upgrade&lt;/code&gt; support.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190400/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;pgstream 1.5&lt;/a&gt; – CDC for Postgres that replicates DDL and schema changes too.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190401/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;PostgREST 16.3&lt;/a&gt; – Serve a fully RESTful API from any existing database.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190402/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;pgmq 1.13.0&lt;/a&gt; – The lightweight message queue extension.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
     
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://postgresweekly.com/open/665/rss" width="1" height="1" /&gt;</description>
      <pubDate>Wed, 16 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://postgresweekly.com/issues/665</guid>
    </item>
    <item>
      <title>Postgres 19 loses SQL/PGQ (and its release date)</title>
      <link>https://postgresweekly.com/issues/664</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​664 — September 9, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190110/rss" style=" color: #0088bb;"&gt;Web Version&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;Postgres Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/190039/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/eqdy9a7btdaispdwx0yl.jpg" width="640" style="    line-height: 1.0em;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190039/rss" title="www.postgresql.org" style=" color: #0088bb; font-size: 1.1em; line-height: 1.4em;"&gt;The &lt;em&gt;Scary&lt;/em&gt; Postgres 19 Patch Contest&lt;/a&gt;&lt;/span&gt; — It’s not even Halloween yet, but in this fascinating thread on the &lt;code&gt;pgsql-hackers&lt;/code&gt; list Robert Haas set out with Claude to &lt;em&gt;“evaluate which v19 patches were the scariest”&lt;/em&gt;. One of them, &lt;a href="https://postgresweekly.com/link/190040/rss" style=" color: #0088bb;"&gt;SQL/PGQ property graphs&lt;/a&gt;, has since &lt;a href="https://postgresweekly.com/link/190041/rss" style=" color: #0088bb;"&gt;been dropped&lt;/a&gt; from v19, but five remain…&lt;/p&gt;
  &lt;p&gt;Robert Haas et al. &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 There's some &lt;a href="https://postgresweekly.com/link/190042/rss" style=" color: #0088bb; font-weight: 600;"&gt;more background to SQL/PGQ's removal&lt;/a&gt; in a separate thread on &lt;code&gt;pgsql-hackers&lt;/code&gt; too.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://postgresweekly.com/link/190109/rss" style=" color: #0088bb;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/8a4895a1.png" width="153" height="110" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190109/rss" title="paradedb.com" style=" color: #0088bb; font-size: 1.05em;"&gt;Coming Soon: ParadeDB Cloud&lt;/a&gt;&lt;/span&gt; — We're building a fully managed ParadeDB: one Postgres for your application data, full-text search, vector retrieval, and aggregations. &lt;a href="https://postgresweekly.com/link/190109/rss" style=" color: #0088bb;"&gt;Our early access waitlist is open now&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;ParadeDB &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #997 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;POSTGRES 19: A FOURTH BETA AND SOME HARD CHOICES:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Originally expected later this month, Postgres 19's release date is now &lt;a href="https://postgresweekly.com/link/190043/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;officially TBD&lt;/a&gt;, with a fourth beta expected on September 24. But &lt;a href="https://postgresweekly.com/link/190039/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;the 'scary patch' thread&lt;/a&gt; &lt;em&gt;(above)&lt;/em&gt; shows that what's going to be in it remains an open question:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190044/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Tom Lane was &lt;em&gt;"quite afraid"&lt;/em&gt; of SQL/PGQ&lt;/a&gt; two weeks before it was pulled, with fixes still under discussion that needed catalog changes: &lt;em&gt;"I'd be willing to bet dinner that if we ship it in v19 there will be post-release bug discoveries that are unfixable until v20."&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190045/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;David Rowley argued&lt;/a&gt; for setting &lt;em&gt;"the revert bar a bit lower this year"&lt;/em&gt;, given a perceived reduction in developer time available. &lt;a href="https://postgresweekly.com/link/190046/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Bruce Momjian noted&lt;/a&gt; the volume of security/CVE fixes is having an impact here.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;And &lt;a href="https://postgresweekly.com/link/190047/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Joshua Drake suggested moving the release to spring 2027&lt;/a&gt;, rather than removing features: &lt;em&gt;"I would rather have a late 19 than all these great features and hard work gutted."&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190048/rss" title="hdombrovskaya.wordpress.com" style=" color: #0088bb; font-size: 1.05em;"&gt;How to Optimize When You Can’t Do Anything&lt;/a&gt;&lt;/span&gt; — Hettie had a production query on a 750GB, 16 billion row table that suddenly ran slow. Creating the right index wasn’t an option (it’d take over a day) but a close look at the underlying data led to an ingenious fix.&lt;/p&gt;
  &lt;p&gt;Henrietta Dombrovskaya &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;🇺🇸 &lt;a href="https://postgresweekly.com/link/190049/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;The PostgreSQL@SCaLE CFP is open&lt;/a&gt; till November 1. The Postgres track runs April 1-2 at &lt;a href="https://postgresweekly.com/link/190050/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;SCaLE 24x&lt;/a&gt; in Pasadena.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🇮🇳 &lt;a href="https://postgresweekly.com/link/190051/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;PGConf India 2027&lt;/a&gt; is back next March 2-5 in Bengaluru. &lt;a href="https://postgresweekly.com/link/190052/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;The CFP&lt;/a&gt; is open till October 15.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190053/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Postgres's RPM repo now covers Amazon Linux 2023&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190054/rss" title="thebuild.com" style=" color: #0088bb; font-size: 1.05em;"&gt;Sixteen Locks Ought to Be Enough for Anybody&lt;/a&gt;&lt;/span&gt; — Did you know that, when planning a query, Postgres takes a (weak) lock on every index on the table whether it uses them or not? This is usually fine, but &lt;em&gt;until Postgres 18&lt;/em&gt; this could sting once a query touched more than 16 tables and indexes combined.&lt;/p&gt;
  &lt;p&gt;Christophe Pettus &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/190055/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Inserting State Transitions in Postgres&lt;/a&gt; – An append-only status table gives you full history, but two concurrent transitions can both insert. Here's how to prevent the conflicts. &lt;cite&gt;Thiago Araújo Silva (thoughtbot)&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/190056/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;From the Trenches: My Path Through Postgres&lt;/a&gt; – Twenty years of Postgres war stories, from a one-time MySQL advocate. &lt;cite&gt;Shaun Thomas&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/190057/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Fix Circular Role Dependencies Before Upgrading RDS and Aurora Postgres&lt;/a&gt;  &lt;cite&gt;Ravi Teja Adabala (Amazon)&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://postgresweekly.com/link/190058/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Postgres Calculations and the Ambiguity of &lt;code&gt;NULL&lt;/code&gt;&lt;/a&gt;  &lt;cite&gt;Christopher Winslett (Crunchy Data)&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
    &lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;🧊 Paying SSD prices for data nobody reads? &lt;a href="https://postgresweekly.com/link/190059/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;ColdFront tiers old Postgres rows to S3 automatically&lt;/a&gt;, the open source way.&lt;/p&gt;
 
&lt;p&gt;🎟️ Join us at &lt;a href="https://postgresweekly.com/link/190060/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Supabase Select&lt;/a&gt; on October 2. Get first-hand information about what's coming soon in Supabase. &lt;a href="https://postgresweekly.com/link/190060/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;Apply to attend with 25% off: SUPAWEEKLY&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;RELEASES AND CODE:&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr style="line-height: 1.0em;"&gt;&lt;td style="font-size: 15px; line-height: 1.0em;"&gt;
  &lt;a href="https://postgresweekly.com/link/190061/rss" style=" color: #0088bb; line-height: 1.0em;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/varezths9zhsyun4zhhh.jpg" width="640" style="    line-height: 1.0em;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190061/rss" title="rynr.dev" style=" color: #0088bb; font-size: 1.05em;"&gt;Kafgres: A Kafka-Compatible Broker Embedded Inside Postgres&lt;/a&gt;&lt;/span&gt; — A &lt;a href="https://postgresweekly.com/link/190062/rss" style=" color: #0088bb;"&gt;pgrx&lt;/a&gt;-powered extension that serves the Kafka wire protocol from a Postgres background worker, so standard Kafka clients can produce, consume, and rebalance consumer groups against topics stored in your database.&lt;/p&gt;
  &lt;p&gt;Raynor Elgie &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.1em; color: #000;"&gt;&lt;a href="https://postgresweekly.com/link/190063/rss" title="clickhouse.com" style=" color: #0088bb; font-size: 1.05em;"&gt;chdb: An Extension for Fast Imports from S3, GCS and Azure&lt;/a&gt;&lt;/span&gt; — ClickHouse’s chDB engine, wrapped as an extension for bulk imports and exports. &lt;code&gt;COPY&lt;/code&gt; (or &lt;code&gt;CREATE TABLE&lt;/code&gt;) can pull Parquet, Avro, ORC, Arrow and more from S3, GCS, Azure or over HTTP. Early days, but promising.&lt;/p&gt;
  &lt;p&gt;David Wheeler (ClickHouse) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190064/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;pg_hardstorage 1.4&lt;/a&gt; – Featured in &lt;a href="https://postgresweekly.com/link/190111/rss" style=" color: #0088bb; font-weight: 500 !important;"&gt;issue 654&lt;/a&gt;, Cybertec's streaming-first single Go binary backup/recovery tool has continued to mature, and 1.4 is a fix-heavy release, notably for its pgBackRest, Barman and WAL-G compatibility shims.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190065/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;Ivory 2.0&lt;/a&gt; – A web UI originally for operating HA Postgres clusters running under Patroni, but now with a plugin architecture for supporting systems like MongoDB and Redis too.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190066/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;Barman 3.20&lt;/a&gt; – EDB's backup/recovery manager adds streaming multipart uploads to Google Cloud Storage, Zstd cloud backups, and faster compressed restores.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://postgresweekly.com/link/190067/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;pg_cron 1.6.8&lt;/a&gt; – Adding Postgres 19 and native Windows build support.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🌐 &lt;a href="https://postgresweekly.com/link/190068/rss" style=" color: #0088bb; font-weight: 500 !important; font-size: 1.08em; line-height: 1.5em;"&gt;PostGIS 3.7.0 RC2&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
     
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://postgresweekly.com/open/664/rss" width="1" height="1" /&gt;</description>
      <pubDate>Wed, 9 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://postgresweekly.com/issues/664</guid>
    </item>
  </channel>
</rss>
