]> granicus.if.org Git - postgresql/commit
Use group updates when setting transaction status in clog.
authorRobert Haas <rhaas@postgresql.org>
Fri, 1 Sep 2017 15:45:17 +0000 (11:45 -0400)
committerRobert Haas <rhaas@postgresql.org>
Fri, 1 Sep 2017 15:45:40 +0000 (11:45 -0400)
commitbaaf272ac908ea27c09076e34f62c45fa7d1e448
treeb685c8490cd177d9e5758ca4fd7cf2113457258f
parent89c59b742a7f89eb598a25b70aaa3ab97381f67d
Use group updates when setting transaction status in clog.

Commit 0e141c0fbb211bdd23783afa731e3eef95c9ad7a introduced a mechanism
to reduce contention on ProcArrayLock by having a single process clear
XIDs in the procArray on behalf of multiple processes, reducing the
need to hand the lock around.  A previous attempt to introduce a similar
mechanism for CLogControlLock in ccce90b398673d55b0387b3de66639b1b30d451b
crashed and burned, but the design problem which resulted in those
failures is believed to have been corrected in this version.

Amit Kapila, with some cosmetic changes by me.  See the previous commit
message for additional credits.

Discussion: http://postgr.es/m/CAA4eK1KudxzgWhuywY_X=yeSAhJMT4DwCjroV5Ay60xaeB2Eew@mail.gmail.com
doc/src/sgml/monitoring.sgml
src/backend/access/transam/clog.c
src/backend/postmaster/pgstat.c
src/backend/storage/lmgr/proc.c
src/include/pgstat.h
src/include/storage/proc.h