Added to TODO:
o Prevent SSL from sending network packets to avoid interference with Win32 signal emulation
http://archives.postgresql.org/pgsql-hackers/2007-12/msg00455.php
---------------------------------------------------------------------------
Magnus Hagander wrote:
> On Wed, Dec 12, 2007 at 12:30:50AM -0500, Tom Lane wrote:
> > "Trevor Talbot" <quension@gmail.com> writes:
> > > On 12/11/07, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> > >> I dunno anything about how to fix the real problem (what's winsock error
> > >> 10004?),
> >
> > > WSAEINTR, "A blocking operation was interrupted by a call to
> > > WSACancelBlockingCall."
> >
> > Oh, then it's exactly the same thing as our bug #2829.
> >
> > I opined in that thread that OpenSSL was broken because it failed to
> > treat this as a retryable case like EINTR. But not being much of a
> > Windows person, that might be mere hot air. Someone with a Windows
> > build environment should try patching OpenSSL to treat WSAEINTR
> > the same as Unix EINTR and see what happens ...
>
> When I last looked at this (and this was some time ago), I suspected (and
> still do) that the problem is in the interaction between our
> socket-emulation-stuff (for signals) and openssl. I'm not entirely sure,
> but I wanted to rewrite the SSL code so that *our* code is responsible for
> aclling the actuall send()/recv(), and not OpenSSL. This would also fix the
> fact that if an OpenSSL network operation ends up blocking, that process
> can't receive any signals...
>
> I didn't have time to get this done before feature-freeze though, and I
> beleive the changes are large enough to qualify as such..
>
> //Magnus
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster
-- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB
http://postgres.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +