Rafael Martinez <r.m.guerrero@usit.uio.no> writes:
> I got this from one of our developers (from the core dump generated by
> 7.3.7 without --enable-debug):
> (gdb) inspect *att[i]
> $3 = {attrelid = 0, attname = {data = '\0' <repeats 63 times>,
> alignmentDummy = 0}, atttypid = 1700, attstattarget = -1, attlen = -1,
> attnum = 2, attndims = 0, attcacheoff = -1, atttypmod = 393220, attbyval
> = 0 '\0', attstorage = 109 'm', attisset = 0 '\0', attalign = 105 'i',
> attnotnull = 0 '\0', atthasdef = 0 '\0', attisdropped = 0 '\0',
> attislocal = 1 '\001', attinhcount = 0}
That looks reasonable ...
> (gdb) inspect data
> $4 = 0xb7489000 <Address 0xb7489000 out of bounds>
> (gdb) inspect value[i]
> $5 = 3054556648
Hmm, what do you get from "x/10 3054556648" ? Also, it'd be worth
looking at the contents of *att[0] to see if that's also sensible,
as well as value[0] and wherever that points (if it's a pointer).
regards, tom lane