catalog-conventions

Manage PostgreSQL system catalog modifications with OID assignment and catversion updates.

Updated Jun 1, 2026
One-click install
npx skills add https://github.com/matejformanek/postgres-claude --skill catalog-conventions
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: catalog-conventions
Source: https://github.com/matejformanek/postgres-claude/tree/main/.claude/skills/catalog-conventions
Command: npx skills add https://github.com/matejformanek/postgres-claude --skill catalog-conventions

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill eliminates the risk of breaking PostgreSQL internals when modifying system catalogs, ensuring that OID assignments, catversion bumps, and BKI bootstrap entries are handled with project-standard precision.

Core Features & Use Cases

  • Catalog Modification: Provides a rigorous checklist for adding or modifying builtin functions, operators, types, and system catalog columns.
  • Integrity Verification: Guides the user through mandatory OID collision checks, catversion management, and regression testing to prevent cluster-startup failures.
  • Use Case: When adding a new builtin SQL function or modifying a system catalog table, this skill ensures the developer correctly updates the .dat files, bumps the catversion, and performs the necessary rebuilds to maintain ABI compatibility.

Quick Start

Use the catalog-conventions skill to guide the process of adding a new builtin function to pg_proc.dat and verifying the required catversion bump.

Frequently Asked Questions about catalog-conventions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I safely add a new builtin function to PostgreSQL system catalogs?

To add a builtin function to PostgreSQL system catalogs, update the pg_proc.dat file with the correct OID, bump the catalog version, and follow strict project build procedures. This ensures ABI compatibility and prevents cluster-startup failures.

Why does modifying a PostgreSQL system catalog table cause cluster-startup failures?

PostgreSQL cluster-startup failures occur when system catalog modifications break BKI bootstrap entries or introduce OID collisions. Proper catversion management and regression testing are required to maintain database stability during internal API evolution.

When do I need to bump the catversion in PostgreSQL backend development?

You need to bump the PostgreSQL catversion whenever you modify system catalog tables, add builtin objects, or change internal APIs. This catversion update triggers necessary rebuilds and ensures schema evolution does not break database integrity.

What is the process for OID assignment in PostgreSQL builtin object registration?

OID assignment in PostgreSQL builtin object registration requires rigorous integrity verification to prevent collisions. Developers must update .dat files, assign unique OIDs, and perform regression testing to ensure system catalog modifications maintain database stability.

Does modifying PostgreSQL system catalogs require genbki bootstrap entry updates?

Yes, modifying PostgreSQL system catalogs requires genbki bootstrap entry updates in the .dat files. These BKI generation changes, along with header file convention adherence and catversion bumps, ensure that schema changes maintain ABI compatibility and database stability.