E.1. Postgres Pro Shardman 17.6.1 #

Release date: 2025-11-17

This release is based on PostgrePro Enterprise 17.6 and Postgres Pro Shardman 17.5.1 and provides new features, optimizations and bug fixes. Major changes are as follows:

E.1.1. Core and Extensions #

  • Added tha fast path optimization for queries that work with data located on the same partition. SELECT,UPDATE, DELETE commands and prepared statements are supported with Silk. Fast path cannot be used if the extra_float_digits configuration parameter is less than 0. Disabled by default.

  • Added a public.list_always_shippable() function to the postgres_fdw that returns a list of always shippable procedures.

  • Added support for the Postgres Pro Shardman metadata reading in pgpro_controldata.

  • Allowed displaying statistics on size of the MT_SPI message components (bytes) sent from the node with the shardman.pg_stat_silk_msg_components view.

  • Added a limitation for the local tables that now cannot inherit global tables.

  • Added a feature to assign a row-level security (RLS) policy to global and sharded tables.

  • Added support for the extended password policies and global profiles with the shardman.extended_password_policies configuration parameter and the shardman.extended_password_policies_skip_users configuration parameter to specify system users for which no exchange of information on authorization events between Postgres Pro Shardman cluster nodes takes place and which cannot be locked. They, however, can be authorized on a Postgres Pro Shardman standby.

  • Added support for resolving multiple addresses when configuring a foreign server for Silk.

  • Added two READ COMMITTED modes to avoid dirty reads, with or without the support of the CSN snapshot per top-level statement managed by the enable_csn_snapshot_for_read_committed configuration parameter.

  • Limited the shardman.sync_schema editing to the superuser privileges.

  • Introduced SSL support for Silk.

  • Updated functions of the shardman.try_advisory_xact_lock*() type that now return false instead of throwing an error.

  • Updated the shard creating process, now the postgres DB is automatically created on a referee node.

  • Updated the supported version of pgpro_pwr to 4.10.

  • Updated the supported version of amcheck to 1.4.

  • Updated the supported version of aqo to 3.1.

  • Updated the supported version of dblink to 1.2.

  • Updated the supported version of pg_proaudit to 2.0.

  • Updated the supported version of pg_query_state to 1.2.

  • Updated the supported version of pgpro_stats to 1.9-sdm4.

  • Updated the supported version of pg_filedump to 18.0.

  • Updated the supported version of pgpro_controldata to 18.1.

  • Updated the supported version of postgres_fdw to 1.4.

  • Updated the supported version of ptrack to 2.5.

E.1.2. Management Utilities #

  • Added support for the protected mode on the biha control channel.

  • Added a feature of a cluster restart with minimum downtime by means of the shardmanctl restart rolling command.

  • Added a shardmand mechanism that allows showing the services that are currently running in the system.

  • Added new configuration parameters to work with syncpoints: syncpointInterval that allows specifying how often is a syncpoint created (in seconds), syncpointEnabled that enables monitor that periodically creates syncpoints, and syncpointLimit that specifies the amount of the most recent syncpoints stored.

  • Allowed executing commands outside of the transaction block with the --no-transaction flag of the shardmanctl forall command.

  • Allowed viewing a list of sharded and global table information with the shardmand endpoint /shardmand/v1/tables.

  • Added a feature to start a cluster with SSL certificate-based authentication.

  • Added a maintenance user option under which deadlock detector and monitor of hanging transactions can be run.

  • Allowed defining a variable for use by a custom script with a new shardmanctl bench run -D flag.

  • Changed the BiHA configuration update algorithm. Now the follower and referee nodes wait until the configuration is updated on the leader and only then update their own configuration. This allows decreasing the max_wal_senders parameter value.

  • Disabled coloring of the log level when executing any shardmanctl command.

  • Guaranteed the data consistency when forming user lists.

  • Improved the shardmanctl config update command output wording in case of an error.

  • Lifted a limitation, now global and sharded tables can be created during a backup process.

  • Lifted the limitation for decreasing of sensible specification parameters, such as max_connections, max_prepared_transactions, and max_worker_processes. Previously it could result in the configuration rollback issues.

  • Updated the integrity check that now can be run after every configuration update if certVersion is set to true.

  • Updated the keeper connection behavior, now it is held instead of being closed.

  • Updated the consistency and user schema check mechanisms.

  • Updated the shardmanctl config update command that now can modify specifically the certVersion parameter.

  • Updated the admin role privileges, it can now modify the shardman.sync_schema configuration parameter.

  • Updated the etcd client version to 3.6.4.

  • Updated the smart restoration of the shardman schema. Now shardmanctl schema restore --smart checks and restores all lacking PostgreSQL extensions correctly.

  • Updated the system behavior for the shardmanctl probackup backup. Now, when creating a backup, it waits for the leader and standbys to be ready, thus avoiding the leader switching to the RO (Read-only) state when the command is executed.

  • Fixed the PANIC-level error when running shardmanctl set.

  • Fixed a bug that previously resulted in the referee_with_wal failure at a Postgres Pro Shardman cluster with tablespaces startup.

  • Fixed the BDU:2025-02344 and GHSA-fv92-fjc5-jj9h vulnerabilities.

  • Fixed the GO-2025-3770 vulnerability.

  • Fixed a bug that, in some rare cases, resulted in shardmanctl status failure.

  • Fixed a bug that previously resulted in adding new nodes failure if the shardman schema had global tables with data.

  • Fixed the behavior that previously resulted in replication failure if BiHA and postgres user passwords were different.

  • Fixed a bug, previously it was impossible to add new cluster nodes if the shardman schema contained global sequences.

  • Fixed the referee nodes failure in cases when the following parameters were changed: max_connections, max_wal_senders shared_buffers, max_prepared_transactions, max_worker_processes.

  • Fixed extensions restore, now all extensions are restored and not only those of Postgres Pro Shardman.

  • Fixed a bug that resulted in PANIC during the rebalance process.

  • Fixed an issue that could result in instances restart due to a short connection loss with etcd.

  • Fixed the displaying of the restoring progress indicators.

  • Fixed a bug that previously resulted in the single shard restore process hanging.

  • Fixed the initialization failure in cases when svt5 was enabled.