June 29, 2023

Top New Features in PostgreSQL 15 database

Postgres 15 new features


PostgreSQL 15 has many improvements and new features.

  • MERGE command has been introduced, to do conditional INSERT, UPDATE, DELETE rows.
  • Added support for Zstandard (zstd) compression. E.g. allow WAL full-page writes to use LZ4 and Zstandard compression.
  • Prevent logical replication of empty transactions.
  • UNIQUE NULLS NOT DISTINCT feature introduced for indexes, to have only one NULL value in the column.
  • Add SQL functions to monitor the directory contents of logical replication slots, new functions are pg_ls_logicalsnapdir(), pg_ls_logicalmapdir(), and pg_ls_replslotdir().
  • Performance improvements, particularly for in-memory and on-disk sorting.
  • New pg_database_owner role.
  • New wait events are used when calling archive_command, archive_cleanup_command, restore_command and recovery_end_command.
  • Add predefined role pg_checkpoint that allows members to run CHECKPOINT.
  • New roles like pg_read_all_data & pg_write_all_data has been added.
  • Subscribers can stop the application of logical replication changes on error, with the option disable_on_error.
  • log_destination parameter has new value - jsonlog - to generate structured log.
  • Add support for petabyte units to pg_size_pretty() and pg_size_bytes().
  • Stats collector (process) has been removed.
  • \dconfig - to inspect/find values of configuration parameters.
  • Compression method/level in pg_basebackup commands.
  • Roles can be granted to change specific parameters, through ALTER SYSTEM.

New System Views in Postgres 15:
  • Add system view pg_ident_file_mappings to report pg_ident.conf information.
  • Add system view pg_stat_subscription_stats to report on subscriber activity. And new function pg_stat_reset_subscription_stats() allows resetting these statistics counters.
  • pg_backend_memory_contexts

New Parameters in PostgreSQL 15:
  • Add server variable recursive_worktable_factor to allow the user to specify the expected size of the working table of a recursive query.
  • New server variable log_startup_progress_interval - to generate progress messages in the server log during slow server starts.
  • Add server variable shared_memory_size to report the size of allocated shared memory.
  • Add server variable shared_memory_size_in_huge_pages to report the number of huge memory pages required.

Removed:
  • Python 2.x is no longer supported.

Related PostgreSQL Articles:  New Features in PostgreSQL 14 database   Postgres 13 new features

No comments:

Post a Comment