> I am working on eliminating the "relation NNN modified while in use"
> misfeature by instead grabbing a lock on each relation at first use
> in a statement, and holding that lock till end of transaction.
As anticipated, I object :-)
If you do this you will most likely add the code to the wrong places,
since what we really need is a lock for the duration of one statement only.
Otherwise you will only fix this situation for those cases where the application
is actually inside a transaction. And this is (and hopefully stays) not mandatory.
Additionally we would have the discussed lockout of admin tasks ...
Andreas