↑↓ select ↵ open ⌫ change scope Open full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

System Catalogs / Version comparison

What changed?

System Catalogs · PostgreSQL 9.1 → 9.2

Browse PG 9.2

Historical documentation for a PostgreSQL version that is no longer supported.

2 added · 0 removed · 16 changed · 14 reworded · 0 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.

changedpg_am
9.1 → 9.2
+ amsearcharray  boolean
+ amcanreturn  regproc
changedpg_attribute
9.1 → 9.2
+ attfdwoptions  text[]
rewordedpg_cast
--- 9.1
+++ 9.2
@@ -1,4 +1,4 @@
-(relation) The catalog pg_cast stores data type conversion paths, both built-in paths and those defined with CREATE CAST. It should be noted that pg_cast does not represent every type conversion that the system knows how to perform; only those that cannot be deduced from some generic rule. For example, casting between a domain and its base type is not explicitly represented in pg_cast. Another important exception is that "automatic I/O conversion casts", those performed using a data type's own I/O functions to convert to or from text or other string types, are not explicitly represented in pg_cast.
+(relation) The catalog pg_cast stores data type conversion paths, both built-in and user-defined. It should be noted that pg_cast does not represent every type conversion that the system knows how to perform; only those that cannot be deduced from some generic rule. For example, casting between a domain and its base type is not explicitly represented in pg_cast. Another important exception is that "automatic I/O conversion casts", those performed using a data type's own I/O functions to convert to or from text or other string types, are not explicitly represented in pg_cast.
 castsource: OID of the source data type
 casttarget: OID of the target data type
 castfunc: The OID of the function to use to perform this cast. Zero is stored if the cast method doesn't require a function.
changedpg_class
9.1 → 9.2
+ relallvisible  integer
changedpg_constraint
9.1 → 9.2
+ connoinherit  boolean
rewordedpg_default_acl
--- 9.1
+++ 9.2
@@ -1,5 +1,5 @@
 (relation) The catalog pg_default_acl stores initial privileges to be assigned to newly created objects.
 defaclrole: The OID of the role associated with this entry
 defaclnamespace: The OID of the namespace associated with this entry, or 0 if none
-defaclobjtype: Type of object this entry is for: r = relation (table, view), S = sequence, f = function
+defaclobjtype: Type of object this entry is for: r = relation (table, view), S = sequence, f = function, T = type
 defaclacl: Access privileges that this type of object should have on creation
rewordedpg_index
--- 9.1
+++ 9.2
@@ -7,7 +7,7 @@
 indisexclusion: If true, this index supports an exclusion constraint
 indimmediate: If true, the uniqueness check is enforced immediately on insertion (irrelevant if indisunique is not true)
 indisclustered: If true, the table was last clustered on this index
-indisvalid: If true, the index is currently valid for queries. False means the index is possibly incomplete: it must still be modified by INSERT/UPDATE operations, but it cannot safely be used for queries. If it is unique, the uniqueness property is not true either.
+indisvalid: If both this flag and indisready are true, the index is currently valid for queries. False means the index is possibly incomplete: it must still be modified by INSERT/UPDATE operations, but it cannot safely be used for queries. If it is unique, the uniqueness property is not guaranteed true either.
 indcheckxmin: If true, queries must not use the index until the xmin of this pg_index row is below their TransactionXmin event horizon, because the table may contain broken HOT chains with incompatible rows that they can see
 indisready: If true, the index is currently ready for inserts. False means the index must be ignored by INSERT/UPDATE operations.
 indkey: This is an array of indnatts values that indicate which table columns this index indexes. For example a value of 1 3 would mean that the first and the third table columns make up the index key. A zero in this array indicates that the corresponding index attribute is an expression over the table columns, rather than a simple column reference.
