On 2016/07/15 11:48, Tom Lane wrote:
> Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp> writes:
>> One thing I'm not sure about is: should we insist that a join can be
>> pushed down only if the checkAsUser fields of the relevant RTEs are
>> equal in the case where user mappings are meaningless to the FDW, like
>> file_fdw?
> If we add a mechanism to let us know that the FDW doesn't care, we could
> relax the requirement for such cases. I don't have a strong opinion on
> whether that's worthwhile. It'd depend in part on how many FDWs there
> are that don't care, versus those that do; and I have no idea about that.
So, I'd vote for leaving that for future work if necessary.
Here is a patch for that redesign proposed by you; reverts commits
fbe5a3fb73102c2cfec11aaaa4a67943f4474383 and
5d4171d1c70edfe3e9be1de9e66603af28e3afe1, adds changes for that redesign
to the core, and adjusts the postgres_fdw code to that changes. Also, I
rearranged the postgres_fdw regression tests to match that changes.
Best regards,
Etsuro Fujita