39 const char **msg,
char **
name);
41 const char **msg,
char **
name);
43 const char **msg,
char **
name);
65 foreach(cell1,
stmt->objects)
100 (
errcode(ERRCODE_WRONG_OBJECT_TYPE),
101 errmsg(
"\"%s\" is an aggregate function",
103 errhint(
"Use DROP AGGREGATE to drop aggregate functions.")));
158 *msg =
gettext_noop(
"relation \"%s\" does not exist, skipping");
188 *msg =
gettext_noop(
"schema \"%s\" does not exist, skipping");
220 if (typeName != NULL)
228 *msg =
gettext_noop(
"type \"%s\" does not exist, skipping");
250 const char *msg = NULL;
257 msg =
gettext_noop(
"access method \"%s\" does not exist, skipping");
267 msg =
gettext_noop(
"type \"%s\" does not exist, skipping");
275 msg =
gettext_noop(
"collation \"%s\" does not exist, skipping");
282 msg =
gettext_noop(
"conversion \"%s\" does not exist, skipping");
287 msg =
gettext_noop(
"schema \"%s\" does not exist, skipping");
293 msg =
gettext_noop(
"statistics object \"%s\" does not exist, skipping");
300 msg =
gettext_noop(
"text search parser \"%s\" does not exist, skipping");
307 msg =
gettext_noop(
"text search dictionary \"%s\" does not exist, skipping");
314 msg =
gettext_noop(
"text search template \"%s\" does not exist, skipping");
321 msg =
gettext_noop(
"text search configuration \"%s\" does not exist, skipping");
326 msg =
gettext_noop(
"extension \"%s\" does not exist, skipping");
336 msg =
gettext_noop(
"function %s(%s) does not exist, skipping");
349 msg =
gettext_noop(
"procedure %s(%s) does not exist, skipping");
362 msg =
gettext_noop(
"routine %s(%s) does not exist, skipping");
375 msg =
gettext_noop(
"aggregate %s(%s) does not exist, skipping");
388 msg =
gettext_noop(
"operator %s does not exist, skipping");
394 msg =
gettext_noop(
"language \"%s\" does not exist, skipping");
403 msg =
gettext_noop(
"cast from type %s to type %s does not exist, skipping");
412 msg =
gettext_noop(
"transform for type %s language \"%s\" does not exist, skipping");
420 msg =
gettext_noop(
"trigger \"%s\" for relation \"%s\" does not exist, skipping");
429 msg =
gettext_noop(
"policy \"%s\" for relation \"%s\" does not exist, skipping");
436 msg =
gettext_noop(
"event trigger \"%s\" does not exist, skipping");
442 msg =
gettext_noop(
"rule \"%s\" for relation \"%s\" does not exist, skipping");
449 msg =
gettext_noop(
"foreign-data wrapper \"%s\" does not exist, skipping");
453 msg =
gettext_noop(
"server \"%s\" does not exist, skipping");
462 msg =
gettext_noop(
"operator class \"%s\" does not exist for access method \"%s\", skipping");
474 msg =
gettext_noop(
"operator family \"%s\" does not exist for access method \"%s\", skipping");
481 msg =
gettext_noop(
"publication \"%s\" does not exist, skipping");
501 elog(
ERROR,
"unsupported object type: %d", (
int) objtype);
517 elog(
ERROR,
"unsupported object type: %d", (
int) objtype);
523 elog(
ERROR,
"unrecognized object type: %d", (
int) objtype);
bool object_ownercheck(Oid classid, Oid objectid, Oid roleid)
#define OidIsValid(objectId)
elog(ERROR, "%s: %s", p2, msg)
void performMultipleDeletions(const ObjectAddresses *objects, DropBehavior behavior, int flags)
ObjectAddresses * new_object_addresses(void)
void add_exact_object_address(const ObjectAddress *object, ObjectAddresses *addrs)
void free_object_addresses(ObjectAddresses *addrs)
static bool type_in_list_does_not_exist_skipping(List *typenames, const char **msg, char **name)
void RemoveObjects(DropStmt *stmt)
static void does_not_exist_skipping(ObjectType objtype, Node *object)
static bool owningrel_does_not_exist_skipping(List *object, const char **msg, char **name)
static bool schema_does_not_exist_skipping(List *object, const char **msg, char **name)
int errhint(const char *fmt,...)
int errcode(int sqlerrcode)
int errmsg(const char *fmt,...)
#define ereport(elevel,...)
Assert(fmt[strlen(fmt) - 1] !='\n')
List * list_copy_head(const List *oldlist, int len)
List * list_copy_tail(const List *oldlist, int nskip)
#define AccessExclusiveLock
char get_func_prokind(Oid funcid)
RangeVar * makeRangeVarFromNameList(List *names)
bool isTempNamespace(Oid namespaceId)
char * NameListToString(List *names)
Oid LookupNamespaceNoError(const char *nspname)
#define RangeVarGetRelid(relation, lockmode, missing_ok)
#define castNode(_type_, nodeptr)
void check_object_ownership(Oid roleid, ObjectType objtype, ObjectAddress address, Node *object, Relation relation)
ObjectAddress get_object_address(ObjectType objtype, Node *object, Relation *relp, LOCKMODE lockmode, bool missing_ok)
Oid get_object_namespace(const ObjectAddress *address)
char * TypeNameListToString(List *typenames)
char * TypeNameToString(const TypeName *typeName)
Oid LookupTypeNameOid(ParseState *pstate, const TypeName *typeName, bool missing_ok)
@ OBJECT_PUBLICATION_NAMESPACE
#define lfirst_node(type, lc)
static int list_length(const List *l)
#define linitial_node(type, l)
#define lsecond_node(type, l)
void table_close(Relation relation, LOCKMODE lockmode)
#define XACT_FLAGS_ACCESSEDTEMPNAMESPACE