Re: postgres_fdw prefers fast plans - Mailing list pgsql-hackers

From Alexander Pyhalov
Subject Re: postgres_fdw prefers fast plans
Date
Msg-id 38fda8ab075440f876f88970e6f614b4@postgrespro.ru
Whole thread Raw
In response to Re: postgres_fdw prefers fast plans  (Laurenz Albe <laurenz.albe@cybertec.at>)
List pgsql-hackers
Laurenz Albe писал(а) 2025-12-10 16:12:
> On Wed, 2025-12-10 at 15:44 +0300, Alexander Pyhalov wrote:
>> There's a long-standing issue with postgres_fdw - as it uses cursors, 
>> it
>> prefers plans, optimized for fetching first rows. In bad scenarios 
>> this
>> leads to suboptimal choice of join methods (e.g. choosing nest loop 
>> over
>> hash join) on remote side. I've crafted WIP patch, which tries to fix
>> this issue. It adds FETCH ALL cursors and uses them in postgres_fdw.
>> What do you think? Should we go in this direction?
> 
> Why not simply set cursor_tuple_fraction to 1.0 in postgres_fdw 
> sessions?
> 
> Yours,
> Laurenz Albe

Hi.
Haven't thought about this. Thanks for the idea. The only drawback I see 
is that this will affect all cursors, which can be used, for example, by 
shippable functions. But looks much simpler.
-- 
Best regards,
Alexander Pyhalov,
Postgres Professional
Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: POC: enable logical decoding when wal_level = 'replica' without a server restart
Next
From: Ioseph Kim
Date:
Subject: Re: Propose: Adding a '--enable-failover' option to 'pg_createsubscriber' ver.3