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-0003Ln-Gh@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
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/669c7d20e6374850593cb430d332e11a3992bbcf

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