Re: GiST: Bad newtup On Exit From gistSplit() ? - Mailing list pgsql-hackers

From Kevin Brown
Subject Re: GiST: Bad newtup On Exit From gistSplit() ?
Date
Msg-id 20030302214334.GS1833@filer
Whole thread Raw
In response to Re: GiST: Bad newtup On Exit From gistSplit() ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: GiST: Bad newtup On Exit From gistSplit() ?  (Itai Zukerman <zukerman@math-hat.com>)
List pgsql-hackers
Tom Lane wrote:
> Itai Zukerman <zukerman@math-hat.com> writes:
> > After recompiling with --enable-cassert, nserting into an empty table,
> > I get:
> 
> >   TRAP: FailedAssertion("!((VfdCache[0].fd == (-1)))", File: "fd.c", Line: 1113)
> 
> Begins to look like a plain old wild store: ain't *nothing* should ever
> write into VfdCache[0].fd.  If that's repeatable, you could try homing
> in on the place that is clobbering that variable by stepping through
> major routines with gdb.

If this is a system that supports hardware watchpoints (like Linux on
x86), then you should be able to do a "watch VfdCache[0].fd".  In
fact, if you know the specific value it's going to be set to, you can
do a conditional watchpoint: "watch VfdCache[0].fd if VfdCache[0] ==
<value>" (you can set the condition to be pretty much anything).

The program will stop on the statement immediately following the one
that scribbled on the area you're watching when the condition you
specify is met.  Note, though, that the condition is tested *after*
the modification happens.


-- 
Kevin Brown                          kevin@sysexperts.com


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: GiST: Bad newtup On Exit From gistSplit() ?
Next
From: "Mark Jones"
Date:
Subject: Postgresql performace question