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;
- 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.
postgres=> grant vacuum on table1 to user1;
postgres=> grant pg_vacuum_all_tables to satya;
postgres=> grant pg_analyze_all_tables to satya;
- 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