(2014/07/01 15:13), Ashutosh Bapat wrote:
On Tue, Jul 1, 2014 at 7:39 AM, Etsuro Fujita
<[email protected] <mailto:[email protected]>> wrote:
We may want to modify use_physical_tlist(), to return false, in case of
foreign tables. BTW, it does return false for inheritance trees.
Yeah, but please consider cases where foreign tables are not inheritance
child rels (and any system columns are requested).
486 /*
487 * Can't do it with inheritance cases either (mainly because
Append
488 * doesn't project).
489 */
490 if (rel->reloptkind != RELOPT_BASEREL)
491 return false;
Yeah, we can call build_physical_tlist() (and do that in some
cases), but if we call the function, it would generate a tlist that
contains all Vars in the relation, not only those Vars actually
needed by the query (ie, Vars in reltargetlist), and thus it would
take more cycles to compute attr_used from the tlist than from
reltargetlist. That' what I wanted to say.
Maybe I'm missing something, but what's the point of using the tlist,
not reltargetlist?
Thanks,
Best regards,
Etsuro Fujita
--
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers