Re: We've broken something in error recovery

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: We've broken something in error recovery
Date: 2010-01-23 22:34:53
Message-ID: 15948.1264286093@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> #4 0x4e85b4 in ExceptionalCondition (
> conditionName=0x1ac4ac "!(nestLevel > 0 && nestLevel <= GUCNestLevel)",
> errorType=0x1abf44 "FailedAssertion", fileName=0x1abee4 "guc.c",
> lineNumber=3907) at assert.c:57
> #5 0x501f48 in AtEOXact_GUC (isCommit=-86 '', nestLevel=84) at guc.c:3907
> #6 0x20618c in AbortTransaction () at xact.c:2194
> #7 0x20688c in AbortCurrentTransaction () at xact.c:2568
> #8 0x3b0f84 in AutoVacLauncherMain (argc=2063670312, argv=0x7b03b94c)
> at autovacuum.c:491

On investigation I think that Assert may just be overenthusiastic.
The problem is that StartTransaction is failing at
VirtualXactLockTableInsert, for lack of any shared memory to acquire
the lock with; and then we try to do AbortTransaction and GUC is
unhappy because it's not been initialized yet. So this isn't a
new bug at all, it's been there awhile ...

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Dimitri Fontaine 2010-01-23 22:46:06 Re: commit fests
Previous Message Dimitri Fontaine 2010-01-23 22:28:36 Re: commit fests