# System Catalog Schema

The [Postgres `pg_catalog` schema](https://www.postgresql.org/docs/15/catalogs.html) provides access to a variety of database metadata useful for inspecting your database and also used by database tooling. Doltgres provides a subset of the data available in `pg_catalog`, as described below. In general, all tables from Postgres's `pg_catalog` exist, with the correct schema, but not all data is populated. If you need support for `pg_catalog` metadata that is available in Postgres, but not yet available in Doltgres, please [open a GitHub issue](https://github.com/dolthub/doltgresql/issues) to let us know what you need.

### Tables

| Table                                                                                                       | Parses | Populated |
| ----------------------------------------------------------------------------------------------------------- | ------ | --------- |
| [pg\_aggregate](https://www.postgresql.org/docs/current/catalog-pg-aggregate.html)                          | ✅      | ❌         |
| [pg\_am](https://www.postgresql.org/docs/current/catalog-pg-am.html)                                        | ✅      | ❌         |
| [pg\_amop](https://www.postgresql.org/docs/current/catalog-pg-amop.html)                                    | ✅      | ❌         |
| [pg\_amproc](https://www.postgresql.org/docs/current/catalog-pg-amproc.html)                                | ✅      | ❌         |
| [pg\_attrdef](https://www.postgresql.org/docs/current/catalog-pg-attrdef.html)                              | ✅      | 🟠        |
| [pg\_attribute](https://www.postgresql.org/docs/current/catalog-pg-attribute.html)                          | ✅      | 🟠        |
| [pg\_auth\_members](https://www.postgresql.org/docs/current/catalog-pg-auth-members.html)                   | ✅      | ❌         |
| [pg\_authid](https://www.postgresql.org/docs/current/catalog-pg-authid.html)                                | ✅      | ❌         |
| [pg\_cast](https://www.postgresql.org/docs/current/catalog-pg-cast.html)                                    | ✅      | ❌         |
| [pg\_class](https://www.postgresql.org/docs/current/catalog-pg-class.html)                                  | ✅      | 🟠        |
| [pg\_collation](https://www.postgresql.org/docs/current/catalog-pg-collation.html)                          | ✅      | ❌         |
| [pg\_constraint](https://www.postgresql.org/docs/current/catalog-pg-constraint.html)                        | ✅      | 🟠        |
| [pg\_conversion](https://www.postgresql.org/docs/current/catalog-pg-conversion.html)                        | ✅      | ❌         |
| [pg\_database](https://www.postgresql.org/docs/current/catalog-pg-database.html)                            | ✅      | 🟠        |
| [pg\_db\_role\_setting](https://www.postgresql.org/docs/current/catalog-pg-db-role-setting.html)            | ✅      | ❌         |
| [pg\_default\_acl](https://www.postgresql.org/docs/current/catalog-pg-default-acl.html)                     | ✅      | ❌         |
| [pg\_depend](https://www.postgresql.org/docs/current/catalog-pg-depend.html)                                | ✅      | ❌         |
| [pg\_description](https://www.postgresql.org/docs/current/catalog-pg-description.html)                      | ✅      | ❌         |
| [pg\_enum](https://www.postgresql.org/docs/current/catalog-pg-enum.html)                                    | ✅      | ❌         |
| [pg\_event\_trigger](https://www.postgresql.org/docs/current/catalog-pg-event-trigger.html)                 | ✅      | ❌         |
| [pg\_extension](https://www.postgresql.org/docs/current/catalog-pg-extension.html)                          | ✅      | ❌         |
| [pg\_foreign\_data\_wrapper](https://www.postgresql.org/docs/current/catalog-pg-foreign-data-wrapper.html)  | ✅      | ❌         |
| [pg\_foreign\_server](https://www.postgresql.org/docs/current/catalog-pg-foreign-server.html)               | ✅      | ❌         |
| [pg\_foreign\_table](https://www.postgresql.org/docs/current/catalog-pg-foreign-table.html)                 | ✅      | ❌         |
| [pg\_index](https://www.postgresql.org/docs/current/catalog-pg-index.html)                                  | ✅      | 🟠        |
| [pg\_inherits](https://www.postgresql.org/docs/current/catalog-pg-inherits.html)                            | ✅      | ❌         |
| [pg\_init\_privs](https://www.postgresql.org/docs/current/catalog-pg-init-privs.html)                       | ✅      | ❌         |
| [pg\_language](https://www.postgresql.org/docs/current/catalog-pg-language.html)                            | ✅      | ❌         |
| [pg\_largeobject](https://www.postgresql.org/docs/current/catalog-pg-largeobject.html)                      | ✅      | ❌         |
| [pg\_largeobject\_metadata](https://www.postgresql.org/docs/current/catalog-pg-largeobject-metadata.html)   | ✅      | ❌         |
| [pg\_namespace](https://www.postgresql.org/docs/current/catalog-pg-namespace.html)                          | ✅      | 🟠        |
| [pg\_opclass](https://www.postgresql.org/docs/current/catalog-pg-opclass.html)                              | ✅      | ❌         |
| [pg\_opfamily](https://www.postgresql.org/docs/current/catalog-pg-opfamily.html)                            | ✅      | ❌         |
| [pg\_parameter\_acl](https://www.postgresql.org/docs/current/catalog-pg-parameter-acl.html)                 | ✅      | ❌         |
| [pg\_partitioned\_table](https://www.postgresql.org/docs/current/catalog-pg-partitioned-table.html)         | ✅      | ❌         |
| [pg\_policy](https://www.postgresql.org/docs/current/catalog-pg-policy.html)                                | ✅      | ❌         |
| [pg\_proc](https://www.postgresql.org/docs/current/catalog-pg-proc.html)                                    | ✅      | ❌         |
| [pg\_publication](https://www.postgresql.org/docs/current/catalog-pg-publication.html)                      | ✅      | ❌         |
| [pg\_publication\_namespace](https://www.postgresql.org/docs/current/catalog-pg-publication-namespace.html) | ✅      | ❌         |
| [pg\_publication\_rel](https://www.postgresql.org/docs/current/catalog-pg-publication-rel.html)             | ✅      | ❌         |
| [pg\_range](https://www.postgresql.org/docs/current/catalog-pg-range.html)                                  | ✅      | ❌         |
| [pg\_replication\_origin](https://www.postgresql.org/docs/current/catalog-pg-replication-origin.html)       | ✅      | ❌         |
| [pg\_rewrite](https://www.postgresql.org/docs/current/catalog-pg-rewrite.html)                              | ✅      | ❌         |
| [pg\_seclabel](https://www.postgresql.org/docs/current/catalog-pg-seclabel.html)                            | ✅      | ❌         |
| [pg\_sequence](https://www.postgresql.org/docs/current/catalog-pg-sequence.html)                            | ✅      | ✅         |
| [pg\_shdepend](https://www.postgresql.org/docs/current/catalog-pg-shdepend.html)                            | ✅      | ❌         |
| [pg\_shdescription](https://www.postgresql.org/docs/current/catalog-pg-shdescription.html)                  | ✅      | ❌         |
| [pg\_shseclabel](https://www.postgresql.org/docs/current/catalog-pg-shseclabel.html)                        | ✅      | ❌         |
| [pg\_statistic](https://www.postgresql.org/docs/current/catalog-pg-statistic.html)                          | ✅      | ❌         |
| [pg\_statistic\_ext](https://www.postgresql.org/docs/current/catalog-pg-statistic-ext.html)                 | ✅      | ❌         |
| [pg\_statistic\_ext\_data](https://www.postgresql.org/docs/current/catalog-pg-statistic-ext-data.html)      | ✅      | ❌         |
| [pg\_subscription](https://www.postgresql.org/docs/current/catalog-pg-subscription.html)                    | ✅      | ❌         |
| [pg\_subscription\_rel](https://www.postgresql.org/docs/current/catalog-pg-subscription-rel.html)           | ✅      | ❌         |
| [pg\_tablespace](https://www.postgresql.org/docs/current/catalog-pg-tablespace.html)                        | ✅      | ❌         |
| [pg\_transform](https://www.postgresql.org/docs/current/catalog-pg-transform.html)                          | ✅      | ❌         |
| [pg\_trigger](https://www.postgresql.org/docs/current/catalog-pg-trigger.html)                              | ✅      | ❌         |
| [pg\_ts\_config](https://www.postgresql.org/docs/current/catalog-pg-ts-config.html)                         | ✅      | ❌         |
| [pg\_ts\_config\_map](https://www.postgresql.org/docs/current/catalog-pg-ts-config-map.html)                | ✅      | ❌         |
| [pg\_ts\_dict](https://www.postgresql.org/docs/current/catalog-pg-ts-dict.html)                             | ✅      | ❌         |
| [pg\_ts\_parser](https://www.postgresql.org/docs/current/catalog-pg-ts-parser.html)                         | ✅      | ❌         |
| [pg\_ts\_template](https://www.postgresql.org/docs/current/catalog-pg-ts-template.html)                     | ✅      | ❌         |
| [pg\_type](https://www.postgresql.org/docs/current/catalog-pg-type.html)                                    | ✅      | 🟠        |
| [pg\_user\_mapping](https://www.postgresql.org/docs/current/catalog-pg-user-mapping.html)                   | ✅      | ❌         |

### Views

| View                                                                                                                                      | Parses | Populated |
| ----------------------------------------------------------------------------------------------------------------------------------------- | ------ | --------- |
| [pg\_available\_extension\_versions](https://www.postgresql.org/docs/current/view-pg-available-extension-versions.html)                   | ✅      | ❌         |
| [pg\_available\_extensions](https://www.postgresql.org/docs/current/view-pg-available-extensions.html)                                    | ✅      | ❌         |
| [pg\_backend\_memory\_contexts](https://www.postgresql.org/docs/current/view-pg-backend-memory-contexts.html)                             | ✅      | ❌         |
| [pg\_config](https://www.postgresql.org/docs/current/view-pg-config.html)                                                                 | ✅      | ❌         |
| [pg\_cursors](https://www.postgresql.org/docs/current/view-pg-cursors.html)                                                               | ✅      | ❌         |
| [pg\_file\_settings](https://www.postgresql.org/docs/current/view-pg-file-settings.html)                                                  | ✅      | ❌         |
| [pg\_group](https://www.postgresql.org/docs/current/view-pg-group.html)                                                                   | ✅      | ❌         |
| [pg\_hba\_file\_rules](https://www.postgresql.org/docs/current/view-pg-hba-file-rules.html)                                               | ✅      | ❌         |
| [pg\_ident\_file\_mappings](https://www.postgresql.org/docs/current/view-pg-ident-file-mappings.html)                                     | ✅      | ❌         |
| [pg\_indexes](https://www.postgresql.org/docs/current/view-pg-indexes.html)                                                               | ✅      | 🟠        |
| [pg\_locks](https://www.postgresql.org/docs/current/view-pg-locks.html)                                                                   | ✅      | ❌         |
| [pg\_matviews](https://www.postgresql.org/docs/current/view-pg-matviews.html)                                                             | ✅      | ❌         |
| [pg\_policies](https://www.postgresql.org/docs/current/view-pg-policies.html)                                                             | ✅      | ❌         |
| [pg\_prepared\_statements](https://www.postgresql.org/docs/current/view-pg-prepared-statements.html)                                      | ✅      | ❌         |
| [pg\_prepared\_xacts](https://www.postgresql.org/docs/current/view-pg-prepared-xacts.html)                                                | ✅      | ❌         |
| [pg\_publication\_tables](https://www.postgresql.org/docs/current/view-pg-publication-tables.html)                                        | ✅      | ❌         |
| [pg\_replication\_origin\_status](https://www.postgresql.org/docs/current/view-pg-replication-origin-status.html)                         | ✅      | ❌         |
| [pg\_replication\_slots](https://www.postgresql.org/docs/current/view-pg-replication-slots.html)                                          | ✅      | ❌         |
| [pg\_roles](https://www.postgresql.org/docs/current/view-pg-roles.html)                                                                   | ✅      | ❌         |
| [pg\_rules](https://www.postgresql.org/docs/current/view-pg-rules.html)                                                                   | ✅      | ❌         |
| [pg\_seclabels](https://www.postgresql.org/docs/current/view-pg-seclabels.html)                                                           | ✅      | ❌         |
| [pg\_sequences](https://www.postgresql.org/docs/current/view-pg-sequences.html)                                                           | ✅      | ❌         |
| [pg\_settings](https://www.postgresql.org/docs/current/view-pg-settings.html)                                                             | ✅      | ❌         |
| [pg\_shadow](https://www.postgresql.org/docs/current/view-pg-shadow.html)                                                                 | ✅      | ❌         |
| [pg\_shmem\_allocations](https://www.postgresql.org/docs/current/view-pg-shmem-allocations.html)                                          | ✅      | ❌         |
| [pg\_stat\_activity](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ACTIVITY-VIEW)                      | ✅      | ❌         |
| [pg\_stat\_all\_indexes](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-INDEXES-VIEW)               | ✅      | ❌         |
| [pg\_stat\_all\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-TABLES-VIEW)                 | ✅      | ❌         |
| [pg\_stat\_archiver](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ARCHIVER-VIEW)                      | ✅      | ❌         |
| [pg\_stat\_bgwriter](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-BGWRITER-VIEW)                      | ✅      | ❌         |
| [pg\_stat\_database](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-VIEW)                      | ✅      | ❌         |
| [pg\_stat\_database\_conflicts](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-DATABASE-CONFLICTS-VIEW) | ✅      | ❌         |
| [pg\_stat\_gssapi](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-GSSAPI-VIEW)                          | ✅      | ❌         |
| [pg\_stat\_io](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-IO-VIEW)                                  | ✅      | ❌         |
| [pg\_stat\_progress\_analyze](https://www.postgresql.org/docs/current/progress-reporting.html#ANALYZE-PROGRESS-REPORTING)                 | ✅      | ❌         |
| [pg\_stat\_progress\_basebackup](https://www.postgresql.org/docs/current/progress-reporting.html#BASEBACKUP-PROGRESS-REPORTING)           | ✅      | ❌         |
| [pg\_stat\_progress\_cluster](https://www.postgresql.org/docs/current/progress-reporting.html#CLUSTER-PROGRESS-REPORTING)                 | ✅      | ❌         |
| [pg\_stat\_progress\_copy](https://www.postgresql.org/docs/current/progress-reporting.html#COPY-PROGRESS-REPORTING)                       | ✅      | ❌         |
| [pg\_stat\_progress\_create\_index](https://www.postgresql.org/docs/current/progress-reporting.html#CREATE-INDEX-PROGRESS-REPORTING)      | ✅      | ❌         |
| [pg\_stat\_progress\_vacuum](https://www.postgresql.org/docs/current/progress-reporting.html#VACUUM-PROGRESS-REPORTING)                   | ✅      | ❌         |
| [pg\_stat\_recovery\_prefetch](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-RECOVERY-PREFETCH)        | ✅      | ❌         |
| [pg\_stat\_replication](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-REPLICATION-VIEW)                | ✅      | ❌         |
| [pg\_stat\_replication\_slots](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-REPLICATION-SLOTS-VIEW)   | ✅      | ❌         |
| [pg\_stat\_slru](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-SLRU-VIEW)                              | ✅      | ❌         |
| [pg\_stat\_ssl](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-SSL-VIEW)                                | ✅      | ❌         |
| [pg\_stat\_subscription](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-SUBSCRIPTION)                   | ✅      | ❌         |
| [pg\_stat\_subscription\_stats](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-SUBSCRIPTION-STATS)      | ✅      | ❌         |
| [pg\_stat\_sys\_indexes](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-INDEXES-VIEW)               | ✅      | ❌         |
| [pg\_stat\_sys\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-TABLES-VIEW)                 | ✅      | ❌         |
| [pg\_stat\_user\_functions](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-USER-FUNCTIONS-VIEW)         | ✅      | ❌         |
| [pg\_stat\_user\_indexes](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-INDEXES-VIEW)              | ✅      | ❌         |
| [pg\_stat\_user\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-TABLES-VIEW)                | ✅      | ❌         |
| [pg\_stat\_wal](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-WAL-VIEW)                                | ✅      | ❌         |
| [pg\_stat\_wal\_receiver](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-WAL-RECEIVER-VIEW)             | ✅      | ❌         |
| [pg\_stat\_xact\_all\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-TABLES-VIEW)           | ✅      | ❌         |
| [pg\_stat\_xact\_sys\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-TABLES-VIEW)           | ✅      | ❌         |
| [pg\_stat\_xact\_user\_functions](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-USER-FUNCTIONS-VIEW)   | ✅      | ❌         |
| [pg\_stat\_xact\_user\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-ALL-TABLES-VIEW)          | ✅      | ❌         |
| [pg\_statio\_all\_indexes](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-INDEXES-VIEW)           | ✅      | ❌         |
| [pg\_statio\_all\_sequences](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-SEQUENCES-VIEW)       | ✅      | ❌         |
| [pg\_statio\_all\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-TABLES-VIEW)             | ✅      | ❌         |
| [pg\_statio\_sys\_indexes](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-INDEXES-VIEW)           | ✅      | ❌         |
| [pg\_statio\_sys\_sequences](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-SEQUENCES-VIEW)       | ✅      | ❌         |
| [pg\_statio\_sys\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-TABLES-VIEW)             | ✅      | ❌         |
| [pg\_statio\_user\_indexes](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-INDEXES-VIEW)          | ✅      | ❌         |
| [pg\_statio\_user\_sequences](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-SEQUENCES-VIEW)      | ✅      | ❌         |
| [pg\_statio\_user\_tables](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STATIO-ALL-TABLES-VIEW)            | ✅      | ❌         |
| [pg\_stats](https://www.postgresql.org/docs/current/view-pg-stats.html)                                                                   | ✅      | ❌         |
| [pg\_stats\_ext](https://www.postgresql.org/docs/current/view-pg-stats-ext.html)                                                          | ✅      | ❌         |
| [pg\_stats\_ext\_exprs](https://www.postgresql.org/docs/current/view-pg-stats-ext-exprs.html)                                             | ✅      | ❌         |
| [pg\_tables](https://www.postgresql.org/docs/current/view-pg-tables.html)                                                                 | ✅      | 🟠        |
| [pg\_timezone\_abbrevs](https://www.postgresql.org/docs/current/view-pg-timezone-abbrevs.html)                                            | ✅      | ❌         |
| [pg\_timezone\_names](https://www.postgresql.org/docs/current/view-pg-timezone-names.html)                                                | ✅      | ❌         |
| [pg\_user](https://www.postgresql.org/docs/current/view-pg-user.html)                                                                     | ✅      | ❌         |
| [pg\_user\_mappings](https://www.postgresql.org/docs/current/view-pg-user-mappings.html)                                                  | ✅      | ❌         |
| [pg\_views](https://www.postgresql.org/docs/current/view-pg-views.html)                                                                   | ✅      | 🟠        |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.doltgres.com/reference/sql-support/system-catalog-schema.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
