EDB Postgres Distributed 5.9.2 release notes v5.9.2

Released: 26 March 2026

This is a patch release of PGD 5, which includes several enhancements and bug fixes.

Enhancements

ComponentVersionDescriptionAddresses
BDR5.9.2
Improved the group deletion process to automatically drop associated replication sets.

Enhanced the node group removal logic to automatically drop replication sets of the same name.

57531
BDR5.9.2
Improved the consistency of Connection Manager against pg_hba.conf.

Enhanced how the Connection Manager matches database names and usernames against pg_hba.conf fields. Key improvements include support for sameuser matching, refined samerole logic, and expanded +rolename matching to include the role itself and indirect members. Additionally, quotes are now stripped from usernames before matching to ensure consistent authentication behavior.

BDR5.9.2
Added support for user name mapping (pg_ident.conf) to the Connection Manager.

This enhancement allows the Connection Manager to use pg_ident.conf for user name mapping. Currently, this functionality applies to the cert authentication method, aligning Connection Manager behavior with PostgreSQL’s native authentication identity mapping.

Changes

ComponentVersionDescriptionAddresses
PGD Proxy5.9.2
Updated third-party dependencies to resolve CVE-2026-4427 and address GitHub Dependabot alerts.

Patched internal libraries to address a security vulnerability (CVE-2026-4427). Although the vulnerability does not directly expose the PGD Proxy, a malicious or compromised PostgreSQL server could send a crafted DataRow message to crash the PGD Proxy, resulting in a denial-of-service (DoS) attack.

Bug Fixes

ComponentVersionDescriptionAddresses
BDR5.9.2
Fixed a replication crash loop caused by interrupted partition detaching.

Resolved an issue where logical replication would enter an infinite crash loop if a DETACH PARTITION CONCURRENTLY command was interrupted. Previously, the walsender would fail with the error relation has no parent because it's being detached when decoding WAL for a partition in a detach-pending state.

53628, 59291
BDR5.9.2
Fixed a walsender crash loop during partition detachment.

Fixed an issue where the walsender process could enter a crash loop when encountering partitions with inhdetachpending = true, which reported ERROR: relation %u has no parent failures.

53628, 59291
BDR5.9.2
Fixed ALTER ROLE replication failures.

Fixed an issue where replication would break because attributes like NOSUPERUSER or NOREPLICATION were automatically added to the replicated command. Since these options can only be altered by a superuser, the apply process failed on downstream nodes. This change ensures the replicated command only includes options that were explicitly specified and for which the user has sufficient privileges.

54906
BDR5.9.2
Improved lock handling during change application to prevent data corruption from concurrent backends.

Table and index locks are now held until transaction commit when applying changes. This ensures correct serialization and prevents data consistency issues during concurrent operations, specifically addressing risks introduced by parallel apply.

BDR5.9.2
Parallel Apply can now be enabled when PGD is deployed with community Postgres.

Resolved an issue where enabling Parallel Apply on community PostgreSQL caused writer hangs and stuck subscriptions due to frequent lock timeouts. This fix allows Parallel Apply to be used reliably without requiring it to be disabled as a workaround.

54565, 57005, 57327
PGD CLI5.9.2
Fixed the in-line help for pgd group set-option command.

Corrected the help text for pgd group set-option to accurately reflect group-level options.

PGD CLI5.9.2
Fixed the matrix view output for the pgd replication show command.

Inactive/disconnected slots now display ! instead of * when lag is below 10 MB, restoring consistency.

56295
PGD CLI5.9.2
Backported TDE options for the pgd node upgrade command to PGD 5.

The pgd node upgrade command now supports the in-place conversion of a non-TDE PGD node to a TDE-enabled node via the --key-unwrap-command and --copy-by-block options.

BDR5.9.2
Fixed a memory leak in the consensus process when subscriber-only nodes are down.

Resolved a malloc-based memory leak related to the improper freeing of connection strings.

57094
BDR5.9.2
Fixed a segmentation fault occurring during COPY commands when pgaudit.role is set to a non-default value.

Resolved an issue where Postgres would crash with a segmentation fault when executing a COPY command if the pgaudit.role configuration was set to a non-default value.

58060
BDR5.9.2
Fixed an issue where the use_https node group configuration option was ignored.

Resolved a bug where Connection Manager incorrectly ignored the use_https setting. When upgrading to PGD 6.3.0 or 5.9.2, you must explicitly enable HTTPS by setting the use_https group option to true (in addition to having ssl_cert_file and ssl_key_file configured in postgresql.conf or via the command line) before the upgrade to maintain previous behavior.

BDR5.9.2
Fixed a Connection Manager memory leak occurring during configuration reloads.

Resolved a memory leak in the Connection Manager caused by incorrect handling of Postgres memory contexts during configuration reloads.

BDR5.9.2
Fixed proxy configuration loss after bdr_init_physical.

Fixed an issue where proxy configurations were not preserved after running bdr_init_physical due to Raft snapshot restores failing to persist proxy settings.

58319
BDR5.9.2
Fixed stale galloc sequence allocation entries after DROP and CREATE.

Fixed a bug where sequence_alloc entries persisted after a galloc sequence was dropped and recreated. The fix ensures proper cleanup propagation across the cluster, including witness nodes.

BDR5.9.2
Fixed bdr.alter_sequence_set_kind ignoring start values for galloc sequences.

Fixed an issue where changing a sequence kind to galloc would silently discard the provided start_value. Additionally, resolved a bug where a startval of 0 was lost during WAL replication.