diff --git a/src/backend/catalog/dependency.c b/src/backend/catalog/dependency.c index c1212e9..0107c53 100644 --- a/src/backend/catalog/dependency.c +++ b/src/backend/catalog/dependency.c @@ -127,7 +127,6 @@ typedef struct * See also getObjectClass(). */ static const Oid object_classes[MAX_OCLASS] = { - RelationRelationId, /* OCLASS_CLASS */ ProcedureRelationId, /* OCLASS_PROC */ TypeRelationId, /* OCLASS_TYPE */ CastRelationId, /* OCLASS_CAST */ @@ -158,7 +157,9 @@ static const Oid object_classes[MAX_OCLASS] = { DefaultAclRelationId, /* OCLASS_DEFACL */ ExtensionRelationId, /* OCLASS_EXTENSION */ EventTriggerRelationId, /* OCLASS_EVENT_TRIGGER */ - PolicyRelationId /* OCLASS_POLICY */ + PolicyRelationId, /* OCLASS_POLICY */ + TransformRelationId, /* OCLASS_POLICY */ + RelationRelationId /* OCLASS_CLASS */ }; diff --git a/src/include/catalog/dependency.h b/src/include/catalog/dependency.h index 5da18c2..6f4802d 100644 --- a/src/include/catalog/dependency.h +++ b/src/include/catalog/dependency.h @@ -112,11 +112,10 @@ typedef struct ObjectAddresses ObjectAddresses; /* * This enum covers all system catalogs whose OIDs can appear in - * pg_depend.classId or pg_shdepend.classId. + * pg_depend.classId or pg_shdepend.classId. See also object_classes[]. */ typedef enum ObjectClass { - OCLASS_CLASS, /* pg_class */ OCLASS_PROC, /* pg_proc */ OCLASS_TYPE, /* pg_type */ OCLASS_CAST, /* pg_cast */ @@ -149,6 +148,11 @@ typedef enum ObjectClass OCLASS_EVENT_TRIGGER, /* pg_event_trigger */ OCLASS_POLICY, /* pg_policy */ OCLASS_TRANSFORM, /* pg_transform */ + /* + * Keep this previous-to-last, see + * https://www.postgresql.org/message-id/ + */ + OCLASS_CLASS, /* pg_class */ MAX_OCLASS /* MUST BE LAST */ } ObjectClass;