Re: Bypassing cursors in postgres_fdw to enable parallel plans
Rafia Sabih <rafia.pghackers@gmail.com>
From: Rafia Sabih <rafia.pghackers@gmail.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: KENAN YILMAZ <kenan.yilmaz@localus.com.tr>,
Andy Fan <zhihuifan1213@163.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-06-29T09:27:17Z
Lists: pgsql-hackers
On Fri, 26 Jun 2026 at 21:42, Robert Haas <robertmhaas@gmail.com> wrote: > On Tue, Jun 23, 2026 at 5:38 AM Rafia Sabih <rafia.pghackers@gmail.com> > wrote: > > I understand your concern and I tried to solve it by passing fsstate > now, also saving a backpointer to the node in active_fsstate to solve the > issue with make_tuple_from_result_row. Since we need to have conn from > fsstate, I am not sure how we can do that if we have only active_fsstate > passed to the function. > > If fsstate->conn and active_fsstate->conn can be different, I think we > have a big problem. The idea of save_to_tuplestore() is that there's a > query running on the connection already and we have to finish reading > its results before we can use the connection for something else. But > that only makes sense if it's the SAME connection in both cases. If > we're running a connection on connection A, there's no reason we need > to do anything before sending a new query on connection B. > > So, do you suggest we can have a backpointer of conn also in active_fsstate...? > -- > Robert Haas > EDB: http://www.enterprisedb.com > -- Regards, Rafia Sabih CYBERTEC PostgreSQL International GmbH