> > > >Apparantly there is a bug lurking somewhere in pgwin32_select(). Because > > > >if I put a #undef select right before the select in pgstat.c, the > > > >regression tests pass. > > > > > > May be, problem is related to fixed bug in pgwin32_waitforsinglesocket() ? > > > WaitForMultipleObjectsEx might sleep indefinitely while waiting socket to > > > write, so, may be there is symmetrical problem with read? Or > > > pgwin32_select() is used for waiting write too? > > > > > > pgwin32_waitforsinglesocket() appears to work fine. And we only use > > FD_READ, so it's not affected by your patch from what I can tell. > > > > I've got it passnig tests with select replaced with waitforsinglesocket > > - now I just need to implement timeout in that one :-) > > Attached patch seems to solve the problem on my machine at least. Uses > pgwin32_waitforsinglesocket() instead of pgwin32_select(). Changes > pgwin32_waitforsinglesocket() to accept the timeout as a parameter (this > is why it touches files outside of the stats area). Magnus - thanks for your investigation and work! Any chance I could get a patched exe for win32 and test on my servers?