Tom Lane wrote:
> Bruce Momjian <br...@momjian.us> writes:
> > Robert Haas wrote:
> >> Yeah, that seems very plausible, although exactly how to verify I don't 
> >> know.
> 
> > And here is confirmation from the Microsoft web site:
>       
> >     In some instances, calling GetExitCode() against the failed process
> >     indicates the following exit code:
> >     128L ERROR_WAIT_NO_CHILDREN - There are no child processes to wait for. 
> 
> Given the existence of the deadman switch mechanism (which I hadn't
> remembered when this thread started), I'm coming around to the idea that
> we could just treat exit(128) as nonfatal on Windows.  If for some
> reason the child hadn't died instantly at startup, the deadman switch
> would distinguish that from the case described here.

Agreed.  My guess is that there is some kind of Win32 OS race condition
in allocating desktop heap memory, and that sometimes with concurrent
CreateProcess() calls, a process gets started but can't complete its
creation.

-- 
  Bruce Momjian  <br...@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to