PostgreSQL Release 18

2 hours ago 1
  • Increase the logging granularity of server variable log_connections (Melanie Plageman) §

    This server variable was previously only boolean, which is still supported.

  • Add log_connections option to report the duration of connection stages (Melanie Plageman) §

  • Add log_line_prefix escape %L to output the client IP address (Greg Sabino Mullane) §

  • Add server variable log_lock_failures to log lock acquisition failures (Yuki Seino, Fujii Masao) § §

    Specifically it reports SELECT ... NOWAIT lock failures.

  • Modify pg_stat_all_tables and its variants to report the time spent in VACUUM, ANALYZE, and their automatic variants (Sami Imseih) §

    The new columns are total_vacuum_time, total_autovacuum_time, total_analyze_time, and total_autoanalyze_time.

  • Add delay time reporting to VACUUM and ANALYZE (Bertrand Drouvot, Nathan Bossart) § §

    This information appears in the server log, the system views pg_stat_progress_vacuum and pg_stat_progress_analyze, and the output of VACUUM and ANALYZE when in VERBOSE mode; tracking must be enabled with the server variable track_cost_delay_timing.

  • Add WAL, CPU, and average read statistics output to ANALYZE VERBOSE (Anthonin Bonnefoy) § §

  • Add full WAL buffer count to VACUUM/ANALYZE (VERBOSE) and autovacuum log output (Bertrand Drouvot) §

  • Add per-backend I/O statistics reporting (Bertrand Drouvot) § §

    The statistics are accessed via pg_stat_get_backend_io(). Per-backend I/O statistics can be cleared via pg_stat_reset_backend_stats().

  • Add pg_stat_io columns to report I/O activity in bytes (Nazir Bilal Yavuz) §

    The new columns are read_bytes, write_bytes, and extend_bytes. The op_bytes column, which always equaled BLCKSZ, has been removed.

  • Add WAL I/O activity rows to pg_stat_io (Nazir Bilal Yavuz, Bertrand Drouvot, Michael Paquier) § § §

    This includes WAL receiver activity and a wait event for such writes.

  • Change server variable track_wal_io_timing to control tracking WAL timing in pg_stat_io instead of pg_stat_wal (Bertrand Drouvot) §

  • Remove read/sync columns from pg_stat_wal (Bertrand Drouvot) § §

    This removes columns wal_write, wal_sync, wal_write_time, and wal_sync_time.

  • Add function pg_stat_get_backend_wal() to return per-backend WAL statistics (Bertrand Drouvot) §

    Per-backend WAL statistics can be cleared via pg_stat_reset_backend_stats().

  • Add function pg_ls_summariesdir() to specifically list the contents of PGDATA/pg_wal/summaries (Yushi Ogiwara) §

  • Add column pg_stat_checkpointer.num_done to report the number of completed checkpoints (Anton A. Melnikov) §

    Columns num_timed and num_requested count both completed and skipped checkpoints.

  • Add column pg_stat_checkpointer.slru_written to report SLRU buffers written (Nitin Jadhav) §

    Also, modify the checkpoint server log message to report separate shared buffer and SLRU buffer values.

  • Add columns to pg_stat_database to report parallel worker activity (Benoit Lobréau) §

    The new columns are parallel_workers_to_launch and parallel_workers_launched.

  • Have query id computation of constant lists consider only the first and last constants (Dmitry Dolgov, Sami Imseih) § § §

    Jumbling is used by pg_stat_statements.

  • Adjust query id computations to group together queries using the same relation name (Michael Paquier, Sami Imseih) §

    This is true even if the tables in different schemas have different column names.

  • Add column pg_backend_memory_contexts.type to report the type of memory context (David Rowley) §

  • Add column pg_backend_memory_contexts.path to show memory context parents (Melih Mutlu) §

Read Entire Article