Re: Re: Tuple-valued datums on Alpha (was Re: 7.1 on DEC/Alpha) - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Re: Tuple-valued datums on Alpha (was Re: 7.1 on DEC/Alpha)
Date
Msg-id 7419.977930325@sss.pgh.pa.us
Whole thread Raw
In response to Re: Re: Tuple-valued datums on Alpha (was Re: 7.1 on DEC/Alpha)  (Brent Verner <brent@rcfile.org>)
List pgsql-hackers
Brent Verner <brent@rcfile.org> writes:
> these are the steps leading up the the assignment of the fscked
> fcache->fcinfo.arg[i] at execQual.c:603, which is what will eventually
> blow up ExecEvalFieldSelect.

That looks OK as far as it goes.  Inside ExecEvalVar, you need to look
at the tuple_type data structure in more detail, specificallyp *tuple_type->attrs[0]p *tuple_type->attrs[1]
(I think the leading * is correct here, try omitting it if gdb gets
unhappy.)

> (gdb) print *variable
> $57 = {type = T_Var, varno = 65001, varattno = 1, vartype = 21220, 
>   vartypmod = 8, varlevelsup = 0, varnoold = 1, varoattno = 0}

That part looks promising --- vartypmod is sizeof(Pointer) not -1,
so the front-end part of my patch seems to be working.  What I suspect
we'll find is that the tupledesc doesn't show sizeof the first field to
be 8 the way we want.  Which would imply that I missed a place (or
multiple places :-() that needs to know about the convention for typmod
of a tuple datatype.
        regards, tom lane


pgsql-hackers by date:

Previous
From: mlw
Date:
Subject: Re: PHP and PostgreSQL
Next
From: Tom Lane
Date:
Subject: Re: configure in snapshout == configure.in