From: | Zdenek Kotala <Zdenek(dot)Kotala(at)Sun(dot)COM> |
---|---|
To: | Grant Finnemore <grantf(at)guruhut(dot)co(dot)za> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Backend crash during explain |
Date: | 2007-05-31 10:31:44 |
Message-ID: | 465EA410.8000409@sun.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Grant Finnemore napsal(a):
> CrashReporter trace:
>
> Date/Time: 2007-05-31 10:21:39.285 +0200
> OS Version: 10.4.9 (Build 8P2137)
> Report Version: 4
>
> Command: postmaster
> Path: ./bin/postmaster
> Parent: postmaster [23091]
>
> Version: ??? (???)
>
> PID: 23096
> Thread: 0
>
> Exception: EXC_BAD_ACCESS (0x0001)
> Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000018
>
> Thread 0 Crashed:
> 0 postmaster 0x00116ec6 ExecSetSlotDescriptor + 77 (execTuples.c:344)
> 1 postmaster 0x001182f9 ExecAssignScanTypeFromOuterPlan + 33
> (execUtils.c:771)
> 2 postmaster 0x001240c8 ExecInitSort + 168 (nodeSort.c:211)
It looks that tupDesc contains invalid pointer. I found some strange
assignment in ExecAssignScanTypeFromOuterPlan function. See comment
bellow. OuterPlanState expects PlaneState structure instead ScanState.
00762 ExecAssignScanTypeFromOuterPlan(ScanState *scanstate)
00763 {
00764 PlanState *outerPlan;
00765 TupleDesc tupDesc;
00766
00767 outerPlan = outerPlanState(scanstate);
^^^^^
scanstate->ps ??
00768 tupDesc = ExecGetResultType(outerPlan);
00769
00770 ExecAssignScanType(scanstate, tupDesc);
00771 }
Zdenek
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-05-31 12:45:25 | Re: ERROR: index row size 2960 exceeds btree maximum |
Previous Message | Galy Lee | 2007-05-31 09:14:06 | BUG #3326: Invalid lower bound of autovacuum_cost_limit |