89#include "utils/fmgroids.h"
141 "access method operator",
155 "access method procedure",
267 "foreign-data wrapper",
323 "large object metadata",
379 "property graph element",
393 "property graph element label",
407 "property graph label",
421 "property graph label property",
435 "property graph property",
589 "text search configuration",
603 "text search dictionary",
617 "text search parser",
631 "text search template",
687 "extended statistics",
767 "sequence column", -1
770 "toast table column", -1
776 "materialized view column", -1
779 "composite type column", -1
863 "role membership", -1
896 "property graph element", -1
899 "property graph element label", -1
902 "property graph label", -1
905 "property graph label property", -1
908 "property graph property", -1
938 String *strval,
bool missing_ok);
941 LOCKMODE lockmode,
bool missing_ok);
946 LOCKMODE lockmode,
bool missing_ok);
951 TypeName *
typename,
bool missing_ok);
955 List *
object,
bool missing_ok);
973 int32 objectSubId,
bool missing_ok);
1048 &relation, lockmode,
1055 &relation, lockmode,
1061 &relation, lockmode,
1069 &relation, missing_ok);
1149 errmsg(
"large object %u does not exist",
1228 elog(
ERROR,
"unrecognized object type: %d", (
int) objtype);
1333 relp, lockmode, missing_ok);
1342 String *strval,
bool missing_ok)
1418 elog(
ERROR,
"unrecognized object type: %d", (
int) objtype);
1444 lockmode, missing_ok);
1455 errmsg(
"\"%s\" is not an index",
1462 errmsg(
"\"%s\" is not a property graph",
1469 errmsg(
"\"%s\" is not a sequence",
1477 errmsg(
"\"%s\" is not a table",
1484 errmsg(
"\"%s\" is not a view",
1491 errmsg(
"\"%s\" is not a materialized view",
1498 errmsg(
"\"%s\" is not a foreign table",
1502 elog(
ERROR,
"unrecognized object type: %d", (
int) objtype);
1539 errmsg(
"must specify relation and object name")));
1578 elog(
ERROR,
"unrecognized object type: %d", (
int) objtype);
1584 if (relation !=
NULL)
1615 errmsg(
"column name must be qualified")));
1629 errmsg(
"column \"%s\" of relation \"%s\" does not exist",
1668 errmsg(
"column name must be qualified")));
1687 errmsg(
"default value for column \"%s\" of relation \"%s\" does not exist",
1724 errmsg(
"type \"%s\" does not exist",
1735 errmsg(
"\"%s\" is not a domain",
1770 elog(
ERROR,
"unrecognized object type: %d", (
int) objtype);
1787 List *
object,
bool missing_ok)
1813 foreach(cell,
lsecond(
object))
1843 errmsg(
"operator %d (%s, %s) of %s does not exist",
1874 errmsg(
"function %d (%s, %s) of %s does not exist",
1888 elog(
ERROR,
"unrecognized object type: %d", (
int) objtype);
1925 errmsg(
"user mapping for user \"%s\" on server \"%s\" does not exist",
1940 errmsg(
"server \"%s\" does not exist", servername)));
1951 errmsg(
"user mapping for user \"%s\" on server \"%s\" does not exist",
2007 errmsg(
"publication relation \"%s\" in publication \"%s\" does not exist",
2054 errmsg(
"publication schema \"%s\" in publication \"%s\" does not exist",
2055 schemaname, pubname)));
2115 errmsg(
"unrecognized default ACL object type \"%c\"", objtype),
2116 errhint(
"Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\", \"%c\".",
2168 errmsg(
"default ACL for user \"%s\" in schema \"%s\" on %s does not exist",
2173 errmsg(
"default ACL for user \"%s\" on %s does not exist",
2194 for (
i = 0;
i < nelems;
i++)
2199 errmsg(
"name or argument lists may not contain nulls")));
2233 errmsg(
"unsupported object type \"%s\"", ttype)));
2252 errmsg(
"name list length must be exactly %d", 1)));
2256 errmsg(
"name or argument lists may not contain nulls")));
2269 errmsg(
"name list length must be exactly %d", 1)));
2273 errmsg(
"large object OID may not be null")));
2282 errmsg(
"name list length must be at least %d", 1)));
2306 for (
i = 0;
i < nelems;
i++)
2311 errmsg(
"name or argument lists may not contain nulls")));
2334 errmsg(
"name list length must be exactly %d", 1)));
2345 errmsg(
"argument list length must be exactly %d", 1)));
2352 errmsg(
"name list length must be at least %d", 2)));
2359 errmsg(
"name list length must be at least %d", 3)));
2366 errmsg(
"argument list length must be exactly %d", 2)));
2419 errmsg(
"name list length must be exactly %d", 1)));
2454 owa->objargs = args;
2475 elog(
ERROR,
"return type must be a row type");
2528 elog(
ERROR,
"constraint with OID %u does not exist",
2582 errmsg(
"must be owner of large object %u",
2597 errmsg(
"must be owner of type %s or type %s",
2624 errmsg(
"permission denied"),
2625 errdetail(
"The current user must have the %s attribute.",
2633 errmsg(
"permission denied"),
2634 errdetail(
"The current user must have the %s attribute.",
2639 errmsg(
"permission denied"),
2640 errdetail(
"The current user must have the %s option on role \"%s\".",
2654 errmsg(
"must be superuser")));
2664 elog(
ERROR,
"unsupported object type: %d", (
int) objtype);
2689 cache =
property->oid_catcache_id;
2695 elog(
ERROR,
"cache lookup failed for cache %d oid %u",
2723 errmsg(
"unrecognized object type \"%s\"", objtype)));
2968 char **pubname,
char **nspname)
2978 elog(
ERROR,
"cache lookup failed for publication schema %u",
2999 elog(
ERROR,
"cache lookup failed for schema %u",
3095 elog(
ERROR,
"could not find tuple for cast %u",
3125 elog(
ERROR,
"cache lookup failed for collation %u",
3155 elog(
ERROR,
"cache lookup failed for constraint %u",
3194 elog(
ERROR,
"cache lookup failed for conversion %u",
3223 elog(
ERROR,
"could not find tuple for attrdef %u",
3258 if (oprname ==
NULL)
3278 elog(
ERROR,
"cache lookup failed for opclass %u",
3288 elog(
ERROR,
"cache lookup failed for access method %u",
3321 elog(
ERROR,
"cache lookup failed for access method %u",
3357 elog(
ERROR,
"could not find tuple for amop entry %u",
3422 elog(
ERROR,
"could not find tuple for amproc entry %u",
3486 elog(
ERROR,
"could not find tuple for rule %u",
3532 elog(
ERROR,
"could not find tuple for trigger %u",
3562 elog(
ERROR,
"cache lookup failed for namespace %u",
3581 elog(
ERROR,
"could not find tuple for statistics object %u",
3613 elog(
ERROR,
"cache lookup failed for text search parser %u",
3643 elog(
ERROR,
"cache lookup failed for text search dictionary %u",
3674 elog(
ERROR,
"cache lookup failed for text search template %u",
3705 elog(
ERROR,
"cache lookup failed for text search configuration %u",
3758 elog(
ERROR,
"could not find tuple for role membership %u",
3785 elog(
ERROR,
"cache lookup failed for database %u",
3801 elog(
ERROR,
"cache lookup failed for tablespace %u",
3843 elog(
ERROR,
"cache lookup failed for user mapping %u",
3889 elog(
ERROR,
"could not find tuple for default ACL %u",
3906 switch (
defacl->defaclobjtype)
3911 _(
"default privileges on new relations belonging to role %s in schema %s"),
3915 _(
"default privileges on new relations belonging to role %s"),
3921 _(
"default privileges on new sequences belonging to role %s in schema %s"),
3925 _(
"default privileges on new sequences belonging to role %s"),
3931 _(
"default privileges on new functions belonging to role %s in schema %s"),
3935 _(
"default privileges on new functions belonging to role %s"),
3941 _(
"default privileges on new types belonging to role %s in schema %s"),
3945 _(
"default privileges on new types belonging to role %s"),
3951 _(
"default privileges on new schemas belonging to role %s"),
3957 _(
"default privileges on new large objects belonging to role %s"),
3964 _(
"default privileges belonging to role %s in schema %s"),
3968 _(
"default privileges belonging to role %s"),
3986 elog(
ERROR,
"cache lookup failed for extension %u",
4003 elog(
ERROR,
"cache lookup failed for event trigger %u",
4024 elog(
ERROR,
"cache lookup failed for parameter ACL %u",
4060 elog(
ERROR,
"could not find tuple for policy %u",
4091 elog(
ERROR,
"cache lookup failed for property graph element %u",
4232 &pubname, &nspname))
4254 elog(
ERROR,
"cache lookup failed for publication table %u",
4293 elog(
ERROR,
"could not find tuple for transform %u",
4313 if (buffer.
len == 0)
4352 elog(
ERROR,
"cache lookup failed for relation %u", relid);
4438 elog(
ERROR,
"cache lookup failed for access method %u",
4495 const char *objname =
NULL;
4508 elog(
ERROR,
"return type must be a row type");
4530 elog(
ERROR,
"invalid null namespace in object %u/%u/%d",
4548 elog(
ERROR,
"invalid null name in object %u/%u/%d",
4580 if (objname && objidentity)
4625 elog(
ERROR,
"return type must be a row type");
4633 if (identity ==
NULL)
4959 elog(
ERROR,
"cache lookup failed for relation %u", relid);
5004 if (objectSubId != 0)
5062 elog(
ERROR,
"cache lookup failed for procedure %u", procid);
5140 if (missing_ok && attr ==
NULL)
5146 if (objname && *objname ==
NIL)
5154 *objname =
lappend(*objname, attr);
5205 elog(
ERROR,
"could not find tuple for cast %u",
5239 elog(
ERROR,
"cache lookup failed for collation %u",
5265 elog(
ERROR,
"cache lookup failed for constraint %u",
5313 elog(
ERROR,
"cache lookup failed for conversion %u",
5338 elog(
ERROR,
"could not find tuple for attrdef %u",
5360 elog(
ERROR,
"cache lookup failed for language %u",
5388 if (oprname ==
NULL)
5410 elog(
ERROR,
"cache lookup failed for opclass %u",
5420 elog(
ERROR,
"cache lookup failed for access method %u",
5451 elog(
ERROR,
"cache lookup failed for access method %u",
5488 elog(
ERROR,
"could not find tuple for amop entry %u",
5550 elog(
ERROR,
"could not find tuple for amproc entry %u",
5599 elog(
ERROR,
"could not find tuple for rule %u",
5632 elog(
ERROR,
"could not find tuple for trigger %u",
5659 elog(
ERROR,
"cache lookup failed for namespace %u",
5681 elog(
ERROR,
"cache lookup failed for statistics object %u",
5708 elog(
ERROR,
"cache lookup failed for text search parser %u",
5735 elog(
ERROR,
"cache lookup failed for text search dictionary %u",
5762 elog(
ERROR,
"cache lookup failed for text search template %u",
5789 elog(
ERROR,
"cache lookup failed for text search configuration %u",
5843 elog(
ERROR,
"could not find tuple for pg_auth_members entry %u",
5870 elog(
ERROR,
"cache lookup failed for database %u",
5889 elog(
ERROR,
"cache lookup failed for tablespace %u",
5944 elog(
ERROR,
"cache lookup failed for user mapping %u",
5996 elog(
ERROR,
"could not find tuple for default ACL %u",
6021 switch (
defacl->defaclobjtype)
6045 " on large objects");
6053 *objname =
lappend(*objname, schema);
6070 elog(
ERROR,
"cache lookup failed for extension %u",
6091 elog(
ERROR,
"cache lookup failed for event trigger %u",
6115 elog(
ERROR,
"cache lookup failed for parameter ACL %u",
6143 elog(
ERROR,
"could not find tuple for policy %u",
6171 elog(
ERROR,
"cache lookup failed for property graph element %u", object->
objectId);
6194 elog(
ERROR,
"cache lookup failed for property graph label %u", object->
objectId);
6216 elog(
ERROR,
"cache lookup failed for property graph property %u", object->
objectId);
6244 elog(
ERROR,
"could not find tuple for element label %u",
6282 elog(
ERROR,
"could not find tuple for label property %u",
6354 elog(
ERROR,
"cache lookup failed for publication table %u",
6404 elog(
ERROR,
"could not find tuple for transform %u",
6440 if (objname && *objname ==
NIL)
6441 elog(
ERROR,
"requested object address for unsupported object class %u: text result \"%s\"",
6447 if (buffer.
len == 0)
6450 (objargs ==
NULL || *objargs ==
NIL));
6479 elog(
ERROR,
"cache lookup failed for access method %u",
6515 elog(
ERROR,
"cache lookup failed for relation %u", relid);
bool is_admin_of_role(Oid member, Oid role)
Oid get_role_oid(const char *rolname, bool missing_ok)
void aclcheck_error(AclResult aclerr, ObjectType objtype, const char *objectname)
bool object_ownercheck(Oid classid, Oid objectid, Oid roleid)
void aclcheck_error_type(AclResult aclerr, Oid typeOid)
bool has_createrole_privilege(Oid roleid)
Oid get_index_am_oid(const char *amname, bool missing_ok)
char * get_am_name(Oid amOid)
Oid get_am_oid(const char *amname, bool missing_ok)
#define PG_GETARG_ARRAYTYPE_P(n)
ArrayType * construct_empty_array(Oid elmtype)
ArrayType * construct_md_array(Datum *elems, bool *nulls, int ndims, int *dims, int *lbs, Oid elmtype, int elmlen, bool elmbyval, char elmalign)
void deconstruct_array_builtin(const ArrayType *array, Oid elmtype, Datum **elemsp, bool **nullsp, int *nelemsp)
#define InvalidAttrNumber
char * get_tablespace_name(Oid spc_oid)
Oid get_tablespace_oid(const char *tablespacename, bool missing_ok)
static Datum values[MAXATTR]
#define CStringGetTextDatum(s)
#define FORMAT_TYPE_ALLOW_INVALID
#define TextDatumGetCString(d)
#define FORMAT_TYPE_INVALID_AS_NULL
#define FORMAT_TYPE_FORCE_QUALIFY
#define Assert(condition)
#define OidIsValid(objectId)
bool IsSharedRelation(Oid relationId)
Oid get_database_oid(const char *dbname, bool missing_ok)
int errcode(int sqlerrcode)
int errhint(const char *fmt,...) pg_attribute_printf(1
int errdetail(const char *fmt,...) pg_attribute_printf(1
int int errmsg_internal(const char *fmt,...) pg_attribute_printf(1
#define ereport(elevel,...)
Oid get_event_trigger_oid(const char *trigname, bool missing_ok)
Oid get_extension_oid(const char *extname, bool missing_ok)
char * get_extension_name(Oid ext_oid)
#define palloc_array(type, count)
#define PG_GETARG_DATUM(n)
#define PG_RETURN_TEXT_P(x)
#define PG_GETARG_INT32(n)
#define PG_RETURN_DATUM(x)
ForeignServer * GetForeignServerByName(const char *srvname, bool missing_ok)
ForeignDataWrapper * GetForeignDataWrapperExtended(Oid fdwid, uint16 flags)
Oid get_foreign_server_oid(const char *servername, bool missing_ok)
ForeignServer * GetForeignServer(Oid serverid)
ForeignServer * GetForeignServerExtended(Oid serverid, uint16 flags)
Oid get_foreign_data_wrapper_oid(const char *fdwname, bool missing_ok)
TypeFuncClass get_call_result_type(FunctionCallInfo fcinfo, Oid *resultTypeId, TupleDesc *resultTupleDesc)
static Datum HeapTupleGetDatum(const HeapTupleData *tuple)
Oid get_transform_oid(Oid type_id, Oid lang_id, bool missing_ok)
void systable_endscan(SysScanDesc sysscan)
HeapTuple systable_getnext(SysScanDesc sysscan)
SysScanDesc systable_beginscan(Relation heapRelation, Oid indexId, bool indexOK, Snapshot snapshot, int nkeys, ScanKey key)
HeapTuple heap_copytuple(HeapTuple tuple)
HeapTuple heap_form_tuple(TupleDesc tupleDescriptor, const Datum *values, const bool *isnull)
#define HeapTupleIsValid(tuple)
static Datum heap_getattr(HeapTuple tup, int attnum, TupleDesc tupleDesc, bool *isnull)
static void * GETSTRUCT(const HeapTupleData *tuple)
bool lo_compat_privileges
List * lappend(List *list, void *datum)
List * list_copy_tail(const List *oldlist, int nskip)
List * lcons(void *datum, List *list)
List * list_copy_head(const List *oldlist, int len)
void LockSharedObject(Oid classid, Oid objid, uint16 objsubid, LOCKMODE lockmode)
void LockDatabaseObject(Oid classid, Oid objid, uint16 objsubid, LOCKMODE lockmode)
void LockTuple(Relation relation, const ItemPointerData *tid, LOCKMODE lockmode)
void UnlockSharedObject(Oid classid, Oid objid, uint16 objsubid, LOCKMODE lockmode)
void UnlockDatabaseObject(Oid classid, Oid objid, uint16 objsubid, LOCKMODE lockmode)
#define InplaceUpdateTupleLock
char * get_propgraph_property_name(Oid propoid)
Oid get_cast_oid(Oid sourcetypeid, Oid targettypeid, bool missing_ok)
AttrNumber get_attnum(Oid relid, const char *attname)
char * get_database_name(Oid dbid)
char get_rel_relkind(Oid relid)
Oid get_publication_oid(const char *pubname, bool missing_ok)
char * get_language_name(Oid langoid, bool missing_ok)
char * get_namespace_name_or_temp(Oid nspid)
char * get_propgraph_label_name(Oid labeloid)
char * get_attname(Oid relid, AttrNumber attnum, bool missing_ok)
Oid get_subscription_oid(const char *subname, bool missing_ok)
char * get_subscription_name(Oid subid, bool missing_ok)
char * get_publication_name(Oid pubid, bool missing_ok)
char * get_namespace_name(Oid nspid)
char * pstrdup(const char *in)
void pfree(void *pointer)
MemoryContext CurrentMemoryContext
void MemoryContextDelete(MemoryContext context)
#define AllocSetContextCreate
#define ALLOCSET_DEFAULT_SIZES
char * GetUserNameFromId(Oid roleid, bool noerr)
char * NameListToString(const List *names)
bool TSTemplateIsVisible(Oid tmplId)
bool OpfamilyIsVisible(Oid opfid)
bool CollationIsVisible(Oid collid)
bool ConversionIsVisible(Oid conid)
Oid get_statistics_object_oid(List *names, bool missing_ok)
Oid get_collation_oid(List *collname, bool missing_ok)
Oid get_namespace_oid(const char *nspname, bool missing_ok)
bool RelationIsVisible(Oid relid)
bool OpclassIsVisible(Oid opcid)
bool TSParserIsVisible(Oid prsId)
Oid get_conversion_oid(List *conname, bool missing_ok)
Oid get_ts_dict_oid(List *names, bool missing_ok)
Oid get_ts_parser_oid(List *names, bool missing_ok)
RangeVar * makeRangeVarFromNameList(const List *names)
Oid get_ts_config_oid(List *names, bool missing_ok)
bool TSConfigIsVisible(Oid cfgid)
bool StatisticsObjIsVisible(Oid stxid)
bool TSDictionaryIsVisible(Oid dictId)
Oid get_ts_template_oid(List *names, bool missing_ok)
#define castNode(_type_, nodeptr)
static void getRelationDescription(StringInfo buffer, Oid relid, bool missing_ok)
char * getObjectTypeDescription(const ObjectAddress *object, bool missing_ok)
ArrayType * strlist_to_textarray(List *list)
bool get_object_namensp_unique(Oid class_id)
ObjectAddress get_object_address_rv(ObjectType objtype, RangeVar *rel, List *object, Relation *relp, LOCKMODE lockmode, bool missing_ok)
AttrNumber get_object_attnum_owner(Oid class_id)
Datum pg_identify_object(PG_FUNCTION_ARGS)
HeapTuple get_catalog_object_by_oid(Relation catalog, AttrNumber oidcol, Oid objectId)
AttrNumber get_object_attnum_oid(Oid class_id)
static const ObjectPropertyType ObjectProperty[]
ObjectType get_relkind_objtype(char relkind)
AttrNumber get_object_attnum_namespace(Oid class_id)
void check_object_ownership(Oid roleid, ObjectType objtype, ObjectAddress address, Node *object, Relation relation)
SysCacheIdentifier get_object_catcache_name(Oid class_id)
char * getObjectDescriptionOids(Oid classid, Oid objid)
char * getObjectIdentityParts(const ObjectAddress *object, List **objname, List **objargs, bool missing_ok)
static ObjectAddress get_object_address_publication_schema(List *object, bool missing_ok)
AttrNumber get_object_attnum_name(Oid class_id)
static ObjectAddress get_object_address_relobject(ObjectType objtype, List *object, Relation *relp, bool missing_ok)
static void getConstraintTypeDescription(StringInfo buffer, Oid constroid, bool missing_ok)
const char * get_object_class_descr(Oid class_id)
static void getProcedureTypeDescription(StringInfo buffer, Oid procid, bool missing_ok)
static void getOpFamilyIdentity(StringInfo buffer, Oid opfid, List **object, bool missing_ok)
static ObjectAddress get_object_address_defacl(List *object, bool missing_ok)
char * getObjectDescription(const ObjectAddress *object, bool missing_ok)
Datum pg_get_acl(PG_FUNCTION_ARGS)
static bool getPublicationSchemaInfo(const ObjectAddress *object, bool missing_ok, char **pubname, char **nspname)
AttrNumber get_object_attnum_acl(Oid class_id)
static void getRelationTypeDescription(StringInfo buffer, Oid relid, int32 objectSubId, bool missing_ok)
static void getOpFamilyDescription(StringInfo buffer, Oid opfid, bool missing_ok)
Oid get_object_oid_index(Oid class_id)
static ObjectAddress get_object_address_unqualified(ObjectType objtype, String *strval, bool missing_ok)
int read_objtype_from_string(const char *objtype)
SysCacheIdentifier get_object_catcache_oid(Oid class_id)
const ObjectAddress InvalidObjectAddress
ObjectType get_object_type(Oid class_id, Oid object_id)
static ObjectAddress get_object_address_publication_rel(List *object, Relation *relp, bool missing_ok)
static ObjectAddress get_object_address_opf_member(ObjectType objtype, List *object, bool missing_ok)
static const ObjectPropertyType * get_object_property_data(Oid class_id)
static ObjectAddress get_object_address_type(ObjectType objtype, TypeName *typename, bool missing_ok)
static ObjectAddress get_object_address_usermapping(List *object, bool missing_ok)
static const struct object_type_map ObjectTypeMap[]
static void getRelationIdentity(StringInfo buffer, Oid relid, List **object, bool missing_ok)
static ObjectAddress get_object_address_opcf(ObjectType objtype, List *object, bool missing_ok)
Datum pg_identify_object_as_address(PG_FUNCTION_ARGS)
ObjectAddress get_object_address(ObjectType objtype, Node *object, Relation *relp, LOCKMODE lockmode, bool missing_ok)
Datum pg_describe_object(PG_FUNCTION_ARGS)
Datum pg_get_object_address(PG_FUNCTION_ARGS)
static ObjectAddress get_object_address_attribute(ObjectType objtype, List *object, Relation *relp, LOCKMODE lockmode, bool missing_ok)
static ObjectAddress get_relation_by_qualified_name(ObjectType objtype, List *object, Relation *relp, LOCKMODE lockmode, bool missing_ok)
char * getObjectIdentity(const ObjectAddress *object, bool missing_ok)
Oid get_object_namespace(const ObjectAddress *address)
HeapTuple get_catalog_object_by_oid_extended(Relation catalog, AttrNumber oidcol, Oid objectId, bool locktup)
static ObjectAddress get_object_address_attrdef(ObjectType objtype, List *object, Relation *relp, LOCKMODE lockmode, bool missing_ok)
bool is_objectclass_supported(Oid class_id)
static List * textarray_to_strvaluelist(ArrayType *arr)
#define ObjectAddressSet(addr, class_id, object_id)
Oid get_opclass_oid(Oid amID, List *opclassname, bool missing_ok)
Oid get_opfamily_oid(Oid amID, List *opfamilyname, bool missing_ok)
static MemoryContext MemoryContextSwitchTo(MemoryContext context)
Oid LookupFuncWithArgs(ObjectType objtype, ObjectWithArgs *func, bool missing_ok)
Oid LookupOperWithArgs(ObjectWithArgs *oper, bool noError)
char * TypeNameToString(const TypeName *typeName)
Type LookupTypeName(ParseState *pstate, const TypeName *typeName, int32 *typmod_p, bool missing_ok)
TypeName * typeStringToTypeName(const char *str, Node *escontext)
Oid typenameTypeId(ParseState *pstate, const TypeName *typeName)
Oid LookupTypeNameOid(ParseState *pstate, const TypeName *typeName, bool missing_ok)
@ OBJECT_PUBLICATION_NAMESPACE
END_CATALOG_STRUCT typedef FormData_pg_am * Form_pg_am
END_CATALOG_STRUCT typedef FormData_pg_amop * Form_pg_amop
END_CATALOG_STRUCT typedef FormData_pg_amproc * Form_pg_amproc
Oid GetAttrDefaultOid(Oid relid, AttrNumber attnum)
ObjectAddress GetAttrDefaultColumnAddress(Oid attrdefoid)
END_CATALOG_STRUCT typedef FormData_pg_auth_members * Form_pg_auth_members
END_CATALOG_STRUCT typedef FormData_pg_authid * Form_pg_authid
END_CATALOG_STRUCT typedef FormData_pg_cast * Form_pg_cast
FormData_pg_class * Form_pg_class
END_CATALOG_STRUCT typedef FormData_pg_collation * Form_pg_collation
Oid get_relation_constraint_oid(Oid relid, const char *conname, bool missing_ok)
Oid get_domain_constraint_oid(Oid typid, const char *conname, bool missing_ok)
END_CATALOG_STRUCT typedef FormData_pg_constraint * Form_pg_constraint
END_CATALOG_STRUCT typedef FormData_pg_conversion * Form_pg_conversion
END_CATALOG_STRUCT typedef FormData_pg_default_acl * Form_pg_default_acl
END_CATALOG_STRUCT typedef FormData_pg_event_trigger * Form_pg_event_trigger
END_CATALOG_STRUCT typedef FormData_pg_language * Form_pg_language
bool LargeObjectExists(Oid loid)
#define lfirst_node(type, lc)
static int list_length(const List *l)
#define linitial_node(type, l)
#define lsecond_node(type, l)
#define list_make3(x1, x2, x3)
#define list_make2(x1, x2)
END_CATALOG_STRUCT typedef FormData_pg_opclass * Form_pg_opclass
END_CATALOG_STRUCT typedef FormData_pg_opfamily * Form_pg_opfamily
Oid ParameterAclLookup(const char *parameter, bool missing_ok)
END_CATALOG_STRUCT typedef FormData_pg_policy * Form_pg_policy
END_CATALOG_STRUCT typedef FormData_pg_proc * Form_pg_proc
END_CATALOG_STRUCT typedef FormData_pg_propgraph_element * Form_pg_propgraph_element
END_CATALOG_STRUCT typedef FormData_pg_propgraph_element_label * Form_pg_propgraph_element_label
END_CATALOG_STRUCT typedef FormData_pg_propgraph_label * Form_pg_propgraph_label
END_CATALOG_STRUCT typedef FormData_pg_propgraph_label_property * Form_pg_propgraph_label_property
END_CATALOG_STRUCT typedef FormData_pg_propgraph_property * Form_pg_propgraph_property
Publication * GetPublicationByName(const char *pubname, bool missing_ok)
END_CATALOG_STRUCT typedef FormData_pg_publication_namespace * Form_pg_publication_namespace
END_CATALOG_STRUCT typedef FormData_pg_publication_rel * Form_pg_publication_rel
END_CATALOG_STRUCT typedef FormData_pg_rewrite * Form_pg_rewrite
END_CATALOG_STRUCT typedef FormData_pg_statistic_ext * Form_pg_statistic_ext
END_CATALOG_STRUCT typedef FormData_pg_trigger * Form_pg_trigger
END_CATALOG_STRUCT typedef FormData_pg_ts_config * Form_pg_ts_config
END_CATALOG_STRUCT typedef FormData_pg_ts_dict * Form_pg_ts_dict
END_CATALOG_STRUCT typedef FormData_pg_ts_parser * Form_pg_ts_parser
END_CATALOG_STRUCT typedef FormData_pg_ts_template * Form_pg_ts_template
END_CATALOG_STRUCT typedef FormData_pg_type * Form_pg_type
END_CATALOG_STRUCT typedef FormData_pg_user_mapping * Form_pg_user_mapping
Oid get_relation_policy_oid(Oid relid, const char *policy_name, bool missing_ok)
static Name DatumGetName(Datum X)
static Oid DatumGetObjectId(Datum X)
static Datum Int16GetDatum(int16 X)
static Datum ObjectIdGetDatum(Oid X)
static Datum CStringGetDatum(const char *X)
static Datum Int32GetDatum(int32 X)
#define PointerGetDatum(X)
static Datum CharGetDatum(char X)
Oid get_language_oid(const char *langname, bool missing_ok)
char * psprintf(const char *fmt,...)
char * format_procedure(Oid procedure_oid)
char * format_procedure_extended(Oid procedure_oid, uint16 flags)
void format_operator_parts(Oid operator_oid, List **objnames, List **objargs, bool missing_ok)
char * format_operator_extended(Oid operator_oid, uint16 flags)
void format_procedure_parts(Oid procedure_oid, List **objnames, List **objargs, bool missing_ok)
char * format_operator(Oid operator_oid)
#define FORMAT_OPERATOR_INVALID_AS_NULL
#define FORMAT_OPERATOR_FORCE_QUALIFY
#define FORMAT_PROC_FORCE_QUALIFY
#define FORMAT_PROC_INVALID_AS_NULL
#define RelationGetRelid(relation)
#define RelationGetDescr(relation)
#define RelationGetRelationName(relation)
Oid get_rewrite_oid(Oid relid, const char *rulename, bool missing_ok)
char * quote_qualified_identifier(const char *qualifier, const char *ident)
const char * quote_identifier(const char *ident)
void ScanKeyInit(ScanKey entry, AttrNumber attributeNumber, StrategyNumber strategy, RegProcedure procedure, Datum argument)
uint64 SharedInvalidMessageCounter
Relation relation_openrv_extended(const RangeVar *relation, LOCKMODE lockmode, bool missing_ok)
void relation_close(Relation relation, LOCKMODE lockmode)
Relation relation_openrv(const RangeVar *relation, LOCKMODE lockmode)
#define BTEqualStrategyNumber
void appendStringInfo(StringInfo str, const char *fmt,...)
void appendStringInfoString(StringInfo str, const char *s)
void initStringInfo(StringInfo str)
AttrNumber attnum_namespace
SysCacheIdentifier oid_catcache_id
SysCacheIdentifier name_catcache_id
bool superuser_arg(Oid roleid)
HeapTuple SearchSysCacheCopyAttNum(Oid relid, int16 attnum)
HeapTuple SearchSysCacheLockedCopy1(SysCacheIdentifier cacheId, Datum key1)
void ReleaseSysCache(HeapTuple tuple)
HeapTuple SearchSysCache2(SysCacheIdentifier cacheId, Datum key1, Datum key2)
HeapTuple SearchSysCache3(SysCacheIdentifier cacheId, Datum key1, Datum key2, Datum key3)
Datum SysCacheGetAttrNotNull(SysCacheIdentifier cacheId, HeapTuple tup, AttrNumber attributeNumber)
HeapTuple SearchSysCache4(SysCacheIdentifier cacheId, Datum key1, Datum key2, Datum key3, Datum key4)
HeapTuple SearchSysCache1(SysCacheIdentifier cacheId, Datum key1)
Datum SysCacheGetAttr(SysCacheIdentifier cacheId, HeapTuple tup, AttrNumber attributeNumber, bool *isNull)
#define SearchSysCacheCopy1(cacheId, key1)
#define GetSysCacheOid2(cacheId, oidcol, key1, key2)
void table_close(Relation relation, LOCKMODE lockmode)
Relation table_open(Oid relationId, LOCKMODE lockmode)
Relation table_openrv_extended(const RangeVar *relation, LOCKMODE lockmode, bool missing_ok)
Oid get_trigger_oid(Oid relid, const char *trigname, bool missing_ok)
String * makeString(char *str)
Float * makeFloat(char *numericStr)
text * cstring_to_text(const char *s)