CREATE POLICY takes AccessExclusiveLock on the table a policy is being added to -- good -- and then releases it when done -- bad. Correct behavior is to hold the lock till commit, because otherwise there is no guarantee that other backends will see the updated catalog rows in time, or indeed at all.
The same goes for ALTER POLICY, and possibly DROP POLICY (I've not found the implementation of that ...) If we fix this, I believe we could also remove the weasel wording that was added to create_policy.sgml in commit 43cd468cf01007f3 about how the system might transiently fail to enforce row security correctly. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers