From 673b9ae31545649c6f53b97179dd170c8e15a313 Mon Sep 17 00:00:00 2001 From: Sage Griffin Date: Tue, 4 Aug 2026 13:38:02 -0600 Subject: [PATCH] Docs for https://github.com/pgdogdev/pgdog/pull/1280 --- docs/configuration/pgdog.toml/general.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/configuration/pgdog.toml/general.md b/docs/configuration/pgdog.toml/general.md index 182b684c..175f9ba1 100644 --- a/docs/configuration/pgdog.toml/general.md +++ b/docs/configuration/pgdog.toml/general.md @@ -591,6 +591,23 @@ Available options: Default: **`auto`** +### `canonicalize_type_information` + +Controls whether PgDog attempts to maintain a canonical set of identifiers for +custom types. Types that are not built-in to PostgreSQL have a unique identifier +(OID) assigned upon creation. The same type may end up having different OIDs +across shards. + +If this setting is enabled, any queries that reference the `pg_type` table or +cast to `regtype` will be routed to shard 0. PgDog will then map any OIDs +to/from that canonical set when messages are sent to individual shards. + +This setting is disabled by default. It is recommended that it be enabled for +users who are using sharding, and use any types from extensions or types created +with `CREATE TYPE`. + +Default: **`false`** (disabled) + ### `cutover_traffic_stop_threshold` Replication lag threshold (in bytes) at which PgDog will pause traffic automatically during a [traffic cutover](../../features/sharding/resharding/cutover.md#pause-queries).