print_boilerplate($syscache_ids_fh, "syscache_ids.h", "SysCache identifiers");
print $syscache_ids_fh "enum SysCacheIdentifier
{
-";
+\tSYSCACHEID_INVALID = -1,\n";
print_boilerplate($syscache_info_fh, "syscache_info.h",
"SysCache definitions");
my $last_syscache;
foreach my $syscache (sort keys %syscaches)
{
- print $syscache_ids_fh "\t$syscache,\n";
+ if (not defined $last_syscache)
+ {
+ print $syscache_ids_fh "\t$syscache = 0,\n";
+ }
+ else
+ {
+ print $syscache_ids_fh "\t$syscache,\n";
+ }
$last_syscache = $syscache;
print $syscache_info_fh "\t[$syscache] = {\n";
"access method operator",
AccessMethodOperatorRelationId,
AccessMethodOperatorOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_amop_oid,
InvalidAttrNumber,
InvalidAttrNumber,
"access method procedure",
AccessMethodProcedureRelationId,
AccessMethodProcedureOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_amproc_oid,
InvalidAttrNumber,
InvalidAttrNumber,
"cast",
CastRelationId,
CastOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_cast_oid,
InvalidAttrNumber,
InvalidAttrNumber,
CollationRelationId,
CollationOidIndexId,
COLLOID,
- -1, /* COLLNAMEENCNSP also takes encoding */
+ SYSCACHEID_INVALID, /* COLLNAMEENCNSP also takes encoding */
Anum_pg_collation_oid,
Anum_pg_collation_collname,
Anum_pg_collation_collnamespace,
ConstraintRelationId,
ConstraintOidIndexId,
CONSTROID,
- -1,
+ SYSCACHEID_INVALID,
Anum_pg_constraint_oid,
Anum_pg_constraint_conname,
Anum_pg_constraint_connamespace,
DatabaseRelationId,
DatabaseOidIndexId,
DATABASEOID,
- -1,
+ SYSCACHEID_INVALID,
Anum_pg_database_oid,
Anum_pg_database_datname,
InvalidAttrNumber,
"default ACL",
DefaultAclRelationId,
DefaultAclOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_default_acl_oid,
InvalidAttrNumber,
InvalidAttrNumber,
"extension",
ExtensionRelationId,
ExtensionOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_extension_oid,
Anum_pg_extension_extname,
InvalidAttrNumber, /* extension doesn't belong to extnamespace */
ProcedureRelationId,
ProcedureOidIndexId,
PROCOID,
- -1, /* PROCNAMEARGSNSP also takes argument types */
+ SYSCACHEID_INVALID, /* PROCNAMEARGSNSP also takes argument types */
Anum_pg_proc_oid,
Anum_pg_proc_proname,
Anum_pg_proc_pronamespace,
"large object metadata",
LargeObjectMetadataRelationId,
LargeObjectMetadataOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_largeobject_metadata_oid,
InvalidAttrNumber,
InvalidAttrNumber,
OperatorClassRelationId,
OpclassOidIndexId,
CLAOID,
- -1, /* CLAAMNAMENSP also takes opcmethod */
+ SYSCACHEID_INVALID, /* CLAAMNAMENSP also takes opcmethod */
Anum_pg_opclass_oid,
Anum_pg_opclass_opcname,
Anum_pg_opclass_opcnamespace,
OperatorRelationId,
OperatorOidIndexId,
OPEROID,
- -1, /* OPERNAMENSP also takes left and right type */
+ SYSCACHEID_INVALID, /* OPERNAMENSP also takes left and right type */
Anum_pg_operator_oid,
Anum_pg_operator_oprname,
Anum_pg_operator_oprnamespace,
OperatorFamilyRelationId,
OpfamilyOidIndexId,
OPFAMILYOID,
- -1, /* OPFAMILYAMNAMENSP also takes opfmethod */
+ SYSCACHEID_INVALID, /* OPFAMILYAMNAMENSP also takes opfmethod */
Anum_pg_opfamily_oid,
Anum_pg_opfamily_opfname,
Anum_pg_opfamily_opfnamespace,
"role membership",
AuthMemRelationId,
AuthMemOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_auth_members_oid,
InvalidAttrNumber,
InvalidAttrNumber,
"rule",
RewriteRelationId,
RewriteOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_rewrite_oid,
Anum_pg_rewrite_rulename,
InvalidAttrNumber,
TableSpaceRelationId,
TablespaceOidIndexId,
TABLESPACEOID,
- -1,
+ SYSCACHEID_INVALID,
Anum_pg_tablespace_oid,
Anum_pg_tablespace_spcname,
InvalidAttrNumber,
TransformRelationId,
TransformOidIndexId,
TRFOID,
- -1,
+ SYSCACHEID_INVALID,
Anum_pg_transform_oid,
InvalidAttrNumber,
InvalidAttrNumber,
"trigger",
TriggerRelationId,
TriggerOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_trigger_oid,
Anum_pg_trigger_tgname,
InvalidAttrNumber,
"policy",
PolicyRelationId,
PolicyOidIndexId,
- -1,
- -1,
+ SYSCACHEID_INVALID,
+ SYSCACHEID_INVALID,
Anum_pg_policy_oid,
Anum_pg_policy_polname,
InvalidAttrNumber,
UserMappingRelationId,
UserMappingOidIndexId,
USERMAPPINGOID,
- -1,
+ SYSCACHEID_INVALID,
Anum_pg_user_mapping_oid,
InvalidAttrNumber,
InvalidAttrNumber,
/* Currently, we can only handle object types with system caches. */
cache = property->oid_catcache_id;
- Assert(cache != -1);
+ Assert(cache != SYSCACHEID_INVALID);
/* Fetch tuple from syscache and extract namespace attribute. */
tuple = SearchSysCache1(cache, ObjectIdGetDatum(address->objectId));