Don't take ProcArrayLock while exiting a transaction that has no XID; there is
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 7 Sep 2007 20:59:26 +0000 (20:59 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 7 Sep 2007 20:59:26 +0000 (20:59 +0000)
commit0a51e7073c045b5fce50092dae19f398f7b38e16
tree8f33ac25cc0653195f86b76f724b52360f3fbc80
parent85e79a4a83d6f6fb505474a720eb32fd88067c16
Don't take ProcArrayLock while exiting a transaction that has no XID; there is
no need for serialization against snapshot-taking because the xact doesn't
affect anyone else's snapshot anyway.  Per discussion.  Also, move various
info about the interlocking of transactions and snapshots out of code comments
and into a hopefully-more-cohesive discussion in access/transam/README.

Also, remove a couple of now-obsolete comments about having to force some WAL
to be written to persuade RecordTransactionCommit to do its thing.
src/backend/access/heap/heapam.c
src/backend/access/transam/README
src/backend/access/transam/xact.c
src/backend/commands/copy.c
src/backend/executor/execMain.c
src/backend/storage/ipc/procarray.c