Release notes for EDB Postgres Distributed version 5.0.0

EDB Postgres Distributed version 5.0.0 is a is a new major version of EDB Postgres Distributed. This version brings major new features and compatibility changes.

The highlights of this release include:

Flexibledeploymentarchitectures Enhanced routing capabilities Unifiedreplicationdurabilityconfiguration Support for EDB Advanced Storage Pack SupportforTDEwithEDBPostgresAdvanced15andEDBPostgresExtended15 Integration with OpenTelemetry Improvedtransactiontrackingperformance(GroupCommit,CAMO) Postgres 12 to 15 compatiblity

Component

Version

Type

Description

PGD

5.0.0

Feature

Flexible Deployment ArchitecturesRedefined Always-ON to support wider variety of deployments.

BDR

5.0.0

Feature

Enhanced routing capabilitiesBDR cluster elects a write leader for every group (and associated location) using per group Raft when routing is enabled for the group. It takes care of write leader failover and provides SQL commands to change a write leader.

BDR

5.0.0

Feature

Support for EDB Advanced Storage Pack EDB Advanced Storage Pack provides advanced storage options for PostgreSQL databases in the form of table access method (TAM) extensions. These storage options can enhance the performance and reliability of databases without requiring application changes.

BDR

5.0.0

Feature

Unified replication durability configurationThe durability options such as Group Commit, CAMO, Eager Replication or Lag Control are now all configured through commit scope configuration.

BDR

5.0.0

Feature

EDB Postgres Advanced and EDB Postgres Extended TDE supportEDB Postgres Distributed 5 fully supports the Transparent Data Encryption feature in EDB Postgres Advanced and EDB Postgres Extended.

BDR

5.0.0

Feature

Integration with OpenTelemetryBDR extension can now send monitoring metrics as well as traces to the OpenTelemetry collector for better integration with existing monitoring solutions.

BDR

5.0.0

Feature

Postgres 15 compatibilityEDB Postgres Distributed 5 is compatible with Postgres 12 to 15.

BDR

5.0.0

Feature

Improved Cluster Event ManagementThe bdr.worker_errors and bdr.state_journal_details view were replaced by unified bdr.event_summary which also include changes in Raft role for the local node. In the future additional events may be added to it.

BDR

5.0.0

Change

Improved transaction tracking performanceTransaction tracking now uses shared memory instead of bdr.internal_node_pre_commit catalog which considerably improves performance as it does not incur additional I/O.

BDR

5.0.0

Feature

Support non-default replication sets with Decoding WorkerAllows Decoding Worker feature to be used in clusters using non-default replication sets like asymmetric replication setup.

BDR

5.0.0

Feature

Add support for HASH partitioning in AutopartitionExtend autopartition/autoscale to support HASH partitioning. Many of things that are required for RANGE partitioning are not needed for HASH partitioning. For example, we expect to create all HASH partitions in one go (at least for the current work; later we may change this). We don’t expect HASH partitions to be moved to a different tablespace or dropped. So data retention policies don’t apply for HASH partitioning.

BDR

5.0.0

Feature

Add a new benchmarking utility `pgd_bench`The utility supports benchmarking CAMO transactions and in future releases will be used for benchmarking PGD specific workloads.

BDR

5.0.0

Change

Nodes now have a node kindThis better differentiates different kinds of nodes such as data, witness, subscriber-only and standby.

BDR

5.0.0

Change

Separate Task Management from AutopartitionIn this release, the autopartition work queue mechanism has been moved to a separate module called Task Manager (taskmgr). The task manager is responsible for creating new tasks and executing the ones created by the local node or the task manager leader node. The autopartition worker is thus renamed as taskmgr worker process in this release. In the older PGD releases, the Raft leader was responsible for creating new work items. But that creates a problem because a witness node can become a Raft leader while it does not have the full view of the cluster objects. In this release, we have introduced a concept of Task Manager Leader node. The node is selected automatically by PGD, but for upgraded clusters, its important to set the node_kind property for all nodes in the cluster. The user is expected to do this manually after upgrading to the latest PGD version by calling bdr.alter_node_kind() SQL function for each node.

BDR

5.0.0

Deprecation

bdr.assess_lock_statement and bdr.assess_update_replica_identity are deprecated.

Proxy

5.0.0

Feature

PGD built-in proxyA TCP layer 4, pass through proxy for PGD cluster using routing capabilities of BDR.

CLI

5.0.0

Feature

PGD cluster verification CLI supports two new commands verify-settings and verify-cluster. verify-settings verifies the PostgreSQL configuration of each node in a PGD cluster against the recommendations. verify-cluster verifies the PGD cluster architectures against the flexible architecture deployment recommendations.

CLI

5.0.0

Feature

Proxy management and configuration`pgd` supports create-proxy, delete proxy, set-group-options, set-node-options, set-proxy-options, show-proxies, show-groups and switchover to configure and manage Proxy per group.

CLI

5.0.0

Change

Remove show-camo command and remove CAMO check from check-health command. Support for commit scopes in CLI will be added in a future release.

CLI

5.0.0

Change

Modify output of show-nodes and show-raft commands to accomodate routing capabilities.