Re: BUG #17828: postgres_fdw leaks file descriptors on error and aborts aborted transaction in lack of fds
Etsuro Fujita <etsuro.fujita@gmail.com>
From: Etsuro Fujita <etsuro.fujita@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Andres Freund <andres@anarazel.de>, Thomas Munro <thomas.munro@gmail.com>, Alexander Lakhin <exclusion@gmail.com>, pgsql-bugs@lists.postgresql.org
Date: 2024-02-09T10:46:03Z
Lists: pgsql-bugs
Hi, On Fri, Feb 9, 2024 at 11:08 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: > ISTM we do need to do something about this AcquireExternalFD failure > though, because that's just self-inflicted damage. (And I think it's > likely new since we invented WaitEventSets, though perhaps I'm wrong > about that.) +1; but my concern is that even if we fix that failure, it is still possible that WaitLatchOrSocket in pgfdw_get_cleanup_result throws an error, causing the same error-during-error-recovery loop. (For example, epoll_create1() can fail in CreateWaitEventSet in the WaitLatchOrSocket after reserving an external FD, leading to an error.) Best regards, Etsuro Fujita
Commits
-
Fix resource leak when a FDW's ForeignAsyncRequest function fails
- 555276f85940 14.11 landed
- 481d7d1c01c6 15.6 landed
- 501cfd07dac6 16.2 landed