Re: [PATCH] Fix orphaned backend processes on Windows using Job Objects
| От | Andres Freund | 
|---|---|
| Тема | Re: [PATCH] Fix orphaned backend processes on Windows using Job Objects | 
| Дата | |
| Msg-id | f2ly24rn4vt62u44a36qzbysiwzl2uzkrmiw36bompi2tmfosb@2ccvujasj4up обсуждение исходный текст  | 
		
| Ответ на | [PATCH] Fix orphaned backend processes on Windows using Job Objects (Bryan Green <dbryan.green@gmail.com>) | 
| Ответы | 
                	
            		Re: [PATCH] Fix orphaned backend processes on Windows using Job Objects
            		
            		 | 
		
| Список | pgsql-hackers | 
Hi, On 2025-11-03 09:12:03 -0600, Bryan Green wrote: > We just need to call CreateJobObject() in PostmasterMain(), configure > with JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE, and assign the postmaster. > Children inherit membership automatically. When the job handle closes on > postmaster exit, the kernel terminates all children atomically. This is > kernel-enforced with no polling and no race conditions. What happens if a postmaster child exits irregularly? Is postmaster terminated as well? > The patch has been tested on Windows 10/11 with both MSVC and MinGW > builds. Nested jobs fail gracefully as expected. Clean shutdown is > unaffected. Crash tests with taskkill /F, debugger abort, and access > violations all correctly terminate children immediately with zero orphans. > > This patch does not include automated tests because the core > functionality (orphan prevention on crash) requires simulating process > termination, which is difficult to test reliably in CI. Why is it difficult to test in CI? We do some related tests in 013_crash_restart.pl, it doesn't seem like it ought to be hard to also add tests for postmaster? Greetings, Andres Freund
В списке pgsql-hackers по дате отправления: