Skip to content

DOCS-1532-pgd-6-0-release-notes #6766

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 15 commits into from
May 14, 2025
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 69 additions & 15 deletions product_docs/docs/pgd/6/rel_notes/src/relnote_6.0.0.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ intro: |
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.
relnotes:
- relnote: Table rewriting `ALTER TABLE... ALTER COLUMN` calls are now supported.
- relnote: Table rewriting `ALTER TABLE... ALTER COLUMN` calls are now supported.
details: |
Changing a column's type command which causes the whole table to be rewritten and the change isn't binary coercible is now supported:
```sql
Expand All @@ -19,7 +20,7 @@ relnotes:
CREATE TABLE foo (id serial primary key,data text);
ALTER TABLE foo ALTER data TYPE BYTEA USING data::bytea;
```
Table rewrites can hold an AccessExclusiveLock for extended periods on larger tables.
Table rewrites can hold an AccessExclusiveLock for extended periods on larger tables.
jira: BDR-5724
addresses: ""
type: Enhancement
Expand All @@ -32,7 +33,7 @@ relnotes:
addresses: ""
type: Enhancement
impact: Medium

- relnote: Set sequence kind on group create/join
details: |
Transform the sequences in distributed based on the `bdr.default_sequence_kind` GUC when creating/joining a bdr group instead of when creating the node as done in older versions.
Expand Down Expand Up @@ -91,7 +92,7 @@ relnotes:

- relnote: Introduce `bdr.node_group_config_summary` view
details: |
The new `bdr.node_group_config_summary` view contains detailed information about group options, including effective value, source of the effective value, default value, whether the value can be inherited, etc. This is in similar spirit to `pg_settings`
The new `bdr.node_group_config_summary` view contains detailed information about group options, including effective value, source of the effective value, default value, whether the value can be inherited, etc. This is in similar spirit to `pg_settings`
jira: BDR-4696
type: Enhancement
impact: Medium
Expand Down Expand Up @@ -144,7 +145,7 @@ relnotes:
REPLICA IDENTITY FULL. This setting prevents some edge cases in
conflict detection between inserts, updates and deletes across node
crashes and recovery.

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 `bdr.default_replica_identity`.
jira: BDR-5977
type: Enhancement
Expand All @@ -155,10 +156,10 @@ relnotes:
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.
- For local node, it will remove all the node metadata, including information about remote nodes.
- For remote node, it removes only metadata for that specific node.
Hence with this release
Hence with this release
- A node will remain in PART_CLEANUP state till group slots of all nodes are caught up to all the transactions originating from the PARTED node
- A node will not remain in PARTED state as the node is removed as soon as it moves to PARTED state.
- A node will not remain in PARTED state as the node is removed as soon as it moves to PARTED state.

jira: BDR-5975
type: Enhancement
impact: High
Expand All @@ -180,9 +181,9 @@ relnotes:
- relnote: Add node_uuid column to bdr.node and bdr.local_node
details: |
The 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.
jira: BDR-6222
type: Feature
Expand All @@ -191,22 +192,22 @@ relnotes:
- relnote: Change replication origin and slot naming scheme
details: |
Replication 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

* normal slot to a node => `bdr_node_<targetuuid>_<dbhash>`
* join slot for node => `bdr_node_<targetuuid>_<dbhash>_tmp`
* group slot for a topgroup => `bdr_group_<topgroupuuid>_<dbhash>`
* slot for any forwarding + lead to lead => `bdr_node_<targetuuid>_<originidhex>_<dbhash>`
* analytics slot => `bdr_analytics_<groupuuid>_<dbhash>`
* decoding slot => `bdr_decoder_<topgroupuuid>_<dbhash>`

#### Origins Naming Convention:

* normal origin to a node => `bdr_<originuuid>_<dbhash>`
* fwd origin to a source node => `bdr_<originuuid>_<sourceoidhex>_<dbhash>`
jira: BDR-6157
Expand All @@ -226,3 +227,56 @@ relnotes:
jira: BDR-6478
type: Feature
impact: Low

- relnote: Remove the deprecated legacy CLI commands.
details: |
Remove the old (PGD 5 and below) CLI commands which were deprecated however supported for backward compatibility.
jira: BDR-6333
type: Enhancement
impact: Low

- relnote: Improve the CLI debug messages.
details: |
Improve the formating of the log messages to be more readable and symmetrical with Postgres log messages.
jira: BDR-6101
type: Enhancement
impact: Medium

- relnote: The `--summary` and `--options` flags for `pgd node show` CLI command.
details: |
Add the `--summary` and `--options` flags to `pgd node show` command to filter the output of the `pgd node show` command.
This also maintains symmetry with other `show` commands.
jira: BDR-6145
type: Enhancement
impact: High

- relnote: More GUCs verfied in `pgd cluster verify` CLI command.
details: |
Add the `bdr.lock_table_locking` and `bdr.truncate_locking` GUCs to list of GUCs verfied in `pgd cluster verify` command.
jira: BDR-5308
type: Enhancement
impact: High

- relnote: New column for `pgd cluster verify --settings` CLI command output.
details: |
Add the `recommended_value` column to the result of the `pgd cluster verify --settings` command.
The column will not be displayed in tabular output but will be displayed in JSON output.
jira: BDR-5308
type: Enhancement
impact: Medium

- relnote: Fix the CLI `pgd cluster show` command issues on a degraded cluster.
details: |
The `pgd cluster show` command failed with error for clock drift if only one node is up and running in a N node cluster.
The command is fixed to return valid output for other components viz., `health` and `summary` while reporting a valid error for `clock-drift`.
jira: BDR-6135
type: Bug Fix
impact: High

- relnote: Fix the CLI `pgd node show` command issue if a non-existent node is specified.
details: |
The `pgd node show` command crashed if a non-existent node is specified to the command.
The command is fixed to fail gracefully with appropriate error message.
jira: BDR-6292
type: Bug Fix
impact: High
Loading