Re: MultiXactId error after upgrade to 9.3.4

From: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk>, Stephen Frost <sfrost(at)snowman(dot)net>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: MultiXactId error after upgrade to 9.3.4
Date: 2016-06-21 22:15:43
Message-ID: 20160621221543.GA123505@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Alvaro Herrera wrote:
> Robert Haas wrote:
> > On Fri, Jun 17, 2016 at 9:33 AM, Andrew Gierth
> > <andrew(at)tao11(dot)riddles(dot)org(dot)uk> wrote:
> > >>>>>> "Robert" == Robert Haas <robertmhaas(at)gmail(dot)com> writes:
> > > >> Why is the correct rule not "check for and ignore pre-upgrade mxids
> > > >> before even trying to fetch members"?
> > >
> > > Robert> I entirely believe that's the correct rule, but doesn't
> > > Robert> implementing it require a crystal balll?
> > >
> > > Why would it? Pre-9.3 mxids are identified by the combination of flag
> > > bits in the infomask, see Alvaro's patch.
> >
> > I see the patch, but I don't see much explanation of why the patch is
> > correct, which I think is pretty scary in view of the number of
> > mistakes we've already made in this area.
>
> ... and actually the patch fails one isolation tests in 9.3, which is
> why I haven't pushed (I haven't tested 9.4 but I suppose it should be
> the same). I'm looking into that now.

Ah, it should have been obvious; the reason it's failing is because 9.3
and 9.4 lack commit 27846f02c176 which removed
MultiXactHasRunningRemoteMembers(), so the straight backpatch plus
conflict fixes left one GetMultiXactIdMembers call with the allow_old
flag to true. The attached patch fixes that omission.

--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachment Content-Type Size
locked-upgraded-93-fixup.patch text/x-diff 1.6 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2016-06-22 00:22:23 Re: Speaking of breaking compatibility...standard_conforming_strings
Previous Message Michael Paquier 2016-06-21 21:45:35 Re: Requesting external_pid_file with postgres -C when not initialized lead to coredump