On Wed, Jul 1, 2020 at 2:45 PM Bharath Rupireddy < bharath.rupireddyforpostg...@gmail.com> wrote:
> > > > I've not looked at your patch deeply but if this problem is talking > > only about postgres_fdw I think we should improve postgres_fdw, not > > adding a GUC to the core. It’s not that all FDW plugins use connection > > cache and postgres_fdw’s connection cache is implemented within > > postgres_fdw, I think we should focus on improving postgres_fdw. I > > also think it’s not a good design that the core manages connections to > > remote servers connected via FDW. I wonder if we can add a > > postgres_fdw option for this purpose, say keep_connection [on|off]. > > That way, we can set it per server so that remote connections to the > > particular server don’t remain idle. > > > > If I understand it correctly, your suggestion is to add > keep_connection option and use that while defining the server object. > IMO having keep_connection option at the server object level may not > serve the purpose being discussed here. > For instance, let's say I create a foreign server in session 1 with > keep_connection on, and I want to use that > server object in session 2 with keep_connection off and session 3 with > keep_connection on and so on. > In my opinion, in such cases, one needs to create two server object one with keep-connection ON and one with keep-connection off. And need to decide to use appropriate for the particular session. > One way we can change the server's keep_connection option is to alter > the server object, but that's not a good choice, > as we have to alter it at the system level. > > Overall, though we define the server object in a single session, it > will be used in multiple sessions, having an > option at the per-server level would not be a good idea. > > With Regards, > Bharath Rupireddy. > EnterpriseDB: http://www.enterprisedb.com > > > -- Rushabh Lathia