EDB Postgres Distributed 6.0.0 release notes v6.0.0
Released: 22 May 2025
EDB Postgres Distributed 6.0.0 is a major update to PGD and sees the introduction on Essential and Extended editions.
Highlights
- New built-in Connection Manager.
- New CLI command for cluster setup.
Features
Description | Addresses |
---|---|
Built-in connection managerNew built-in connection manager which handles routing of connections automatically and allows enforcing of read-only connections to non-leader. | |
CLI cluster setupThe PGD CLI now allows initial cluster setup as well as adding nodes from command-line using | |
Set sequence kind on group create/joinTransform the sequences in distributed based on the | |
Set startvalue for distributed sequences automaticallySet the startvalue for galloc sequences to the following valid number after the last used by the local sequence. With this change, when creating distributed sequences and specifically galloc, there is no need to adjust the startvalue based on what might be already used. | |
Enabling of automatic sync and reconciliationLink to a detailed google doc is provided below | |
Add node_uuid column to bdr.node and bdr.local_nodeThe node_uuid uniquely identifies instance of a node of a given name. Random node_uuid is generated when node is created and remains constant for the lifetime of the node. The node_id column is now derived from node_uuid instead of node name. For the time being a node needs to be fully parted before before node of the same name can be rejoined, this may be relaxed in future releases to permit rejoin as soon as part_node process for the old instance has commenced and before it completed. For the time being upgrades from older PGD versions and mixed-version operation in clusters with older PGD nodes are not supported. This limitation will be addressed in future releases. | |
Change replication origin and slot naming schemeReplication origin and slot names now use node uuid and thus correspond to particular incarnation of a node of a given name. Similarly node group uuid is used instead of group name. Hash of database name is used in lieu of database name. Please note that origin and node names should be treated as opaque identifiers from user's perspective, one shouldn't rely on the structure of these names nor expect these to be particularly meaningful to a human operator. The new naming scheme is as follows: Slots Naming Convention
Origins Naming Convention:
| |
Limit on the number of node groups allowed in the system for PGD Essential.Ensure that no more than three node groups (one top group and two subgroups) can exist at any given time. If the limit is exceeded, an error is raised. | |
Enforced PGD Essential limits - data node countDon't allow PGD Essential clusters to join more than 4 data nodes. | |
Added | |
Subscriber-only nodes can now be added to data node groupsSo far subscriber-only nodes could only be added to node groups of type "subscriber-only". But now a subscriber-only node can be added to a data node group too. Only node_kind='subscriber_only' needs to be specified while doing a create_node as before. the join_node_group can be done on a data node group. | |
Add | |
Add node_uuid column to |
Enhancements
Description | Addresses |
---|---|
Multiple conflicting rows resolutionBoth | |
Improved | |
The PARTED node is removed automatically from all nodes in the cluster.From PGD 6.0.0, bdr.part_node functionality is enhanced to remove the parted node’s metadata automatically from all nodes in the cluster.
| |
The | |
More GUCs verfied in | |
Table rewriting | |
Restrictions on non-immutable | |
Introduce | |
Leader DML lockNew lock type leader DML lock is used by default for locking DDL statements that need to block DML. This lock locks on write-leaders only, no requiring all nodes to participate in the locking operation. Old behavior can be restored by adjusting | |
Disabling bdr.xact_replication in run_on_* functionsFunctions | |
Replica Identity full by defaultThe When the PGD group is created and the database of the initial PGD node is not empty (i.e. has some tables with data) the REPLICA IDENTITY of all tables will be set according to | |
Tablespace replication as a DDL operation is supported.Tablespace operations | |
Improve the CLI debug messages.Improve the formating of the log messages to be more readable and symmetrical with Postgres log messages. | |
New column for | |
Display sorted output for CLI.The output for the commands with tabular output will be sorted by the resource name. The commands that display more than one resource, the output will be sorted by each resource column in order. | |
Remove the deprecated legacy CLI commands.Remove the old (PGD 5 and below) CLI commands, which were deprecated but supported for backward compatibility. | |
Commit scope logic is now only run on data nodes.Previously, non-data nodes would attempt to handle, but not process commit scope logic, which could lead to confusing, albeit harmless log messages. | |
Explicitly log the start and stop of dump and restore operations.This provides greater visibility into the node cloning process and assists with debugging possible issues. |
Changes
Description | Addresses |
---|---|
Routing is now enabled by default on subgroupsRouting (and by extension raft) is now enabled by default on data-groups (subgroups with data nodes). | |
Function | |
Deprecated | |
BDR global sequences can no longer created as or set to |
Bug Fixes
Description | Addresses |
---|---|
Fix the CLI | |
Fix the CLI | |
Fixed issue where parting node may belong to a non-existing groupWhen parting a given node, that same node may have subscriptions whose origin was already parted and the group dropped. Previously this would break PGD, and has since been fixed. | |
num_writers should be positive or -1The num_writers option, used in bdr.alter_node_group_option() and bdr.alter_node_group_config() should be positive or -1. |
- On this page
- Highlights
- Features
- Enhancements
- Changes
- Bug Fixes