EDB Postgres Distributed 5.3.0 release notes v5

Released: 14 Nov 2023

EDB Postgres Distributed version 5.3.0 is a minor version of EDB Postgres Distributed.

Recommended upgrade

We recommend that all users of PGD 5 upgrade to PGD 5.3. See PGD/TPA upgrades for details.

Highlights of EDB Postgres Distributed 5.3.0

  • Support for PostgreSQL 16 server, EDB Postgres Extended Server 16, and EDB Postgres Advanced Server 16

Compatibility

EDB Server version compatibility

This version requires the recently released Postgres versions 14.10, 15.4, or 16.1 (or later) of EDB Postgres Advanced Server or EDB Postgres Extended Server. No such restrictions exist for PostgreSQL Server.

Package managers on Debian, RHEL, and SLES pull in the required EDB Postgres Advanced Server or EDB Postgres Extended upgrades with an upgrade of EDB Postgres Distributed.

Features

ComponentVersionDescriptionAddresses
PGD5.3.0Added support for PostgreSQL 16 server, EDB Postgres Extended Server 16, and EDB Postgres Advanced Server 16.

Enhancements

ComponentVersionDescriptionAddresses
Proxy5.3.0Added the default service unit file to package
BDR5.3.0Dependencies on EDB Postgres Advanced Server or EDB Postgres Extended are now reflected in packages.

Bug fixes

ComponentVersionDescriptionAddresses
BDR5.3.0Ensure that the WalSender process doesn't request locks on the partitions, thus avoiding a deadlock with user process waiting on sync commit.RT97952
BDR5.3.0Consider only CAMO transactions to be asynchronous when the CAMO setup was degraded to local mode. This solves the split-brain problem when deciding fate of transactions that happened during failover.RT78928
BDR5.3.0Handle partitions with different attribute numbers when batch inserting.RT99115
BDR5.3.0Fixed unsafe CAMO decisions in remote_write mode.
BDR5.3.0Taskmgr process now respects SIGINT.
BDR5.3.0Speeded up manager process startup by limiting the amount of WAL read for loading commit decisions.
BDR5.3.0Physical joins now clean up stale records in bdr.taskmgr_local_work_queue.
BDR5.3.0Fixed a bug in copying bdr.autopartition_rules during logical join.
BDR5.3.0Override bdr.ddl_replication=off in taskmgr worker.
BDR5.3.0Avoid a potential deadlock between bdr.autopartition_wait_for_partitions() and taskmgr.
BDR5.3.0Fixed writer missing updates in streaming mode with TDE enabled.
BDR5.3.0Block new EDB Postgres Advanced Server automatic partitioning on PGD cluster.
BDR5.3.0Allow existing automatically partitioned tables when cluster is created or upgraded.
BDR5.3.0Block PGD autopartition on EDB Postgras Advanced Server INTERVAL partitioned table.
BDR5.3.0Ensure that replication doesn't break when bdr.autopartition() is invoked on a mixed version cluster running with 3.7.23 and 4.3.3/5.3
BDR5.3.0Fixed default selective replication behavior for data groups. The data groups are supposed to publish only replication sets of the group or any parent groups by default, which mirrors what they subscribe to.
BDR5.3.0Fixed memory leak in LCR file TDE encryption.
BDR5.3.0Fixed memory leak in streaming transaction processing.
BDR5.3.0Allow force parting of nodes that are already being parted normally.
BDR5.3.0PART_CATCHUP is now more resilient to replication slot and node_catchup_info conflict.
BDR5.3.0Fixed row filter failure for partitions created after a table column was dropped.RT95149
BDR5.3.0Avoid aborting a group commit transaction on receiving the first abort response. The other nodes are given a chance to respond, and transaction can succeed if the required responses are received.
BDR5.3.0Ensure that replication receiver worker reloads configuration correctly when pg_reload_conf() is called.
BDR5.3.0Prevent duplicate Raft request ID generation which could break replication.
BDR5.3.0Fixed several rare memory access issues that could potentially cause crashes of workers.
BDR5.3.0Fixed issue where explicit 2PC transactions aborted earlier when encountering conflicts.RT92897
CLI5.3.0Fixed verify-settings command if the shared_preload_libraries GUC contains file path.
CLI5.3.0Show replslots status as Critical in check-health command when PGD cluster is reduced to just a witness node.
Proxy5.3.0Always set the server connection close behavior (setLinger(0)). Earlier it was set only on client error.
Proxy5.3.0Fixed the logs fill up issue when all nodes are down in a PGD cluster
Utilities1.2.0Removed the preupgrade step in bdr_pg_upgrade that sets the CONNECTION LIMIT to 0 at database level