根据postgres-xl,CREATE TRIGGER
使用SHARE ROW EXCLUSIVE
锁定,但根据SHARE ROW EXCLUSIVE
的{{3}}:
任何PostgreSQL都不会自动获取此锁定模式 命令。
答案 0 :(得分:4)
您将Postgres-XL与主PostgreSQL文档进行比较。两种不同的产品,虽然有共同的历史。 Postgres-XL从库存PostgreSQL中发现了很多批次的变化。
angular.module('sccateringApp')
.controller('newCategoryController', ['httpcalls', '$scope', function (httpcalls, $scope) {
$scope.submitForm = function(){
alert();
}
}]);
应列在Pg文档中,但并非如此,这是一种疏忽。
快速查看源代码会发现CREATE TRIGGER
需要CREATE TRIGGER
,因此在这种情况下,XL的文档符合PostgreSQL的行为。
你可以自己检查一下,而不是通过做这样的事情来查看来源:
ShareRowExclusiveLock
...这表明我对阅读资料来说错了,因为:
CREATE TABLE test();
CREATE OR REPLACE FUNCTION dummy_tg() RETURNS TRIGGER
LANGUAGE plpgsql AS $$ BEGIN END; $$;
BEGIN;
CREATE TRIGGER blah BEFORE INSERT ON test FOR EACH ROW EXECUTE PROCEDURE dummy_tg();
\x
SELECT * FROM pg_locks
WHERE pid = pg_backend_pid()
AND relation = 'test'::regclass;
ROLLBACK;
它使用了一个AccessExclusiveLock。