Re: [PATCH] O_CLOEXEC not honored on Windows - handle inheritance chain
Bryan Green <dbryan.green@gmail.com>
From: Bryan Green <dbryan.green@gmail.com>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2025-11-12T01:02:14Z
Lists: pgsql-hackers
Attachments
On 11/7/2025 11:28 AM, Bryan Green wrote: > On 11/6/2025 8:42 AM, Bryan Green wrote: >> On 11/6/2025 7:43 AM, Thomas Munro wrote: ... >> So the plan would be: >> >> Backport branches (v16+): >> #define O_DIRECT 0x80000000 >> #define O_CLOEXEC 0x04000000 >> #define O_DSYNC _O_NO_INHERIT >> >> Master: >> #define O_DIRECT 0x80000000 >> #define O_DSYNC 0x04000000 >> #define O_CLOEXEC _O_NO_INHERIT >> >> And then in pgwin32_open(): >> sa.bInheritHandle = (fileFlags & O_CLOEXEC) ? FALSE : TRUE; >> >> I will prepare a new version of the patch that implements the suggested >> change for master. >> >> > The changes for master, along with a tap test, are provided with the > attached patch. > Thanks to CI discovered a mistake in the makefile and meson.build file for the tests. New patch attached. -- Bryan Green EDB: https://www.enterprisedb.com