#PostgreSQL

Recent posts

March 16   •   PostgreSQL
Continuing the series of CommitFest 19 reviews, today we’re covering the January 2026 CommitFest. The highlights from previous CommitFests are available here: 2025-07 , 2025-09 , 2025-11 . Partitioning: merging and splitting partitions pg_dump[all]/pg_restore: dumping and restoring extended statistics file_fdw: skipping initial rows Logical replication: enabling and disabling WAL logical decoding without server restart Monitoring logical replication slot synchronization delays pg_available_extensions shows extension installation directories New function pg_get_multixact_stats: multixact usage statistics Improvements to vacuum and analyze progress monitoring Vacuum: memory usage information vacuumdb --dry-run jsonb_agg optimization LISTEN/NOTIFY optimization ICU: character conversion function optimization The parameter standard_conforming_strings can no longer be disabled ...
March 13   •   PostgreSQL
This article reviews the November 2025 CommitFest. For the highlights of the previous two CommitFests, check out our last posts: 2025-07 , 2025-09 . Planner: eager aggregation Converting COUNT(1) and COUNT(not_null_col) to COUNT(*) Parallel TID Range Scan COPY … TO with partitioned tables New function error_on_null Planner support functions for optimizing set-returning functions (SRF) SQL-standard style functions with temporary objects BRIN indexes: using the read stream interface for vacuuming WAIT FOR: waiting for synchronization between replica and primary Logical replication of sequences pg_stat_replication_slots: a counter for memory limit exceeds during logical decoding pg_buffercache: buffer distribution across OS pages pg_buffercache: marking buffers as dirty Statistics reset time for individual relations and functions Monitoring the volume of full page images written to WAL New parameter log_autoanalyze_min_duration psql: search path in the prompt psql: displaying boolean values pg_rewind: skip copying WAL segments already present on the target server pgbench: continue running after SQL command errors ...
February 18   •   PostgreSQL
We continue our series of articles reviewing changes in PostgreSQL 19. This time we'll look at what emerged from the September 2025 CommitFest. The highlights from the first July CommitFest are available here: 2025-07 . GROUP BY ALL Window functions: NULL value handling Event triggers in PL/Python More precise error message for incorrect routine parameter names random: random date/time within a specified range base64url format for encode and decode functions New debug_print_raw_parse parameter The log_lock_waits parameter is now enabled by default pg_stat_progress_basebackup: backup type vacuumdb: collecting statistics on partitioned tables Buffer cache: using clock-sweep algorithm to find free buffers Fake table aliases in queries ...
February 17   •   PostgreSQL
We’re launching a new series of articles covering the changes coming up in PostgreSQL 19. This first article focuses on the events from last summer’s July CommitFest. Connection service file in libpq parameter and psql variable regdatabase: a type for database identifiers pg_stat_statements: counters for generic and custom plans pg_stat_statements: FETCH command normalization pg_stat_statements: normalizing commands with parameter lists in IN clauses EXPLAIN: Memoize node estimates btree_gin: comparison operators for integer types pg_upgrade: optimized migration of large objects Optimized temporary table truncation Planner: incremental sort in Append and MergeAppend nodes Domain constraint validation no longer blocks DML operations CHECKPOINT command parameters COPY FROM: skipping initial rows pg_dsm_registry_allocations: dynamic shared memory (DSM) usage ...
September 25, 2025   •   PostgreSQL
September 25th marks the release of PostgreSQL 18. This article covers the March CommitFest and concludes the series covering the new features of the upcoming update. This article turned out quite large, as the last March CommitFest is traditionally the biggest and richest in new features. You can find previous reviews of PostgreSQL 18 CommitFests here: 2024-07 , 2024-09 , 2024-11 , 2025-01 . Client and Server Applications pg_dump[all]/pg_restore: dump and restore statistics Collect statistics after server upgrade pg_upgrade --swap: migrate directories to a new cluster pg_combinebackup --link: hard links instead of copying files pg_dump[all], pg_restore: --no-policies pg_createsubscriber: enable two_phase for all subscriptions pg_createsubscriber: remove publications on subscriber pg_createsubscriber: create subscriptions for every database on the publication server psql: pipeline mode psql: current connection information psql: set the default time interval for \watch psql: \dx displays the default extension version Monitoring NUMA: monitoring tools for non-uniform memory access architectures pg_stat_get_backend_wal: WAL statistics for a specific process EXPLAIN: actual rows shown to two decimal places EXPLAIN: an interface for adding more options to the command Log failed lock attempts Log session time-to-connect log_line_prefix: local server IP address pg_stat_statements: normalize commands with lists of constants in IN Additional WAL buffer overflow monitoring tools Track vacuum and analyze delays [Auto]vacuum and Analysis vacuum_truncate: manage the truncation of empty pages at the end of a table More frequent autovacuuming of dead tuples in large tables Autovacuum triggers sooner after new rows are inserted Eager freezing to amortize aggressive vacuum Performance Asynchronous input/output io_combine_limit: increase maximum allowed limit to 1MB Read stream interface usage BTree indexes: skipping the condition on the index’s leading column GiST indexes: fast index creation using the sortsupport method Planner: replacing IN (VALUES ...) with array search Planner: eliminating redundant self-joins Procedural Languages PL/pgSQL: passing named values of cursor parameters using => Replication multiple_unique_conflicts: another logical replication conflict idle_replication_slot_timeout: canceling inactive slots by timeout max_active_replication_origins: maximum number of replication origins Security Support for the OAuth 2.0 authorization protocol dblink: using pass-through SCRAM authentication pgcrypto: support for sha256crypt and sha512crypt password hashing algorithms pgcrypto: support for CFB mode for the AES encryption standard ALTER DEFAULT PRIVILEGES and large objects libpq: the sslkeylogfile parameter Server Temporal primary, unique, and foreign keys Virtual computed columns NOT NULL integrity constraints: creation without validation, enabling and disabling inheritance Integrity constraints: NOT ENFORCED file_copy_method: method for copying files when creating a database extension_control_path: location of extension control files Nondeterministic collations: support for substring search functions The gamma and lgamma functions Conversion of integer types to bytea and back The pg_get_loaded_modules function: information about libraries loaded into shared memory pg_buffercache: evict tables or the entire cache amcheck: GIN index verification SQL commands and built-in functions CREATE FOREIGN TABLE LIKE COPY ... TO: materialized view support The json_strip_nulls function removes empty values in arrays New array_sort function ...
September 4, 2025   •   PostgreSQL
Postgres Professional, a developer of data management products, has released version 17.5.1 of its Postgres Pro Enterprise DBMS. The system now supports embedded analytics, offers automated database tuning, introduces a new backup technology, and much more .
June 28, 2019   •   Company Updates

Postgres Professional took part in the PGIBZ conference on the beaches of Ibiza

The conference gathered about 100 people, including PostgreSQL developers, DBA and customers from all over the world.