Re: postgres_fdw - cached connection leaks if the associated user mapping/foreign server is dropped - Mailing list pgsql-hackers

From Bharath Rupireddy
Subject Re: postgres_fdw - cached connection leaks if the associated user mapping/foreign server is dropped
Date
Msg-id CALj2ACUQBBxgsRVazDYuTn=WY-Xs8mfn2h=Vb5x3c-mMqxRqwg@mail.gmail.com
Whole thread Raw
In response to Re: postgres_fdw - cached connection leaks if the associated user mapping/foreign server is dropped  (Fujii Masao <masao.fujii@oss.nttdata.com>)
Responses Re: postgres_fdw - cached connection leaks if the associated user mapping/foreign server is dropped
List pgsql-hackers
On Thu, Dec 24, 2020 at 7:43 PM Fujii Masao <masao.fujii@oss.nttdata.com> wrote:
> Even when we're in the midst of transaction, if that transaction has not used
> the cached connections yet, we close them immediately. So, to make the
> comment more precise, what about updating the comment as follows?
>
> ---------------------
>      After a change to a pg_foreign_server or pg_user_mapping catalog entry,
>      close connections depending on that entry immediately if current
>      transaction has not used those connections yet. Otherwise, mark those
>      connections as invalid and then make pgfdw_xact_callback() close them
>      at the end of current transaction, since they cannot be closed in the midst
>      of a transaction using them. Closed connections will be remade at the next
>      opportunity if necessary.
> ---------------------

Done.

> +                       /*
> +                        * Close the connection if it's not in midst of a xact. Otherwise
> +                        * mark it as invalid so that it can be disconnected at the end of
> +                        * main xact in pgfdw_xact_callback().
> +                        */
>
> Because of the same reason as the above, what about updating this comment
> as follows?
>
> ---------------------
>      Close the connection immediately if it's not used yet in this transaction.
>      Otherwise mark it as invalid so that pgfdw_xact_callback() can close it
>      at the end of this transaction.
> ---------------------

Done.

Attaching v3 patch. Please have a look. Thanks!

With Regards,
Bharath Rupireddy.
EnterpriseDB: http://www.enterprisedb.com

Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: Movement of restart_lsn position movement of logical replication slots is very slow
Next
From: Fujii Masao
Date:
Subject: Re: postgres_fdw - cached connection leaks if the associated user mapping/foreign server is dropped