Skip to content

Methodology and terminology

Evidence boundaries, lifecycle rules, default-value semantics, Pigsty fixtures, and the bilingual glossary used across the GUC Atlas.

Every dossier uses the same evidence model so a measured value cannot silently turn into tuning folklore.

Evidence labels

Label Meaning Publication rule
Fact Directly measured or traced to a pinned source Publish with version, path, link, or verification status
Analysis Explanation derived from facts and documented mechanisms Keep the reasoning visible and avoid claiming source authorship
Advice A workload-specific operational recommendation State assumptions, trade-offs, and the measurements needed to validate it
Pending human review Editorial inference about Pigsty’s reason for a value Never present it as a maintainer’s stated rationale

Lifecycle rules

  • The catalog is the union of pg_settings.name from PostgreSQL 9.0 through 19 Beta 3.
  • First observed is the first release point in that matrix. PG9.0 means “present at the research boundary,” not “introduced in PG9.0.”
  • Removed in is the first major after the final contiguous appearance, after checking all later snapshots.
  • An introduction commit is a separate Git fact found with pickaxe search in the GUC table source; it never overrides the measured presence matrix.

Default-value vocabulary

Term Definition
boot_val The upstream pg_settings boot value. This is the value compared across majors.
setting The active value in a freshly initialized official container. initdb may make it differ from boot_val.
Raw unit The unit column exactly as reported, including block-count units such as 8kB.
Human value A conservative display conversion that never replaces the raw value and unit.

Pigsty fixture

The comparison matrix renders all four complete Patroni templates—OLTP, OLAP, CRIT, and TINY—against each PostgreSQL major using an 8-vCPU, 32-GiB RAM, 100-GiB SSD primary and the role defaults. It records the raw template expression, rendered value, configuration layer, and comparison with upstream boot_val. Missing keys are explicitly “unmodified.” User pg_parameters remain a separate, empty-by-default postgresql.auto.conf override layer. Rendering a current Pigsty template for an EOL or beta PostgreSQL version is a historical projection, not a claim that current Pigsty supports that release.

Beta boundary

PostgreSQL 19 Beta 3 is pinned as a prerelease evidence point. It participates in the union and the PG18→19 Beta 3 diff, but every beta-only dossier warns that names, defaults, and behavior can still change before GA.

For each major, the crawler fetches every official runtime-config*.html page, hashes the response, and checks for the expected GUC-* ID. A URL is published only when that exact anchor was observed; internal or undocumented settings are recorded without an invented link.