tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Konstantin Preißer <>
Subject RE: svn commit: r1530081 - /tomcat/trunk/java/org/apache/tomcat/util/net/
Date Tue, 08 Oct 2013 21:34:28 GMT
Hi Mark,

> -----Original Message-----
> From: Mark Thomas []
> Sent: Tuesday, October 8, 2013 3:57 PM
> To: Tomcat Developers List
> Subject: Re: svn commit: r1530081 -
> /tomcat/trunk/java/org/apache/tomcat/util/net/
> None. I've seem the same problem but haven't got to the bottom of it
> yet. What I do know is:
> - Tomcat doesn't send a close
> - The browser closes the connection on its own
> - Tomcat tries (and fails) to write some data and that triggers the
>   close on the Tomcat side
> I'm wondering if some form of data corruption could be the trigger.
> Whatever is going on, I'm fairly sure it is a different issue to BZ 55633.
> I need to do some more careful analysis with Wireshark.

OK, thanks.

Note: When I tested this scenario, I got a slightly other result: For me, Tomcat initiated
the shutdown of TCP connection. (And another issue: When/After this happens, if the browser
tries to establishes a new Websocket connection (with a Upgrade: ... header) then tomcat sometimes
shuts down the TCP connection without sending a reply).

Some more background:
I wrote a program in .Net/C# that can forward TCP connections by listening on a local TCP
port and forwarding incoming TCP connections to a remote host. It logs events (local/remote
connection opened, closed, aborted; data received) and it is able to "pause" one side of a
connection (e.g. the transfer of data from client to server and from server to client). When
pausing, it stops to read from the corresponding side of the TCP connections, and after resuming,
continues to read from them.

I used it to debug the problems simulating a browser that stops to read from the connection
and then some time later continues to read from it (instead of suspending the browser process).

Now, when I'm pausing the transfer from Tomcat to the browser (so that the other snakes stop
moving) and continuing it, I can see that Tomcat initiates the shutdown of the TCP connection,
and after that the browser aborts the connection. E.g. when I pause the transfer, then resume
it and immediately pause it again, then about 1 second later one snake disappears on the other
browser but the browser connected to the forwarder program has its Websocket connection still
opened. When I resume the data transfer then the browser receives the connection shutdown
and aborts the connection.
If you (or anybody else) have interest I can share the sources (and binaries) of the program
to help debugging the problems.

Konstantin Preißer

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message