49.3. pg_am

The catalog pg_am stores information about index access methods. There is one row for each index access method supported by the system. The contents of this catalog are discussed in detail in Chapter 58.

Table 49-3. pg_am Columns

NameTypeReferencesDescription
oidoid Row identifier (hidden attribute; must be explicitly selected)
amnamename Name of the access method
amstrategiesint2 Number of operator strategies for this access method, or zero if access method does not have a fixed set of operator strategies
amsupportint2 Number of support routines for this access method
amcanorderbool Does the access method support ordered scans sorted by the indexed column's value?
amcanorderbyopbool Does the access method support ordered scans sorted by the result of an operator on the indexed column?
amcanbackwardbool Does the access method support backward scanning?
amcanuniquebool Does the access method support unique indexes?
amcanmulticolbool Does the access method support multicolumn indexes?
amoptionalkeybool Does the access method support a scan without any constraint for the first index column?
amsearcharraybool Does the access method support ScalarArrayOpExpr searches?
amsearchnullsbool Does the access method support IS NULL/NOT NULL searches?
amstoragebool Can index storage data type differ from column data type?
amclusterablebool Can an index of this type be clustered on?
ampredlocksbool Does an index of this type manage fine-grained predicate locks?
amkeytypeoidpg_type.oidType of data stored in index, or zero if not a fixed type
aminsertregprocpg_proc.oid"Insert this tuple" function
ambeginscanregprocpg_proc.oid"Prepare for index scan" function
amgettupleregprocpg_proc.oid"Next valid tuple" function, or zero if none
amgetbitmapregprocpg_proc.oid"Fetch all valid tuples" function, or zero if none
amrescanregprocpg_proc.oid"(Re)start index scan" function
amendscanregprocpg_proc.oid"Clean up after index scan" function
ammarkposregprocpg_proc.oid"Mark current scan position" function
amrestrposregprocpg_proc.oid"Restore marked scan position" function
ambuildregprocpg_proc.oid"Build new index" function
ambuildemptyregprocpg_proc.oid"Build empty index" function
ambulkdeleteregprocpg_proc.oidBulk-delete function
amvacuumcleanupregprocpg_proc.oidPost-VACUUM cleanup function
amcanreturnregprocpg_proc.oidFunction to check whether an index column supports index-only scans. Can be zero if index-only scans are never supported.
amcostestimateregprocpg_proc.oidFunction to estimate cost of an index scan
amoptionsregprocpg_proc.oidFunction to parse and validate reloptions for an index