changedpg_locks
9.1 → 9.2
+ fastpath  boolean
rewordedpg_opclass
--- 9.1
+++ 9.2
@@ -1,4 +1,4 @@
-(relation) The catalog pg_opclass defines index access method operator classes. Each operator class defines semantics for index columns of a particular data type and a particular index access method. An operator class essentially specifies that a particular operator family is applicable to a particular indexable column data type. The set of operators from the family that are actually usable with the indexed column are whichever ones accept the column's data type as their lefthand input. Operator classes are described at length in Section 35.14.
+(relation) The catalog pg_opclass defines index access method operator classes. Each operator class defines semantics for index columns of a particular data type and a particular index access method. An operator class essentially specifies that a particular operator family is applicable to a particular indexable column data type. The set of operators from the family that are actually usable with the indexed column are whichever ones accept the column's data type as their left-hand input. Operator classes are described at length in Section 35.14.
 opcmethod: Index access method operator class is for
 opcname: Name of this operator class
 opcnamespace: Namespace of this operator class
changedpg_proc
9.1 → 9.2
+ protransform  regproc
+ proleakproof  boolean
addedpg_range
--- 9.1
+++ 9.2
@@ -0,0 +1,6 @@
+rngtypid  oid
+rngsubtype  oid
+rngcollation  oid
+rngsubopc  oid
+rngcanonical  regproc
+rngsubdiff  regproc
rewordedpg_seclabel
--- 9.1
+++ 9.2
@@ -1,4 +1,4 @@
-(relation) The catalog pg_seclabel stores security labels on database objects. Security labels can be manipulated with the SECURITY LABEL command. For an easier way to view security labels, see Section 45.61.
+(relation) The catalog pg_seclabel stores security labels on database objects. Security labels can be manipulated with the SECURITY LABEL command. For an easier way to view security labels, see Section 45.63. See also pg_shseclabel, which performs a similar function for security labels of database objects that are shared across a database cluster.
 objoid: The OID of the object this security label pertains to
 classoid: The OID of the system catalog this object appears in
 objsubid: For a security label on a table column, this is the column number (the objoid and classoid refer to the table itself). For all other object types, this column is zero.
rewordedpg_shadow
--- 9.1
+++ 9.2
@@ -4,6 +4,7 @@
 usecreatedb: User can create databases
 usesuper: User is a superuser
 usecatupd: User can update system catalogs. (Even a superuser cannot do this unless this column is true.)
+userepl: User can initiate streaming replication and put the system in and out of backup mode.
 passwd: Password (possibly encrypted); null if none. See pg_authid for details of how encrypted passwords are stored.
 valuntil: Password expiry time (only used for password authentication)
 useconfig: Session defaults for run-time configuration variables
= userepl  (now listed by the manual; the column exists in both releases)
addedpg_shseclabel
--- 9.1
+++ 9.2
@@ -0,0 +1,4 @@
+objoid  oid
+classoid  oid
+provider  text
+label  text
changedpg_stat_activity
9.1 → 9.2
+ pid  integer
+ state_change  timestamp with time zone
+ state  text
+ query  text
- procpid  integer
- current_query  text
rewordedpg_stat_all_indexes
--- 9.1
+++ 9.2
@@ -1 +1,9 @@
-(relation) For each index in the current database, the table and index OID, schema, table and index name, number of index scans initiated on that index, number of index entries returned by index scans, and number of live table rows fetched by simple index scans using that index.
+(relation) One row for each index in the current database, showing statistics about accesses to that specific index. See pg_stat_all_indexes for details.
+relid: OID of the table for this index
+indexrelid: OID of this index
+schemaname: Name of the schema this index is in
+relname: Name of the table for this index
+indexrelname: Name of this index
+idx_scan: Number of index scans initiated on this index
+idx_tup_read: Number of index entries returned by scans on this index
+idx_tup_fetch: Number of live table rows fetched by simple index scans using this index
rewordedpg_stat_all_tables
--- 9.1
+++ 9.2
@@ -1 +1,22 @@
-(relation) For each table in the current database (including TOAST tables), the table OID, schema and table name, number of sequential scans initiated, number of live rows fetched by sequential scans, number of index scans initiated (over all indexes belonging to the table), number of live rows fetched by index scans, numbers of row insertions, updates, and deletions, number of row updates that were HOT (i.e., no separate index update), numbers of live and dead rows, the last time the table was non-FULL vacuumed manually, the last time it was vacuumed by the autovacuum daemon, the last time it was analyzed manually, the last time it was analyzed by the autovacuum daemon, number of times it has been non-FULL vacuumed manually, number of times it has been vacuumed by the autovacuum daemon, number of times it has been analyzed manually, and the number of times it has been analyzed by the autovacuum daemon.
+(relation) One row for each table in the current database, showing statistics about accesses to that specific table. See pg_stat_all_tables for details.
+relid: OID of a table
+schemaname: Name of the schema that this table is in
+relname: Name of this table
+seq_scan: Number of sequential scans initiated on this table
+seq_tup_read: Number of live rows fetched by sequential scans
+idx_scan: Number of index scans initiated on this table
+idx_tup_fetch: Number of live rows fetched by index scans
+n_tup_ins: Number of rows inserted
+n_tup_upd: Number of rows updated
+n_tup_del: Number of rows deleted
+n_tup_hot_upd: Number of rows HOT updated (i.e., with no separate index update required)
+n_live_tup: Estimated number of live rows
+n_dead_tup: Estimated number of dead rows
+last_vacuum: Last time at which this table was manually vacuumed (not counting VACUUM FULL)
+last_autovacuum: Last time at which this table was vacuumed by the autovacuum daemon
+last_analyze: Last time at which this table was manually analyzed
+last_autoanalyze: Last time at which this table was analyzed by the autovacuum daemon
+vacuum_count: Number of times this table has been manually vacuumed (not counting VACUUM FULL)
+autovacuum_count: Number of times this table has been vacuumed by the autovacuum daemon
+analyze_count: Number of times this table has been manually analyzed
+autoanalyze_count: Number of times this table has been analyzed by the autovacuum daemon
changedpg_stat_bgwriter
9.1 → 9.2
+ checkpoint_write_time  double precision
+ checkpoint_sync_time  double precision
changedpg_stat_database
9.1 → 9.2
+ temp_files  bigint
+ temp_bytes  bigint
+ deadlocks  bigint
+ blk_read_time  double precision
+ blk_write_time  double precision
rewordedpg_stat_database_conflicts
--- 9.1
+++ 9.2
@@ -1 +1,8 @@
-(relation) One row per database, showing database OID, database name and the number of queries that have been canceled in this database due to dropped tablespaces, lock timeouts, old snapshots, pinned buffers and deadlocks. Will only contain information on standby servers, since conflicts do not occur on master servers.
+(relation) One row per database, showing database-wide statistics about query cancels due to conflict with recovery on standby servers. See pg_stat_database_conflicts for details.
+datid: OID of a database
+datname: Name of this database
+confl_tablespace: Number of queries in this database that have been canceled due to dropped tablespaces
+confl_lock: Number of queries in this database that have been canceled due to lock timeouts
+confl_snapshot: Number of queries in this database that have been canceled due to old snapshots
+confl_bufferpin: Number of queries in this database that have been canceled due to pinned buffers
+confl_deadlock: Number of queries in this database that have been canceled due to deadlocks
changedpg_stat_replication
9.1 → 9.2
+ pid  integer
- procpid  integer
changedpg_stat_user_functions
9.1 → 9.2
~ self_time  bigint → double precision
~ total_time  bigint → double precision
changedpg_stat_xact_user_functions
9.1 → 9.2
~ self_time  bigint → double precision
~ total_time  bigint → double precision
rewordedpg_statio_all_indexes
--- 9.1
+++ 9.2
@@ -1 +1,8 @@
-(relation) For each index in the current database, the table and index OID, schema, table and index name, numbers of disk blocks read and buffer hits in that index.
+(relation) One row for each index in the current database, showing statistics about I/O on that specific index. See pg_statio_all_indexes for details.
+relid: OID of the table for this index
+indexrelid: OID of this index
+schemaname: Name of the schema this index is in
+relname: Name of the table for this index
+indexrelname: Name of this index
+idx_blks_read: Number of disk blocks read from this index
+idx_blks_hit: Number of buffer hits in this index
rewordedpg_statio_all_sequences
--- 9.1
+++ 9.2
@@ -1 +1,6 @@
-(relation) For each sequence object in the current database, the sequence OID, schema and sequence name, numbers of disk blocks read and buffer hits in that sequence.
+(relation) One row for each sequence in the current database, showing statistics about I/O on that specific sequence. See pg_statio_all_sequences for details.
+relid: OID of a sequence
+schemaname: Name of the schema this sequence is in
+relname: Name of this sequence
+blks_read: Number of disk blocks read from this sequence
+blks_hit: Number of buffer hits in this sequence
rewordedpg_statio_all_tables
--- 9.1
+++ 9.2
@@ -1 +1,12 @@
-(relation) For each table in the current database (including TOAST tables), the table OID, schema and table name, number of disk blocks read from that table, number of buffer hits, numbers of disk blocks read and buffer hits in all indexes of that table, numbers of disk blocks read and buffer hits from that table's auxiliary TOAST table (if any), and numbers of disk blocks read and buffer hits for the TOAST table's index.
+(relation) One row for each table in the current database, showing statistics about I/O on that specific table. See pg_statio_all_tables for details.
+relid: OID of a table
+schemaname: Name of the schema that this table is in
+relname: Name of this table
+heap_blks_read: Number of disk blocks read from this table
+heap_blks_hit: Number of buffer hits in this table
+idx_blks_read: Number of disk blocks read from all indexes on this table
+idx_blks_hit: Number of buffer hits in all indexes on this table
+toast_blks_read: Number of disk blocks read from this table's TOAST table (if any)
+toast_blks_hit: Number of buffer hits in this table's TOAST table (if any)
+tidx_blks_read: Number of disk blocks read from this table's TOAST table index (if any)
+tidx_blks_hit: Number of buffer hits in this table's TOAST table index (if any)
changedpg_statistic
9.1 → 9.2
+ stakind5  smallint
+ staop5  oid
+ stanumbers5  real[]
+ stavalues5  anyarray
changedpg_stats
9.1 → 9.2
+ most_common_elems  anyarray
+ most_common_elem_freqs  real[]
+ elem_count_histogram  real[]
changedpg_tablespace
9.1 → 9.2
- spclocation  text
changedpg_type
9.1 → 9.2
+ typacl  aclitem[]
rewordedpg_user
--- 9.1
+++ 9.2
@@ -1,9 +1,10 @@
 (relation) The view pg_user provides access to information about database users. This is simply a publicly readable view of pg_shadow that blanks out the password field.
 usename: User name
-usesysid: User ID (arbitrary number used to reference this user)
+usesysid: ID of this user
 usecreatedb: User can create databases
 usesuper: User is a superuser
 usecatupd: User can update system catalogs. (Even a superuser cannot do this unless this column is true.)
+userepl: User can initiate streaming replication and put the system in and out of backup mode.
 passwd: Not the password (always reads as ********)
 valuntil: Password expiry time (only used for password authentication)
 useconfig: Session defaults for run-time configuration variables
= userepl  (now listed by the manual; the column exists in both releases)
rewordedpg_user_mappings
--- 9.1
+++ 9.2
@@ -4,4 +4,4 @@
 srvname: Name of the foreign server
 umuser: OID of the local role being mapped, 0 if the user mapping is public
 usename: Name of the local user to be mapped
-umoptions: User mapping specific options, as "keyword=value" strings, if the current user is the owner of the foreign server, else null
+umoptions: User mapping specific options, as "keyword=value" strings