]> granicus.if.org Git - postgresql/commitdiff
Fix event trigger support for the new ALTER OPERATOR command.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 14 Jul 2015 16:50:18 +0000 (19:50 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 14 Jul 2015 16:50:18 +0000 (19:50 +0300)
Also, the lock on pg_operator should not be released until end of
transaction.

src/backend/commands/operatorcmds.c

index 32065185ea4587ef8e051946f9a8f59026ee4296..0bb9743ea3622040dc03112bb8484d5da7ea3900 100644 (file)
@@ -38,6 +38,7 @@
 #include "access/htup_details.h"
 #include "catalog/dependency.h"
 #include "catalog/indexing.h"
+#include "catalog/objectaccess.h"
 #include "catalog/pg_operator.h"
 #include "catalog/pg_type.h"
 #include "commands/alter.h"
@@ -499,7 +500,11 @@ AlterOperator(AlterOperatorStmt *stmt)
        simple_heap_update(catalog, &tup->t_self, tup);
        CatalogUpdateIndexes(catalog, tup);
 
-       heap_close(catalog, RowExclusiveLock);
+       InvokeObjectPostAlterHook(OperatorRelationId, oprId, 0);
+
+       ObjectAddressSet(address, OperatorRelationId, oprId);
+
+       heap_close(catalog, NoLock);
 
        return address;
 }