On Tue, Jun 01, 2021 at 01:25:24PM +0530, Bharath Rupireddy wrote: > On Tue, Jun 1, 2021 at 9:19 AM Noah Misch <n...@leadboat.com> wrote: > > Given that limitation, is pg_wait_for_backend_termination() useful enough? > > If > > waiting for procarray departure is enough, should > > pg_wait_until_termination() > > check BackendPidGetProc(pid) instead of kill(0, pid), so it can return > > earlier? > > We can just remove BackendPidGetProc(pid) in > pg_wait_for_backend_termination. With this change, we can get rid of > the wait_pid() from regress.c. But, my concern is that the > pg_wait_for_backend_termination() can also check non-postgres server > process pid. Is this okay?
It may or may not be okay. I would not feel good about it. > In that case, this function becomes a > generic(OS level function) rather than a postgres server specific > function. I'm not sure if all agree to that. Thoughts? My preference is to remove pg_wait_for_backend_termination(). The use case that prompted this thread used pg_terminate_backend(pid, 180000); it doesn't need pg_wait_for_backend_termination().