On Tue, Sep 22, 2015 at 9:30 PM, Kouhei Kaigai <kaigai@ak.jp.nec.com> wrote:
> The latest ExplainPreScanNode is sufficient. Regardless of scanrelid
> (even if it is zero), fs_relids and custom_relids shall be set properly
> to introduce which relations are represented by this ForeignScan and
> CustomScan node. So, additional planstate_tree_walker() call might be
> a bit redundant, but harmless.
>
> The reason why ForeignScan/CustomScan node have these bitmap is, we
> cannot guarantee they always have underlying scan node. For example,
> ForeignScan that kicks remote join query will not have local underlying
> scan node on the foreign tables to be involved.
> So, we had to inform ExplainPreScanNode which relids are represented
> by this Foreign/CustomScan node.
OK, I've just committed the patch the way it is for now, then.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company