Andres Freund <andres@xxxxxxxxxxx> writes: > On 2021-04-13 19:16:46 -0400, Tom Lane wrote: >> Like this? This passes check-world, modulo the one very-unsurprising >> regression test change. I've not tried to do any performance testing. > I wonder if there's a realistic chance it could create additional > deadlocks that don't exist right now? Not on user tables, because we'd always be holding at least as much of a lock on the parent table. However ... > Would it be a problem that we'd still release the locks on catalog > tables early, but not on its toast table? ... hmm, not sure. I can't immediately think of a scenario where it'd be problematic (or any more problematic than DDL on a catalog would be anyway). But that doesn't mean there isn't one. The concerns that had come to my mind were more along the lines of things like pg_dump requiring a larger footprint in the shared lock table. We could alleviate that by increasing the default value of max_locks_per_transaction, perhaps. regards, tom lane