pgsql: Fix pg_upgrade's multixact handling (again)

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Fix pg_upgrade's multixact handling (again)
Date: 2015-04-30 17:01:06
Message-ID: E1Ynrpi-0003Lp-Go@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix pg_upgrade's multixact handling (again)

We need to create the pg_multixact/offsets file deleted by pg_upgrade
much earlier than we originally were: it was in TrimMultiXact(), which
runs after we exit recovery, but it actually needs to run earlier than
the first call to SetMultiXactIdLimit (before recovery), because that
routine already wants to read the first offset segment.

Per pg_upgrade trouble report from Jeff Janes.

While at it, silence a compiler warning about a pointless assert that an
unsigned variable was being tested non-negative. This was a signed
constant in Thomas Munro's patch which I changed to unsigned before
commit. Pointed out by Andres Freund.

Branch
------
REL9_4_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/7140e11d8a81c988dc2f7369aaa1fd6ba276fb9e

Modified Files
--------------
src/backend/access/transam/multixact.c | 24 ++++++++++++++----------
1 file changed, 14 insertions(+), 10 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Robert Haas 2015-04-30 19:22:25 pgsql: Create an infrastructure for parallel computation in PostgreSQL.
Previous Message Bruce Momjian 2015-04-30 16:55:35 Re: pg_upgrade: quote directory names in delete_old_cluster script