On Wed, Dec 12, 2007 at 12:30:50AM -0500, Tom Lane wrote:
> "Trevor Talbot" <quension(at)gmail(dot)com> writes:
> > On 12/11/07, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)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..
In response to
pgsql-hackers by date
|Next:||From: Dimitri Fontaine||Date: 2007-12-12 10:19:02|
|Subject: Re: VLDB Features|
|Previous:||From: Gregory Stark||Date: 2007-12-12 08:55:24|
|Subject: Re: Slow PITR restore|