pgsql: Change the default value of max_prepared_transactions to zero,

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Change the default value of max_prepared_transactions to zero,
Date: 2009-04-23 00:23:46
Message-ID: 20090423002346.5D61F7540E2@cvs.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Change the default value of max_prepared_transactions to zero, and add
documentation warnings against setting it nonzero unless active use of
prepared transactions is intended and a suitable transaction manager has been
installed. This should help to prevent the type of scenario we've seen
several times now where a prepared transaction is forgotten and eventually
causes severe maintenance problems (or even anti-wraparound shutdown).

The only real reason we had the default be nonzero in the first place was to
support regression testing of the feature. To still be able to do that,
tweak pg_regress to force a nonzero value during "make check". Since we
cannot force a nonzero value in "make installcheck", add a variant regression
test "expected" file that shows the results that will be obtained when
max_prepared_transactions is zero.

Also, extend the HINT messages for transaction wraparound warnings to mention
the possibility that old prepared transactions are causing the problem.

All per today's discussion.

Modified Files:
--------------
pgsql/doc/src/sgml:
config.sgml (r1.214 -> r1.215)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/config.sgml?r1=1.214&r2=1.215)
pgsql/doc/src/sgml/ref:
prepare_transaction.sgml (r1.8 -> r1.9)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/prepare_transaction.sgml?r1=1.8&r2=1.9)
pgsql/src/backend/access/transam:
twophase.c (r1.51 -> r1.52)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/twophase.c?r1=1.51&r2=1.52)
varsup.c (r1.83 -> r1.84)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/varsup.c?r1=1.83&r2=1.84)
pgsql/src/backend/utils/misc:
guc.c (r1.502 -> r1.503)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/guc.c?r1=1.502&r2=1.503)
postgresql.conf.sample (r1.259 -> r1.260)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/postgresql.conf.sample?r1=1.259&r2=1.260)
pgsql/src/test/regress/expected:
prepared_xacts.out (r1.6 -> r1.7)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/prepared_xacts.out?r1=1.6&r2=1.7)
pgsql/src/test/regress:
pg_regress.c (r1.61 -> r1.62)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/pg_regress.c?r1=1.61&r2=1.62)
pgsql/src/test/regress/sql:
prepared_xacts.sql (r1.2 -> r1.3)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/prepared_xacts.sql?r1=1.2&r2=1.3)

Added Files:
-----------
pgsql/src/test/regress/expected:
prepared_xacts_1.out (r1.1)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/prepared_xacts_1.out?rev=1.1&content-type=text/x-cvsweb-markup)

Browse pgsql-committers by date

  From Date Subject
Next Message User Itagaki 2009-04-23 06:37:30 reorg - pg_reorg: Fix compile errors on Linux.
Previous Message Heikki Linnakangas 2009-04-22 19:51:12 pgsql: After archive recovery, mark the last WAL segment from the parent