Re: [HACKERS] SIGSEGV in sebselect.
Bruce Momjian <maillist@candle.pha.pa.us>
From: Bruce Momjian <maillist@candle.pha.pa.us>
To: emkxp01@mtcc.demon.co.uk
Cc: hackers@postgreSQL.org
Date: 1998-02-23T00:17:09Z
Lists: pgsql-hackers
> > Hi All, > > I'm getting a SIGSEGV with the following subselect:- > > select * from disks where diskid in > ( select distinct diskid from tracks where artist = 'Led Zeppelin'); > > The source tree is a cvsup from 22nd Feb (AM GMT) > Platform is Linux/SPARC > > I'm afraid my debugging skills are limited to generating a backtrace > so here goes.... This is a partial fix. In make_unique(), if Query->uniqueAttr is '*', Unique->uniqueAttr gets null. However, with this fix, I get: test=> select usesysid from pg_user where usesysid in (select distinct usesysid from pg_user); ERROR: ExecReScan: node type 24 not supported I have not installed this patch yet until Vadim comments and perhaps has an idea on the ExecReScan message: --------------------------------------------------------------------------- *** ./backend/nodes/copyfuncs.c.orig Sun Feb 22 18:58:59 1998 --- ./backend/nodes/copyfuncs.c Sun Feb 22 19:03:37 1998 *************** *** 549,555 **** * copy remainder of node * ---------------- */ ! newnode->uniqueAttr = pstrdup(from->uniqueAttr); newnode->uniqueAttrNum = from->uniqueAttrNum; Node_Copy(from, newnode, uniquestate); --- 549,558 ---- * copy remainder of node * ---------------- */ ! if (newnode->uniqueAttr) ! newnode->uniqueAttr = pstrdup(from->uniqueAttr); ! else ! newnode->uniqueAttr = NULL; newnode->uniqueAttrNum = from->uniqueAttrNum; Node_Copy(from, newnode, uniquestate); -- Bruce Momjian maillist@candle.pha.pa.us