October 1, 2024

Top New Features in PostgreSQL 16 database

Postgres 16 new features


  • Random connection load balancing support using libpq, which will make it easier to scale out read queries in Postgres version 16.
  • In PostgreSQL 16, we can grant (only) vacuum and analyze operation privileges to another user, no need to be done only the owner or super users.
  • postgres=> grant analyze on table1 to user1;
    postgres=> grant vacuum on table1 to user1;
    postgres=> grant pg_vacuum_all_tables to satya;
    postgres=> grant pg_analyze_all_tables to satya;
  • Users with CREATEROLE privilege, without ADMIN OPTION, no longer have the ability to hand out membership in any role to anyone. 
  • GRANT query to be performed with ADMIN OPTION.
  • The speed of hash index builds improved.
  • Logical replication from standby servers. Logical replication subscribers to apply large transactions in parallel.
  • Regular expression matching on database and role entries in pg_hba.conf.
  • Postgres 16 onwards, NUMERIC can process hexadecimal, octal, and binary integers of any size.
  • PostgreSQL query planner can now parallize FULL and RIGHT joins, by creating gather node and worker nodes.
  • Supports incremental sorts for SELECT DISTINCT.

New System Views in Postgres 16:
  • Monitoring of I/O statistics using the new pg_stat_io view.

New Parameters in PostgreSQL 16:
  • New server variable enable_presorted_aggregate to aggregates having ORDER BY or DISTINCT to use pre-sorted data enable/disable.
  • Added server variable SYSTEM_USER.
  • New server parameter logical_replication_mode to control how logical decoding publishers transfer changes and how subscribers apply them.

Related PostgreSQL Articles: New features of Postgres 15