System Catalogs / Version comparison
What changed?
System Catalogs · PostgreSQL 19 beta 4 → 20 devel
Development snapshot. These definitions may change before release.
2 added · 0 removed · 0 changed · 11 reworded · 4 with columns not listed. These are changes between the pinned reference snapshots. “Changed” means columns, their types, their order or a measured attribute such as NOT NULL; “reworded” means only the manual's descriptions.
rewordedpg_class
--- 19 beta 4 +++ 20 devel @@ -8,10 +8,10 @@ relam: The access method used to access this table or index. Not meaningful if the relation is a sequence or has no on-disk file, except for partitioned tables, where, if set, it takes precedence over default_table_access_method when determining the access method to use for partitions created when one is not specified in the creation command. relfilenode: Name of the on-disk file of this relation; zero means this is a “mapped” relation whose disk file name is determined by low-level state reltablespace: The tablespace in which this relation is stored. If zero, the database's default tablespace is implied. Not meaningful if the relation has no on-disk file, except for partitioned tables, where this is the tablespace in which partitions will be created when one is not specified in the creation command. -relpages: Size of the on-disk representation of this table in pages (of size BLCKSZ). This is only an estimate used by the planner. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX. +relpages: Size of the on-disk representation of this table in pages (of size BLCKSZ). This is only an estimate used by the planner. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX. This is effectively an unsigned 32-bit integer; values larger than 231−1 are stored as negative values. reltuples: Number of live rows in the table. This is only an estimate used by the planner. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX. If the table has never yet been vacuumed or analyzed, reltuples contains -1 indicating that the row count is unknown. -relallvisible: Number of pages that are marked all-visible in the table's visibility map. This is only an estimate used by the planner. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX. -relallfrozen: Number of pages that are marked all-frozen in the table's visibility map. This is only an estimate used for triggering autovacuums. It can also be used along with relallvisible for scheduling manual vacuums and tuning vacuum's freezing behavior. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX. +relallvisible: Number of pages that are marked all-visible in the table's visibility map. This is only an estimate used by the planner. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX. This is effectively an unsigned 32-bit integer; values larger than 231−1 are stored as negative values. +relallfrozen: Number of pages that are marked all-frozen in the table's visibility map. This is only an estimate used for triggering autovacuums. It can also be used along with relallvisible for scheduling manual vacuums and tuning vacuum's freezing behavior. It is updated by VACUUM, ANALYZE, and a few DDL commands such as CREATE INDEX. This is effectively an unsigned 32-bit integer; values larger than 231−1 are stored as negative values. reltoastrelid: OID of the TOAST table associated with this table, zero if none. The TOAST table stores large attributes “out of line” in a secondary table. relhasindex: True if this is a table and it has (or recently had) any indexes relisshared: True if this table is shared across all databases in the cluster. Only certain system catalogs (such as pg_database) are shared.
rewordedpg_locks
--- 19 beta 4 +++ 20 devel @@ -13,5 +13,5 @@ pid: Process ID of the server process holding or awaiting this lock, or null if the lock is held by a prepared transaction mode: Name of the lock mode held or desired by this process (see Section 13.3.1 and Section 13.2.3) granted: True if lock is held, false if lock is awaited -fastpath: True if lock was taken via fast path, false if taken via main lock table +fastpath: True if lock was taken via fast path, false if taken via main lock table (see Section 13.3.1.1) waitstart: Time when the server process started waiting for this lock, or null if the lock is held. Note that this can be null for a very short period of time after the wait started even though granted is false.
rewordedpg_stat_activity
--- 19 beta 4 +++ 20 devel @@ -20,4 +20,4 @@ backend_xmin: The current backend's xmin horizon. query_id: Identifier of this backend's most recent query. If state is active this field shows the identifier of the currently executing query. In all other states, it shows the identifier of last query that was executed. Query identifiers are not computed by default so this field will be null unless compute_query_id parameter is enabled or a third-party module that computes query identifiers is configured. query: Text of this backend's most recent query. If state is active this field shows the currently executing query. In all other states, it shows the last query that was executed. By default the query text is truncated at 1024 bytes; this value can be changed via the parameter track_activity_query_size. -backend_type: Type of current backend. Possible types are autovacuum launcher, autovacuum worker, logical replication launcher, logical replication worker, parallel worker, background writer, client backend, checkpointer, archiver, standalone backend, startup, walreceiver, walsender, walwriter and walsummarizer. In addition, background workers registered by extensions may have additional types. +backend_type: Type of current backend. Possible types are: archiver: The WAL archiver, active when archive_mode is enabled. autovacuum launcher: The background process that launches autovacuum workers, active when autovacuum is on. autovacuum worker: A background process running VACUUM or ANALYZE on a single table. background writer: The background process that makes sure that there are enough clean buffers in shared buffers. checkpointer: The background process that performs checkpoints regularly. client backend: The server process performing work for a regular database connection. datachecksums launcher: The background process that launches data checksum workers. datachecksums worker: A background process that calculates data checksums for all pages in one database. io worker: A background process performing asynchronous I/O, active when io_method is set to worker. logical replication apply worker: A background process that applies data modifications on a logical subscriber. logical replication launcher: The background process that launches logical replication worker processes for subscriptions. logical replication parallel worker: A background process that applies data modifications on a logical subscriber for a subscription with streaming = parallel. logical replication sequencesync worker: A background process that replicates sequence data on a logical subscriber. logical replication tablesync worker: A background process that copies table data on a logical subscriber for a subscription with copy_data = true. parallel worker: A background process that helps a backend process to perform operations in parallel. REPACK decoding worker: A background process that decodes WAL for REPACK (CONCURRENTLY). slotsync worker: The background process that synchronizes logical replication slots on a streaming replication standby server, active when sync_replication_slots is set to on. standalone backend: The backend process when PostgreSQL was started in Single-User Mode. startup: The background process that replays WAL during crash recovery, archive recovery or streaming replication. walreceiver: The background process that receives WAL records from a WAL sender, active in streaming replication standby mode. walsender: A background process that sends WAL records to receivers (during streaming replication) or decodes WAL and sends the decoded information (during logical replication). walsummarizer: The background process that creates summaries from WAL for use with incremental backup, active when summarize_wal is on. walwriter: The background process that persists WAL records from WAL buffers to disk. In addition, background workers registered by extensions may have additional types.
rewordedpg_stat_database
--- 19 beta 4 +++ 20 devel @@ -15,8 +15,8 @@ temp_files: Number of temporary files created by queries in this database. All temporary files are counted, regardless of why the temporary file was created (e.g., sorting or hashing), and regardless of the log_temp_files setting. temp_bytes: Total amount of data written to temporary files by queries in this database. All temporary files are counted, regardless of why the temporary file was created, and regardless of the log_temp_files setting. deadlocks: Number of deadlocks detected in this database -checksum_failures: Number of data page checksum failures detected in this database (or on a shared object), or NULL if data checksums are disabled. -checksum_last_failure: Time at which the last data page checksum failure was detected in this database (or on a shared object), or NULL if data checksums are disabled. +checksum_failures: Number of data page checksum failures detected in this database (or on a shared object). Detected failures are not reset if the data_checksums setting changes. Clusters which are initialized without data checksums will show this as 0. In PostgreSQL version 18 and earlier, this was set to NULL for clusters with data checksums disabled. +checksum_last_failure: Time at which the last data page checksum failure was detected in this database (or on a shared object). Last failure is reported regardless of the data_checksums setting. blk_read_time: Time spent reading data file blocks by backends in this database, in milliseconds (if track_io_timing is enabled, otherwise zero) blk_write_time: Time spent writing data file blocks by backends in this database, in milliseconds (if track_io_timing is enabled, otherwise zero) session_time: Time spent by database sessions in this database, in milliseconds (note that statistics are only updated when the state of a session changes, so if sessions have been idle for a long time, this idle time won't be included)
addedpg_stat_kind_info
--- 19 beta 4 +++ 20 devel @@ -0,0 +1,7 @@ +id integer +name text +builtin boolean +fixed_amount boolean +accessed_across_databases boolean +write_to_file boolean +entry_count bigint
rewordedpg_stat_lock
--- 19 beta 4 +++ 20 devel @@ -2,5 +2,5 @@ locktype: Type of the lockable object. See pg_locks for details. waits: Number of times a lock of this type had to wait because of a conflicting lock. Only incremented when the lock was successfully acquired after waiting longer than deadlock_timeout. wait_time: Total time spent waiting for locks of this type, in milliseconds. Only incremented when the lock was successfully acquired after waiting longer than deadlock_timeout. -fastpath_exceeded: Number of times a lock of this type could not be acquired via fast path because the fast path slot limit was exceeded. Increasing max_locks_per_transaction can reduce this number. +fastpath_exceeded: Number of times a lock of this type could not be acquired via fast path because the fast path slot limit was exceeded. Increasing max_locks_per_transaction can reduce this number. See Section 13.3.1.1 for which locks are eligible for fast-path locking; for ineligible lock types this counter is always zero. stats_reset: Time at which these statistics were last reset.
rewordedpg_stat_progress_analyze
--- 19 beta 4 +++ 20 devel @@ -3,7 +3,7 @@ datid: OID of the database to which this backend is connected. datname: Name of the database to which this backend is connected. relid: OID of the table being analyzed. -phase: Current processing phase. See Table 27.42. +phase: Current processing phase. See Table 27.43. sample_blks_total: Total number of heap blocks that will be sampled. sample_blks_scanned: Number of heap blocks scanned. ext_stats_total: Number of extended statistics.
rewordedpg_stat_progress_basebackup
--- 19 beta 4 +++ 20 devel @@ -1,6 +1,6 @@ (relation) Whenever an application like pg_basebackup is taking a base backup, the pg_stat_progress_basebackup view will contain a row for each WAL sender process that is currently running the BASE_BACKUP replication command and streaming the backup. The tables below describe the information that will be reported and provide information about how to interpret it. pid: Process ID of a WAL sender process. -phase: Current processing phase. See Table 27.53. +phase: Current processing phase. See Table 27.54. backup_total: Total amount of data that will be streamed. This is estimated and reported as of the beginning of streaming database files phase. Note that this is only an approximation since the database may change during streaming database files phase and WAL log may be included in the backup later. This is always the same value as backup_streamed once the amount of data streamed exceeds the estimated total size. If the estimation is disabled in pg_basebackup (i.e., --no-estimate-size option is specified), this is NULL. backup_streamed: Amount of data streamed. This counter only advances when the phase is streaming database files or transferring wal files. tablespaces_total: Total number of tablespaces that will be streamed.
rewordedpg_stat_progress_cluster
--- 19 beta 4 +++ 20 devel @@ -4,7 +4,7 @@ datname: Name of the database to which this backend is connected. relid: OID of the table being clustered. command: The command that is running. Either CLUSTER or VACUUM FULL. Because this view exists for backwards-compatibility purposes only, it will translate a REPACK command into CLUSTER if index ordering is requested, or VACUUM FULL otherwise. -phase: Current processing phase. See Table 27.44. +phase: Current processing phase. See Table 27.45. cluster_index_relid: OID of the index defining the order of the rewritten table, or zero if no index ordering is requested. heap_tuples_scanned: Number of heap tuples scanned. This counter only advances when the phase is seq scanning heap, index scanning heap or writing new heap. heap_tuples_written: Number of heap tuples written. This counter only advances when the phase is seq scanning heap, index scanning heap or writing new heap.
rewordedpg_stat_progress_create_index
--- 19 beta 4 +++ 20 devel @@ -5,7 +5,7 @@ relid: OID of the table on which the index is being created. index_relid: OID of the index being created or reindexed. During a non-concurrent CREATE INDEX, this is 0. command: Specific command type: CREATE INDEX, CREATE INDEX CONCURRENTLY, REINDEX, or REINDEX CONCURRENTLY. -phase: Current processing phase of index creation. See Table 27.47. +phase: Current processing phase of index creation. See Table 27.48. lockers_total: Total number of lockers to wait for, when applicable. lockers_done: Number of lockers already waited for. current_locker_pid: Process ID of the locker currently being waited for.
addedpg_stat_progress_data_checksums
--- 19 beta 4 +++ 20 devel @@ -0,0 +1,10 @@ +pid integer +datid oid +datname name +phase text +databases_total bigint +databases_done bigint +relations_total bigint +relations_done bigint +blocks_total bigint +blocks_done bigint
rewordedpg_stat_progress_repack
--- 19 beta 4 +++ 20 devel @@ -4,7 +4,7 @@ datname: Name of the database to which this backend is connected. relid: OID of the table being processed. command: The command that is running. One of CLUSTER, REPACK, or VACUUM FULL. -phase: Current processing phase. See Table 27.49. +phase: Current processing phase. See Table 27.50. repack_index_relid: OID of the index defining the order of the rewritten table, or zero if no index ordering is requested. heap_tuples_scanned: Number of heap tuples scanned. This counter only advances when the phase is seq scanning heap, index scanning heap or writing new heap. heap_tuples_inserted: Number of heap tuples inserted. This counter only advances when the phase is seq scanning heap, index scanning heap, writing new heap or catch-up.
rewordedpg_stat_progress_vacuum
--- 19 beta 4 +++ 20 devel @@ -3,7 +3,7 @@ datid: OID of the database to which this backend is connected. datname: Name of the database to which this backend is connected. relid: OID of the table being vacuumed. -phase: Current processing phase of vacuum. See Table 27.51. +phase: Current processing phase of vacuum. See Table 27.52. heap_blks_total: Total number of heap blocks in the table. This number is reported as of the beginning of the scan; blocks added later will not be (and need not be) visited by this VACUUM. heap_blks_scanned: Number of heap blocks scanned. Because the visibility map is used to optimize scans, some blocks will be skipped without inspection; skipped blocks are included in this total, so that this number will eventually become equal to heap_blks_total when the vacuum is complete. This counter only advances when the phase is scanning heap. heap_blks_vacuumed: Number of heap blocks vacuumed. Unless the table has no indexes, this counter only advances when the phase is vacuuming heap. Blocks that contain no dead tuples are skipped, so the counter may sometimes skip forward in large increments.
columns not listedpg_stat_xact_all_tables
The PostgreSQL 20 devel manual names this view without listing its columns, so the columns cannot be compared.
columns not listedpg_stat_xact_sys_tables
The PostgreSQL 20 devel manual names this view without listing its columns, so the columns cannot be compared.
columns not listedpg_stat_xact_user_functions
The PostgreSQL 20 devel manual names this view without listing its columns, so the columns cannot be compared.
columns not listedpg_stat_xact_user_tables
The PostgreSQL 20 devel manual names this view without listing its columns, so the columns cannot be compared.