Merge da43a30afa into 132816cffe
This commit is contained in:
commit
a2cf159675
3 changed files with 4 additions and 3 deletions
|
|
@ -768,7 +768,7 @@ CreateIvmTrigger(Oid relOid, Oid viewOid, int16 type, int16 timing, bool ex_lock
|
||||||
address = CreateTrigger(ivm_trigger, NULL, relOid, InvalidOid, InvalidOid,
|
address = CreateTrigger(ivm_trigger, NULL, relOid, InvalidOid, InvalidOid,
|
||||||
InvalidOid, InvalidOid, InvalidOid, NULL, true, false);
|
InvalidOid, InvalidOid, InvalidOid, NULL, true, false);
|
||||||
|
|
||||||
recordDependencyOn(&address, &refaddr, DEPENDENCY_AUTO);
|
recordDependencyOn(&address, &refaddr, DEPENDENCY_INTERNAL);
|
||||||
|
|
||||||
/* Make changes-so-far visible */
|
/* Make changes-so-far visible */
|
||||||
CommandCounterIncrement();
|
CommandCounterIncrement();
|
||||||
|
|
|
||||||
|
|
@ -449,12 +449,13 @@ RefreshImmvByOid(Oid matviewOid, bool is_create, bool skipData,
|
||||||
obj.objectId = foundDep->objid;
|
obj.objectId = foundDep->objid;
|
||||||
obj.objectSubId = foundDep->refobjsubid;
|
obj.objectSubId = foundDep->refobjsubid;
|
||||||
add_exact_object_address(&obj, immv_triggers);
|
add_exact_object_address(&obj, immv_triggers);
|
||||||
|
deleteDependencyRecordsFor(obj.classId, obj.objectId, false);
|
||||||
}
|
}
|
||||||
systable_endscan(tgscan);
|
systable_endscan(tgscan);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
systable_endscan(scan);
|
systable_endscan(scan);
|
||||||
|
CommandCounterIncrement();
|
||||||
performMultipleDeletions(immv_triggers, DROP_RESTRICT, PERFORM_DELETION_INTERNAL);
|
performMultipleDeletions(immv_triggers, DROP_RESTRICT, PERFORM_DELETION_INTERNAL);
|
||||||
|
|
||||||
table_close(depRel, RowExclusiveLock);
|
table_close(depRel, RowExclusiveLock);
|
||||||
|
|
|
||||||
2
pg_ivm.c
2
pg_ivm.c
|
|
@ -319,7 +319,7 @@ CreateChangePreventTrigger(Oid matviewOid)
|
||||||
address = CreateTrigger(ivm_trigger, NULL, matviewOid, InvalidOid, InvalidOid,
|
address = CreateTrigger(ivm_trigger, NULL, matviewOid, InvalidOid, InvalidOid,
|
||||||
InvalidOid, InvalidOid, InvalidOid, NULL, true, false);
|
InvalidOid, InvalidOid, InvalidOid, NULL, true, false);
|
||||||
|
|
||||||
recordDependencyOn(&address, &refaddr, DEPENDENCY_AUTO);
|
recordDependencyOn(&address, &refaddr, DEPENDENCY_INTERNAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Make changes-so-far visible */
|
/* Make changes-so-far visible */
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue