diff options
Diffstat (limited to 'src/backend/commands')
-rw-r--r-- | src/backend/commands/dropcmds.c | 24 | ||||
-rw-r--r-- | src/backend/commands/event_trigger.c | 2 |
2 files changed, 18 insertions, 8 deletions
diff --git a/src/backend/commands/dropcmds.c b/src/backend/commands/dropcmds.c index e5185ba34d2..a1b0d4d2fa2 100644 --- a/src/backend/commands/dropcmds.c +++ b/src/backend/commands/dropcmds.c @@ -406,19 +406,27 @@ does_not_exist_skipping(ObjectType objtype, List *objname, List *objargs) name = NameListToString(objname); break; case OBJECT_OPCLASS: - if (!schema_does_not_exist_skipping(objname, &msg, &name)) { - msg = gettext_noop("operator class \"%s\" does not exist for access method \"%s\", skipping"); - name = NameListToString(objname); - args = strVal(linitial(objargs)); + List *opcname = list_copy_tail(objname, 1); + + if (!schema_does_not_exist_skipping(opcname, &msg, &name)) + { + msg = gettext_noop("operator class \"%s\" does not exist for access method \"%s\", skipping"); + name = NameListToString(opcname); + args = strVal(linitial(objname)); + } } break; case OBJECT_OPFAMILY: - if (!schema_does_not_exist_skipping(objname, &msg, &name)) { - msg = gettext_noop("operator family \"%s\" does not exist for access method \"%s\", skipping"); - name = NameListToString(objname); - args = strVal(linitial(objargs)); + List *opfname = list_copy_tail(objname, 1); + + if (!schema_does_not_exist_skipping(opfname, &msg, &name)) + { + msg = gettext_noop("operator family \"%s\" does not exist for access method \"%s\", skipping"); + name = NameListToString(opfname); + args = strVal(linitial(objname)); + } } break; default: diff --git a/src/backend/commands/event_trigger.c b/src/backend/commands/event_trigger.c index 3fec57ea237..4bcc327a2b5 100644 --- a/src/backend/commands/event_trigger.c +++ b/src/backend/commands/event_trigger.c @@ -1060,6 +1060,8 @@ EventTriggerSupportsObjectType(ObjectType obtype) /* no support for event triggers on event triggers */ return false; case OBJECT_AGGREGATE: + case OBJECT_AMOP: + case OBJECT_AMPROC: case OBJECT_ATTRIBUTE: case OBJECT_CAST: case OBJECT_COLUMN: |