mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-07 07:49:20 +02:00
3cba8999b3
When an AccessShareLock, RowShareLock, or RowExclusiveLock is requested on an unshared database relation, and we can verify that no conflicting locks can possibly be present, record the lock in a per-backend queue, stored within the PGPROC, rather than in the primary lock table. This eliminates a great deal of contention on the lock manager LWLocks. This patch also refactors the interface between GetLockStatusData() and pg_lock_status() to be a bit more abstract, so that we don't rely so heavily on the lock manager's internal representation details. The new fast path lock structures don't have a LOCK or PROCLOCK structure to return, so we mustn't depend on that for purposes of listing outstanding locks. Review by Jeff Davis. |
||
---|---|---|
.. | ||
autovacuum.c | ||
bgwriter.c | ||
fork_process.c | ||
Makefile | ||
pgarch.c | ||
pgstat.c | ||
postmaster.c | ||
syslogger.c | ||
walwriter.c |