postgresql/src/backend
Heikki Linnakangas cd87b6f8a5 Fix an old bug in multixact and two-phase commit. Prepared transactions can
be part of multixacts, so allocate a slot for each prepared transaction in
the "oldest member" array in multixact.c. On PREPARE TRANSACTION, transfer
the oldest member value from the current backends slot to the prepared xact
slot. Also save and recover the value from the 2pc state file.

The symptom of the bug was that after a transaction prepared, a shared lock
still held by the prepared transaction was sometimes ignored by other
transactions.

Fix back to 8.1, where both 2PC and multixact were introduced.
2009-11-23 09:58:36 +00:00
..
access Fix an old bug in multixact and two-phase commit. Prepared transactions can 2009-11-23 09:58:36 +00:00
bootstrap Create an ALTER DEFAULT PRIVILEGES command, which allows users to adjust 2009-10-05 19:24:49 +00:00
catalog Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression to be 2009-11-20 20:38:12 +00:00
commands Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression to be 2009-11-20 20:38:12 +00:00
executor Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression to be 2009-11-20 20:38:12 +00:00
foreign Somebody seems to have thought they could get away without checking for 2009-06-11 16:14:18 +00:00
lib Assorted minor refactoring in EXPLAIN. 2009-07-24 21:08:42 +00:00
libpq Rewrite pam_passwd_conv_proc to be more robust: avoid assuming that the 2009-10-16 22:08:36 +00:00
main Update copyright for 2009. 2009-01-01 17:24:05 +00:00
nodes Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression to be 2009-11-20 20:38:12 +00:00
optimizer Remove superfluous curly brace, fixing compilation with OPTIMIZER_DEBUG. 2009-11-22 14:54:31 +00:00
parser Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression to be 2009-11-20 20:38:12 +00:00
po Translations update for 8.5alpha2 2009-10-20 18:23:27 +00:00
port Reserve the shared memory region during backend startup on Windows, so 2009-07-24 20:12:42 +00:00
postmaster Fix memory leak in syslogger: logfile_rotate() would leak a copy of the 2009-11-19 02:45:33 +00:00
regex 8.4 pgindent run, with new combined Linux/FreeBSD/MinGW typedef list 2009-06-11 14:49:15 +00:00
rewrite Don't treat NEW and OLD as reserved words anymore. For the purposes of rules 2009-11-05 23:24:27 +00:00
snowball Derived files that are shipped in the distribution used to be built in the 2009-08-28 20:26:19 +00:00
storage Change the autovacuum launcher to read pg_database directly, rather than 2009-08-31 19:41:00 +00:00
tcop Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression to be 2009-11-20 20:38:12 +00:00
tsearch Make text search parser accept underscores in XML attributes (bug #5075) 2009-11-15 13:57:01 +00:00
utils Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression to be 2009-11-20 20:38:12 +00:00
common.mk Expand test coverage support to entire tree 2009-08-07 20:50:22 +00:00
Makefile Put back "ifeq ($(PORTNAME), solaris)", this time with some documentation 2009-09-05 21:14:04 +00:00
nls.mk Convert the core lexer and parser into fully reentrant code, by making use 2009-07-13 02:02:20 +00:00