Subject Re: Another "connection forcibly closed by the remote host" problem
Author Scott Moon
--- In, Helen Borrie <helebor@...> wrote:
> It's not a Firebird bug but a Windows one. So use DPI at your own
> peril. When next you post a message with the subject: "Unexplained
> server crash", or "Dead connections don't go away", don't forget to
> mention that you applied this workaround to avoid researching the
> actual reason that the socket keepalive function is timing out early
> in your environment....
> ./heLen

Helen - If you've read or followed this thread at all for the past
month, you should know that I've done little else in that time besides
work to pin-point what is causing this problem so that I could report
the solution back here. So please don't come at me with "you applied
this workaround to avoid researching the actual reason that the socket
keepalive function is timing out early in your environment..." That's
out of line, and is beneath you. I've done almost nothing for the past
5 weeks but research the actual reason. And despite all the other
helpful advice and suggestions I've gotten from all the experts here,
Dimitry's workaround is the only thing that has worked. I have at
least managed to pin down the configuration where the problem occurs.

Having gone through the number of tests I have performed, on the
number of configurations of hardware and software I have performed
them on in the past month (all catalogued previously in this now
unbelievably long thread), I am in no way convinced that the blame
lies strictly with Windows (or multiple Xeon processors, or VMWare,

I have tested virtually every combination of
single/multiple/Xeon/Pentium processors, Win2000/Win2003,
VMWare/Non-virtual server, and FB versions 1.0.3/1.5.2/1.5.3/2.0, and
the ONLY combinations where the disconnections occur is on a multiple
Xeon physical machine, Linux OS hosting a VMWare ESX VM configured to
use one CPU, with Win2003 OS running in the VM, with Firebird v1.5.2,
v1.5.3, or 2.0. Like I've said before in this thread, I can't find the
1.5.0 or 1.5.1 install kits to test them. If someone knows where I can
find those, let me know so I can determine the earliest FB version
that is affected.

- The same configuration running FB v1.0.3 runs perfectly - maintains
open and idle connections for days.
- Same configuration with Win2000 instead of 2003 is fine.
- Same configuration on a Pentium machine is fine.
- Same configuration on a traditional (non-virtual) server is fine.
- etc, etc.

I have changed every variable, and the system will maintain a
connection as long as the network is available. If I change to
Firebird 1.5.2 or later, the connection is broken after 60 minutes
EVERY TIME, unless I change the DummyPacketInterval to something other
than the default. Sounds like a Firebird problem to me.

Sorry if I sound a little irritated, but I've worked too hard for too
long on this problem, and so far all that I've found is a workaround
that makes me nervous as hell, because it was reportedly fixed in
1.5.1, and now is reportedly fixed again. I am irritated - a lot!

I'm putting out the flames and stepping off my soapbox now.