From 90b584f707f2fb6670add6ab7a3bb0c16c9d8e43 Mon Sep 17 00:00:00 2001 From: Douglas J Hunley Date: Fri, 21 Aug 2026 12:52:55 -0400 Subject: [PATCH 1/2] fix: raise default max_replication_slots from 5 to 10 max_replication_slots is a single shared pool covering both logical and physical slots (confirmed against PostgreSQL's own docs). At 5, a project running Realtime plus a couple of read replicas plus any customer logical replication is already at or near the ceiling, with only 31 projects fleet-wide currently overriding this key. Matches PostgreSQL's own upstream default (10) and max_wal_senders, already 10 in this same file. Resolves INDATA-1301 --- ansible/files/postgresql_config/postgresql.conf.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/files/postgresql_config/postgresql.conf.j2 b/ansible/files/postgresql_config/postgresql.conf.j2 index 154ec13416..bab1eaeb10 100644 --- a/ansible/files/postgresql_config/postgresql.conf.j2 +++ b/ansible/files/postgresql_config/postgresql.conf.j2 @@ -296,7 +296,7 @@ checkpoint_flush_after = 256kB # measured in pages, 0 disables max_wal_senders = 10 # max number of walsender processes # (change requires restart) -max_replication_slots = 5 # max number of replication slots +max_replication_slots = 10 # max number of replication slots # (change requires restart) #wal_keep_size = 0 # in megabytes; 0 disables max_slot_wal_keep_size = 512 # in megabytes; -1 disables From 14533cead43a8009e16ba379ebb74d8bc9764db9 Mon Sep 17 00:00:00 2001 From: Douglas J Hunley Date: Fri, 21 Aug 2026 14:21:24 -0400 Subject: [PATCH 2/2] fix: update README's advertised max_replication_slots value to 10 The generated README feature bullet and its generator both hardcoded = 5, which the prior commit's default bump missed. Fixing README.md alone would revert on the next update_readme run, so both need the same edit. --- README.md | 2 +- nix/tools/update_readme.nu | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6add67a24e..f90b3028b3 100644 --- a/README.md +++ b/README.md @@ -215,7 +215,7 @@ This is the same PostgreSQL build that powers [Supabase](https://supabase.io), b - ✅ Postgres [postgresql-17.6](https://www.postgresql.org/docs/17/index.html) - ✅ Postgres [orioledb-postgresql-17_11](https://github.com/orioledb/orioledb) - ✅ Ubuntu 24.04 (Noble Numbat). -- ✅ [wal_level](https://www.postgresql.org/docs/current/runtime-config-wal.html) = logical and [max_replication_slots](https://www.postgresql.org/docs/current/runtime-config-replication.html) = 5. Ready for replication. +- ✅ [wal_level](https://www.postgresql.org/docs/current/runtime-config-wal.html) = logical and [max_replication_slots](https://www.postgresql.org/docs/current/runtime-config-replication.html) = 10. Ready for replication. - ✅ [Large Systems Extensions](https://github.com/aws/aws-graviton-getting-started#building-for-graviton-and-graviton2). Enabled for ARM images. ## Extensions diff --git a/nix/tools/update_readme.nu b/nix/tools/update_readme.nu index 0b233ebcec..c36c84c4bd 100755 --- a/nix/tools/update_readme.nu +++ b/nix/tools/update_readme.nu @@ -229,7 +229,7 @@ def update_readme [] { let features_content = [ ($pg_versions | each {|version| create_version_link $version} | str join "\n") "- ✅ Ubuntu 24.04 (Noble Numbat)." - "- ✅ [wal_level](https://www.postgresql.org/docs/current/runtime-config-wal.html) = logical and [max_replication_slots](https://www.postgresql.org/docs/current/runtime-config-replication.html) = 5. Ready for replication." + "- ✅ [wal_level](https://www.postgresql.org/docs/current/runtime-config-wal.html) = logical and [max_replication_slots](https://www.postgresql.org/docs/current/runtime-config-replication.html) = 10. Ready for replication." "- ✅ [Large Systems Extensions](https://github.com/aws/aws-graviton-getting-started#building-for-graviton-and-graviton2). Enabled for ARM images." ]