Release date: 2024-12-16
This release is based on PostgreSQL 14.15 and provides new features, optimizations and bug fixes. Major changes are as follows:
Added the in_queue_used and out_queue_used
fields to the shardman.silk_backends view that show the number of queued data bytes in
the incoming or outgoing queue in the shared memory between the backend and multiplexer.
Added a new shardman.silk_routing
function along with the corresponding views
shardman.silk_routing and gv_silk_routing.
They show information about the current active
routes.
Added a new shardman.silk_rbc_snap
function that retrieves a consistent snapshot of all the connects, backends and routes that can be
used by silk_connects, silk_backends,
and silk_routes functions.
Added shardman.silk_state and
shardman.silk_statinfo views, the
shardman.silk_statinfo_reset() function and the
shardman.silk_track_time
configuration parameter that cover the multiplexer process state.
Added two new configuration parameters, shardman.silk_tracelog configuration parameter that enables or disables Silk tracing and debug logging, and shardman.silk_tracelog_categories that defines the Silk message categories to be traced.
Added two new configuration parameters,
enable_non_equivalence_filters
that enables the optimizer to generate additional non-equivalence conditions using equivalence classes, and optimize_row_in_expr
that enables the optimizer to generate additional conditions from the IN () expression.
Added a new configuration parameter track_xact_time, the
shardman.pg_stat_xact_time
view, and the shardman.gv_stat_xact_time global view for showing statistics for the
time spent on transactions.
Added the attached field to the
shardman.silk_backends view and the silk_backends
function that shows the actual attaching of a backend to the multiplexer.
Added a new shardman.silk_stream_work_mem configuration parameter that sets the base maximum amount of memory to be used by a Silk stream before writing to the temporary disk files.
Updated the EXPLAIN command output to
show server and transport
blocks in one row, if set to verbose.
Updated the supported version of pgpro_pwr to 4.8.
Updated the supported version of pg_query_state to 1.1.
Updated the supported version of pgpro_stats to 1.8-sdm4.
Updated the supported version of pg_probackup to 2.8.5.
Sped up planning for the queries
for the arrays with a big number of records.
field = ANY (ARRAY[values])
Updated the postgres_fdw.foreign_explain
configuration parameter type from boolean to
enum, the default value being collapsed.
Also updated the EXPLAIN command output to comply with the new values.
Fixed a bug that previously resulted in the multiplexer hanging.
Updated the nextval function that can be used
to generate next sequence values that are unique across the entire cluster.
Fixed a bug that previously resulted in the command line key being ignored if a corresponding environment variable was set.
Fixed a bug that previously resulted in shardmanctl bench run failure due to its memory buffers overflow.
Fixed a bug that previously resulted in shardmanctl bench
failure if the command wasn't executed under the postgres user.
Fixed a bug that previously resulted in the full resync of a
replica and was caused by saving invalid data
to the postgresql.auto.conf file.
Fixed a bug that previously resulted in the PANIC-level error when calling any commands that modify configurations of a cluster that was not yet initialized.
Updated the shardmanctl bench run
command flag -f|--file to add a transaction script read from file_namefilename to the list of scripts to be executed and to write an integer weight for each file.
Updated the shardmanctl bench run
command with -P|--progress, -R|--rate, and -M|--protocol flags.