pg_catcheck

pg_catcheck

pg_catcheck : Diagnosing system catalog corruption

Overview

ID Extension Package Version Category License Language
5160
pg_catcheck
pg_catcheck
1.6.0
ADMIN
BSD 3-Clause
C
Attribute Has Binary Has Library Need Load Has DDL Relocatable Trusted
--s-d--
No
Yes
No
Yes
no
no
Relationships
See Also
pg_checksums
amcheck
pg_surgery
pageinspect
pg_visibility
pgstattuple
ddlx
pgdd

Packages

Type Repo Version PG Major Compatibility Package Pattern Dependencies
EXT
PGDG
1.6.0
18
17
16
15
14
pg_catcheck -
RPM
PGDG
1.6.0
18
17
16
15
14
pg_catcheck_$v -
DEB
PGDG
1.6.0
18
17
16
15
14
postgresql-$v-pg-catcheck -
Linux / PG PG18 PG17 PG16 PG15 PG14
el8.x86_64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
el8.aarch64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
el9.x86_64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
el9.aarch64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
el10.x86_64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
el10.aarch64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
d12.x86_64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
d12.aarch64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
d13.x86_64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
d13.aarch64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
u22.x86_64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
u22.aarch64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
u24.x86_64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
u24.aarch64
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
PGDG 1.6.0
Package Version OS ORG SIZE File URL
pg_catcheck_18 1.6.0 el8.x86_64 pgdg 43.4 KiB pg_catcheck_18-1.6.0-3PGDG.rhel8.x86_64.rpm
pg_catcheck_18 1.6.0 el8.aarch64 pgdg 42.6 KiB pg_catcheck_18-1.6.0-3PGDG.rhel8.aarch64.rpm
pg_catcheck_18 1.6.0 el9.x86_64 pgdg 37.8 KiB pg_catcheck_18-1.6.0-3PGDG.rhel9.x86_64.rpm
pg_catcheck_18 1.6.0 el9.aarch64 pgdg 37.2 KiB pg_catcheck_18-1.6.0-3PGDG.rhel9.aarch64.rpm
pg_catcheck_18 1.6.0 el10.x86_64 pgdg 38.9 KiB pg_catcheck_18-1.6.0-3PGDG.rhel10.x86_64.rpm
pg_catcheck_18 1.6.0 el10.aarch64 pgdg 38.6 KiB pg_catcheck_18-1.6.0-3PGDG.rhel10.aarch64.rpm
postgresql-18-pg-catcheck 1.6.0 d12.x86_64 pgdg 34.4 KiB postgresql-18-pg-catcheck_1.6.0-2.pgdg12+1_amd64.deb
postgresql-18-pg-catcheck 1.6.0 d12.aarch64 pgdg 33.3 KiB postgresql-18-pg-catcheck_1.6.0-2.pgdg12+1_arm64.deb
postgresql-18-pg-catcheck 1.6.0 d13.x86_64 pgdg 34.6 KiB postgresql-18-pg-catcheck_1.6.0-2.pgdg13+1_amd64.deb
postgresql-18-pg-catcheck 1.6.0 d13.aarch64 pgdg 33.7 KiB postgresql-18-pg-catcheck_1.6.0-2.pgdg13+1_arm64.deb
postgresql-18-pg-catcheck 1.6.0 u22.x86_64 pgdg 35.4 KiB postgresql-18-pg-catcheck_1.6.0-2.pgdg22.04+1_amd64.deb
postgresql-18-pg-catcheck 1.6.0 u22.aarch64 pgdg 33.3 KiB postgresql-18-pg-catcheck_1.6.0-2.pgdg22.04+1_arm64.deb
postgresql-18-pg-catcheck 1.6.0 u24.x86_64 pgdg 35.3 KiB postgresql-18-pg-catcheck_1.6.0-2.pgdg24.04+1_amd64.deb
postgresql-18-pg-catcheck 1.6.0 u24.aarch64 pgdg 33.6 KiB postgresql-18-pg-catcheck_1.6.0-2.pgdg24.04+1_arm64.deb
Package Version OS ORG SIZE File URL
pg_catcheck_17 1.6.0 el8.x86_64 pgdg 43.3 KiB pg_catcheck_17-1.6.0-1PGDG.rhel8.x86_64.rpm
pg_catcheck_17 1.5.0 el8.x86_64 pgdg 43.1 KiB pg_catcheck_17-1.5.0-1PGDG.rhel8.x86_64.rpm
pg_catcheck_17 1.6.0 el8.aarch64 pgdg 42.5 KiB pg_catcheck_17-1.6.0-1PGDG.rhel8.aarch64.rpm
pg_catcheck_17 1.5.0 el8.aarch64 pgdg 42.4 KiB pg_catcheck_17-1.5.0-1PGDG.rhel8.aarch64.rpm
pg_catcheck_17 1.6.0 el9.x86_64 pgdg 37.9 KiB pg_catcheck_17-1.6.0-1PGDG.rhel9.x86_64.rpm
pg_catcheck_17 1.5.0 el9.x86_64 pgdg 37.7 KiB pg_catcheck_17-1.5.0-1PGDG.rhel9.x86_64.rpm
pg_catcheck_17 1.6.0 el9.aarch64 pgdg 37.3 KiB pg_catcheck_17-1.6.0-1PGDG.rhel9.aarch64.rpm
pg_catcheck_17 1.5.0 el9.aarch64 pgdg 37.1 KiB pg_catcheck_17-1.5.0-1PGDG.rhel9.aarch64.rpm
pg_catcheck_17 1.6.0 el10.x86_64 pgdg 38.9 KiB pg_catcheck_17-1.6.0-3PGDG.rhel10.x86_64.rpm
pg_catcheck_17 1.6.0 el10.aarch64 pgdg 38.6 KiB pg_catcheck_17-1.6.0-3PGDG.rhel10.aarch64.rpm
postgresql-17-pg-catcheck 1.6.0 d12.x86_64 pgdg 34.4 KiB postgresql-17-pg-catcheck_1.6.0-2.pgdg12+1_amd64.deb
postgresql-17-pg-catcheck 1.6.0 d12.aarch64 pgdg 33.4 KiB postgresql-17-pg-catcheck_1.6.0-2.pgdg12+1_arm64.deb
postgresql-17-pg-catcheck 1.6.0 d13.x86_64 pgdg 34.8 KiB postgresql-17-pg-catcheck_1.6.0-2.pgdg13+1_amd64.deb
postgresql-17-pg-catcheck 1.6.0 d13.aarch64 pgdg 33.7 KiB postgresql-17-pg-catcheck_1.6.0-2.pgdg13+1_arm64.deb
postgresql-17-pg-catcheck 1.6.0 u22.x86_64 pgdg 35.6 KiB postgresql-17-pg-catcheck_1.6.0-2.pgdg22.04+1_amd64.deb
postgresql-17-pg-catcheck 1.6.0 u22.aarch64 pgdg 33.6 KiB postgresql-17-pg-catcheck_1.6.0-2.pgdg22.04+1_arm64.deb
postgresql-17-pg-catcheck 1.6.0 u24.x86_64 pgdg 35.3 KiB postgresql-17-pg-catcheck_1.6.0-2.pgdg24.04+1_amd64.deb
postgresql-17-pg-catcheck 1.6.0 u24.aarch64 pgdg 33.7 KiB postgresql-17-pg-catcheck_1.6.0-2.pgdg24.04+1_arm64.deb
Package Version OS ORG SIZE File URL
pg_catcheck_16 1.6.0 el8.x86_64 pgdg 43.3 KiB pg_catcheck_16-1.6.0-1PGDG.rhel8.x86_64.rpm
pg_catcheck_16 1.4.0 el8.x86_64 pgdg 43.1 KiB pg_catcheck_16-1.4.0-1PGDG.rhel8.x86_64.rpm
pg_catcheck_16 1.6.0 el8.aarch64 pgdg 42.6 KiB pg_catcheck_16-1.6.0-1PGDG.rhel8.aarch64.rpm
pg_catcheck_16 1.4.0 el8.aarch64 pgdg 42.3 KiB pg_catcheck_16-1.4.0-1PGDG.rhel8.aarch64.rpm
pg_catcheck_16 1.6.0 el9.x86_64 pgdg 37.9 KiB pg_catcheck_16-1.6.0-1PGDG.rhel9.x86_64.rpm
pg_catcheck_16 1.4.0 el9.x86_64 pgdg 37.5 KiB pg_catcheck_16-1.4.0-1PGDG.rhel9.x86_64.rpm
pg_catcheck_16 1.6.0 el9.aarch64 pgdg 37.3 KiB pg_catcheck_16-1.6.0-1PGDG.rhel9.aarch64.rpm
pg_catcheck_16 1.4.0 el9.aarch64 pgdg 36.9 KiB pg_catcheck_16-1.4.0-1PGDG.rhel9.aarch64.rpm
pg_catcheck_16 1.6.0 el10.x86_64 pgdg 38.9 KiB pg_catcheck_16-1.6.0-3PGDG.rhel10.x86_64.rpm
pg_catcheck_16 1.6.0 el10.aarch64 pgdg 38.6 KiB pg_catcheck_16-1.6.0-3PGDG.rhel10.aarch64.rpm
postgresql-16-pg-catcheck 1.6.0 d12.x86_64 pgdg 34.4 KiB postgresql-16-pg-catcheck_1.6.0-2.pgdg12+1_amd64.deb
postgresql-16-pg-catcheck 1.6.0 d12.aarch64 pgdg 33.4 KiB postgresql-16-pg-catcheck_1.6.0-2.pgdg12+1_arm64.deb
postgresql-16-pg-catcheck 1.6.0 d13.x86_64 pgdg 34.8 KiB postgresql-16-pg-catcheck_1.6.0-2.pgdg13+1_amd64.deb
postgresql-16-pg-catcheck 1.6.0 d13.aarch64 pgdg 34.1 KiB postgresql-16-pg-catcheck_1.6.0-2.pgdg13+1_arm64.deb
postgresql-16-pg-catcheck 1.6.0 u22.x86_64 pgdg 35.5 KiB postgresql-16-pg-catcheck_1.6.0-2.pgdg22.04+1_amd64.deb
postgresql-16-pg-catcheck 1.6.0 u22.aarch64 pgdg 33.6 KiB postgresql-16-pg-catcheck_1.6.0-2.pgdg22.04+1_arm64.deb
postgresql-16-pg-catcheck 1.6.0 u24.x86_64 pgdg 35.3 KiB postgresql-16-pg-catcheck_1.6.0-2.pgdg24.04+1_amd64.deb
postgresql-16-pg-catcheck 1.6.0 u24.aarch64 pgdg 33.7 KiB postgresql-16-pg-catcheck_1.6.0-2.pgdg24.04+1_arm64.deb
Package Version OS ORG SIZE File URL
pg_catcheck_15 1.6.0 el8.x86_64 pgdg 43.2 KiB pg_catcheck_15-1.6.0-1PGDG.rhel8.x86_64.rpm
pg_catcheck_15 1.3.0 el8.x86_64 pgdg 42.8 KiB pg_catcheck_15-1.3.0-1.rhel8.x86_64.rpm
pg_catcheck_15 1.6.0 el8.aarch64 pgdg 42.5 KiB pg_catcheck_15-1.6.0-1PGDG.rhel8.aarch64.rpm
pg_catcheck_15 1.3.0 el8.aarch64 pgdg 41.9 KiB pg_catcheck_15-1.3.0-1.rhel8.aarch64.rpm
pg_catcheck_15 1.6.0 el9.x86_64 pgdg 37.9 KiB pg_catcheck_15-1.6.0-1PGDG.rhel9.x86_64.rpm
pg_catcheck_15 1.3.0 el9.x86_64 pgdg 37.7 KiB pg_catcheck_15-1.3.0-1.rhel9.x86_64.rpm
pg_catcheck_15 1.6.0 el9.aarch64 pgdg 37.3 KiB pg_catcheck_15-1.6.0-1PGDG.rhel9.aarch64.rpm
pg_catcheck_15 1.3.0 el9.aarch64 pgdg 37.0 KiB pg_catcheck_15-1.3.0-1.rhel9.aarch64.rpm
pg_catcheck_15 1.6.0 el10.x86_64 pgdg 38.9 KiB pg_catcheck_15-1.6.0-3PGDG.rhel10.x86_64.rpm
pg_catcheck_15 1.6.0 el10.aarch64 pgdg 38.6 KiB pg_catcheck_15-1.6.0-3PGDG.rhel10.aarch64.rpm
postgresql-15-pg-catcheck 1.6.0 d12.x86_64 pgdg 34.4 KiB postgresql-15-pg-catcheck_1.6.0-2.pgdg12+1_amd64.deb
postgresql-15-pg-catcheck 1.6.0 d12.aarch64 pgdg 33.4 KiB postgresql-15-pg-catcheck_1.6.0-2.pgdg12+1_arm64.deb
postgresql-15-pg-catcheck 1.6.0 d13.x86_64 pgdg 34.8 KiB postgresql-15-pg-catcheck_1.6.0-2.pgdg13+1_amd64.deb
postgresql-15-pg-catcheck 1.6.0 d13.aarch64 pgdg 33.9 KiB postgresql-15-pg-catcheck_1.6.0-2.pgdg13+1_arm64.deb
postgresql-15-pg-catcheck 1.6.0 u22.x86_64 pgdg 35.5 KiB postgresql-15-pg-catcheck_1.6.0-2.pgdg22.04+1_amd64.deb
postgresql-15-pg-catcheck 1.6.0 u22.aarch64 pgdg 33.6 KiB postgresql-15-pg-catcheck_1.6.0-2.pgdg22.04+1_arm64.deb
postgresql-15-pg-catcheck 1.6.0 u24.x86_64 pgdg 35.2 KiB postgresql-15-pg-catcheck_1.6.0-2.pgdg24.04+1_amd64.deb
postgresql-15-pg-catcheck 1.6.0 u24.aarch64 pgdg 33.6 KiB postgresql-15-pg-catcheck_1.6.0-2.pgdg24.04+1_arm64.deb
Package Version OS ORG SIZE File URL
pg_catcheck_14 1.6.0 el8.x86_64 pgdg 41.6 KiB pg_catcheck_14-1.6.0-1PGDG.rhel8.x86_64.rpm
pg_catcheck_14 1.3.0 el8.x86_64 pgdg 41.0 KiB pg_catcheck_14-1.3.0-1.rhel8.x86_64.rpm
pg_catcheck_14 1.2.0 el8.x86_64 pgdg 40.9 KiB pg_catcheck_14-1.2.0-3.rhel8.x86_64.rpm
pg_catcheck_14 1.6.0 el8.aarch64 pgdg 41.2 KiB pg_catcheck_14-1.6.0-1PGDG.rhel8.aarch64.rpm
pg_catcheck_14 1.3.0 el8.aarch64 pgdg 40.6 KiB pg_catcheck_14-1.3.0-1.rhel8.aarch64.rpm
pg_catcheck_14 1.6.0 el9.x86_64 pgdg 37.6 KiB pg_catcheck_14-1.6.0-1PGDG.rhel9.x86_64.rpm
pg_catcheck_14 1.3.0 el9.x86_64 pgdg 37.7 KiB pg_catcheck_14-1.3.0-1.rhel9.x86_64.rpm
pg_catcheck_14 1.6.0 el9.aarch64 pgdg 37.0 KiB pg_catcheck_14-1.6.0-1PGDG.rhel9.aarch64.rpm
pg_catcheck_14 1.3.0 el9.aarch64 pgdg 37.1 KiB pg_catcheck_14-1.3.0-1.rhel9.aarch64.rpm
pg_catcheck_14 1.6.0 el10.x86_64 pgdg 38.4 KiB pg_catcheck_14-1.6.0-3PGDG.rhel10.x86_64.rpm
pg_catcheck_14 1.6.0 el10.aarch64 pgdg 38.1 KiB pg_catcheck_14-1.6.0-3PGDG.rhel10.aarch64.rpm
postgresql-14-pg-catcheck 1.6.0 d12.x86_64 pgdg 33.9 KiB postgresql-14-pg-catcheck_1.6.0-2.pgdg12+1_amd64.deb
postgresql-14-pg-catcheck 1.6.0 d12.aarch64 pgdg 32.9 KiB postgresql-14-pg-catcheck_1.6.0-2.pgdg12+1_arm64.deb
postgresql-14-pg-catcheck 1.6.0 d13.x86_64 pgdg 34.0 KiB postgresql-14-pg-catcheck_1.6.0-2.pgdg13+1_amd64.deb
postgresql-14-pg-catcheck 1.6.0 d13.aarch64 pgdg 33.2 KiB postgresql-14-pg-catcheck_1.6.0-2.pgdg13+1_arm64.deb
postgresql-14-pg-catcheck 1.6.0 u22.x86_64 pgdg 34.6 KiB postgresql-14-pg-catcheck_1.6.0-2.pgdg22.04+1_amd64.deb
postgresql-14-pg-catcheck 1.6.0 u22.aarch64 pgdg 33.0 KiB postgresql-14-pg-catcheck_1.6.0-2.pgdg22.04+1_arm64.deb
postgresql-14-pg-catcheck 1.6.0 u24.x86_64 pgdg 34.5 KiB postgresql-14-pg-catcheck_1.6.0-2.pgdg24.04+1_amd64.deb
postgresql-14-pg-catcheck 1.6.0 u24.aarch64 pgdg 33.2 KiB postgresql-14-pg-catcheck_1.6.0-2.pgdg24.04+1_arm64.deb

