On Tue, Nov 22, 2011 at 11:22 AM, Emmanuel Lecharny <elecha...@gmail.com> wrote: > On 11/22/11 10:55 AM, pinus wrote: >> >> Emmanuel Lecharny wrote: >>> >>> Two things : >>> - you should urgently switch to 2.0.4, the latest (and stable) MINA >>> version. 2.0.0-RC1 is really old and buggy. >>> - your production TCP stack is likely to kill inactive TCP connections >>> after a 60 seconds delay. You should check your OS setting. >>> (http://tldp.org/HOWTO/TCP-Keepalive-HOWTO/overview.html) >>> >> I upgraded to version 2.0.4 but the problem persists. >> >> The last successful message was send about one second before. >> The acknowledgement the program is waiting for was send about 80ms >> before receiving sessionDestroyed(). >> >> I doubt that this is a KeepAlive issue. I checked the registry and the >> KeepAlive >> key is not set, meaning it is using the defaults. The other side uses >> defaults, too. >> And the defaults are far away from one second. >> >> How to make the return codes of the TCP stack visible? > > No need to send the same message 3 times... > > You said that the application is working fine in a test environment, but not > on a production server. Now, just asks yourself : what is the changing piece > ? Certainly not MINA. Keep digging on the TCP configuration on the server > and client. And don't forget any in the middle firewall, router etc. > > Or maybe you are not dealing with the same messages, and you've got some > error which has been un-noticed on the test env. > > In any case, you can inject a Logger interceptor on your chain to see what's > going on. > > You should try to capture the TCP stream with wireshark or tcpdump. Could give you a clue about what is triggering the end of TCP session.
Julien