On Tue, Nov 3, 2026 at 3:53 PM Fujii Masao <[email protected]> wrote: > > On Thu, Sep 10, 2026 at 3:10 AM Lucas DRAESCHER <[email protected]> wrote: > > Alternatively, if maintaining a separate backpatch variant is undesirable, > > v1 is still available. It doesn't change the `IoMethodOps` struct at all, > > so the ABI question disappears. > > I don't object to the v4 approach for master, but I still prefer v1 for > backpatching because it keeps the changes minimal and avoids changing > the IoMethodOps ABI. > > I've attached updated v1-based patches. The changes are: > - Rename the cleanup function. > - Replace the NULL check with an assertion and add Assert(!IsUnderPostmaster). > - Remove the debug log message. > > How about committing this v1-based fix and backpatching it to v18, then > considering a common cleanup interface separately for master if needed?
Hi Fujii, thanks for taking a look, if You are willing to backpatch then v1 sounds better way better for endusers and just to give little more confidence, I've checked both patces on REL_18_STABLE and master: 1) this passes: PG_TEST_INITDB_EXTRA_OPTS="-c io_method=io_uring" meson test -C build 2) code looks good and is even simpler 3) and yes uring fd leaks are gone with this after SIGSEGV v18 and especially upcoming v19 should have this IMHO if possible. -J.