Source

Install

Make sure PGDG repo available:

pig repo add pgdg -u # add pgdg repo and update cache

Install this extension with pig:

pig install pg_catcheck;# install via package name, for the active PG version  pig install pg_catcheck -v 18; # install for PG 18 pig install pg_catcheck -v 17; # install for PG 17 pig install pg_catcheck -v 16; # install for PG 16 pig install pg_catcheck -v 15; # install for PG 15 pig install pg_catcheck -v 14; # install for PG 14

Create this extension with:

CREATE EXTENSION pg_catcheck;

Usage

pg_catcheck: Diagnosing system catalog corruption

pg_catcheck is a command-line tool that checks PostgreSQL system catalogs for corruption by verifying cross-references between catalog tables. It accepts the same connection parameters as other PostgreSQL utilities (-h, -p, -U, -d).

Basic Usage

pg_catcheck -h localhost -p 5432 -d mydb

Normal output when no issues are found:

progress: done (0 inconsistencies, 0 warnings, 0 errors)

Example Output with Corruption

notice: pg_class row has invalid relnamespace "24580": no matching entry in pg_namespace row identity: oid="24581" relname="foo" relkind="r" notice: pg_type row has invalid typnamespace "24580": no matching entry in pg_namespace row identity: oid="24583" progress: done (4 inconsistencies, 0 warnings, 0 errors)

Result Categories

  • Inconsistencies: logical problems in catalog cross-references (e.g., dangling OID references)
  • Warnings: more serious issues
  • Errors: inability to read catalogs

Options

pg_catcheck --help # Full list of options pg_catcheck --select-from-relations # Also check for missing/inaccessible relation files

Connection

Supports the same options as psql: -h host, -p port, -U user, -d database, or connection strings/URLs.

Last updated on