You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Saurabh Barthwal <sb...@gmail.com> on 2019/10/18 13:57:16 UTC

tomcat 8 post call lost in process

Hi Team,
I am facing one unusual problem with tomcat. I am using 2 tomcat server for
master and slave architecture.
when master send's HTTP request(POST) to slave if slave is taking more then
1 hr then the slave tomcat is not responding back but in slave tomcat's
localhost_access.log is showing request as 200 ok but that is not revived
by master tomcat server there is no time out (we are using infinite
connection time out ) send I checked master's tcp connection after 1 hr it
is good(ESTABLISHED).

So I tried to capture all requests at slave server's tcp port by tcpdump
but the request is lost after tomcat logs into   localhost_access.log(as a
success) but not went to tcp port. No idea where the request lost.

Details and logs :
tomcat 8.0
------------
*localhost_access_log.txt of slave*

xx.xx.xx.xx - - [18/Oct/2019:08:51:07 -0400] "POST /path/process5 HTTP/1.1"
200 2737


*tcpdump output at slave *

reading from file /tmp/http18103.log, link-type EN10MB (Ethernet)
07:36:32.960401 IP xx.xx.xx.xx.52978 > slaveServer.webcache: Flags [P.],
seq 282516513:282516889, ack 3687166207, win 229, options [nop,nop,TS val
3093985757 ecr 3091920822], length 376: HTTP: POST /path/process1 HTTP/1.1
07:36:34.783281 IP slaveServer.webcache > xx.xx.xx.xx.52978: Flags [.], seq
1:2577, ack 2838, win 280, options [nop,nop,TS val 3091922673 ecr
3093985759], length 2576: HTTP: HTTP/1.1 200
07:36:45.022982 IP xx.xx.xx.xx.53120 > slaveServer.webcache: Flags [P.],
seq 1539707126:1539707502, ack 2187000281, win 229, options [nop,nop,TS val
3093997820 ecr 3091932884], length 376: HTTP: POST /path/process2 HTTP/1.1
07:36:56.300518 IP slaveServer.webcache > xx.xx.xx.xx.53120: Flags [.], seq
1:2577, ack 3329, win 300, options [nop,nop,TS val 3091944190 ecr
3093997820], length 2576: HTTP: HTTP/1.1 200
07:36:56.512553 IP xx.xx.xx.xx.53232 > slaveServer.webcache: Flags [P.],
seq 2909077325:2909077700, ack 2040056900, win 229, options [nop,nop,TS val
3094009310 ecr 3091944374], length 375: HTTP: POST /path/process3 HTTP/1.1
07:37:27.209286 IP slaveServer.webcache > xx.xx.xx.xx.53232: Flags [.], seq
1:2577, ack 3557, win 300, options [nop,nop,TS val 3091975099 ecr
3094009310], length 2576: HTTP: HTTP/1.1 200
07:37:27.404865 IP xx.xx.xx.xx.53551 > slaveServer.webcache: Flags [P.],
seq 1996723440:1996723817, ack 1343133109, win 229, options [nop,nop,TS val
3094040204 ecr 3091975267], length 377: HTTP: POST /path/process4 HTTP/1.1
07:37:28.932928 IP slaveServer.webcache > xx.xx.xx.xx.53551: Flags [.], seq
1:2577, ack 3548, win 300, options [nop,nop,TS val 3091976823 ecr
3094040204], length 2576: HTTP: HTTP/1.1 200
07:37:29.120056 IP xx.xx.xx.xx.53580 > slaveServer.webcache: Flags [P.],
seq 1734970332:1734970711, ack 390079555, win 229, options [nop,nop,TS val









*3094041920 ecr 3091976982], length 379: HTTP: POST /path/process5
HTTP/1.108:51:23.325430 IP slaveServer.webcache > xx.xx.xx.xx.53580: Flags
[.], seq 1:2577, ack 5366, win 326, options [nop,nop,TS val 3096411215 ecr
3094041920], length 2576: HTTP: HTTP/1.1 20008:51:23.607888 IP
slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366,
win 326, options [nop,nop,TS val 3096411498 ecr 3094041920], length 1288:
HTTP: HTTP/1.1 20008:51:24.066861 IP slaveServer.webcache >
xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366, win 326, options
[nop,nop,TS val 3096411957 ecr 3094041920], length 1288: HTTP: HTTP/1.1
20008:51:24.985860 IP slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.],
seq 1:1289, ack 5366, win 326, options [nop,nop,TS val 3096412876 ecr
3094041920], length 1288: HTTP: HTTP/1.1 20008:51:26.821888 IP
slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366,
win 326, options [nop,nop,TS val 3096414712 ecr 3094041920], length 1288:
HTTP: HTTP/1.1 20008:51:30.493846 IP slaveServer.webcache >
xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366, win 326, options
[nop,nop,TS val 3096418384 ecr 3094041920], length 1288: HTTP: HTTP/1.1
20008:51:37.837868 IP slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.],
seq 1:1289, ack 5366, win 326, options [nop,nop,TS val 3096425728 ecr
3094041920], length 1288: HTTP: HTTP/1.1 20008:51:52.525862 IP
slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366,
win 326, options [nop,nop,TS val 3096440416 ecr 3094041920], length 1288:
HTTP: HTTP/1.1 20008:52:21.869807 IP slaveServer.webcache >
xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366, win 326, options
[nop,nop,TS val 3096469760 ecr 3094041920], length 1288: HTTP: HTTP/1.1 200*

Re: tomcat 8 post call lost in process

Posted by "André Warnier (tomcat)" <aw...@ice-sa.com>.
Hi.

It is unfortunately a bit difficult to make sense of the description and information that 
you provide below.

But one thing is quite certain :
By the time tomcat (if I understand correctly, the one that you call the "slave") writes a 
line to its access log, with a result code "200 OK", it means that this tomcat not only 
*received* the request, but also that it *processed* this request, succesfully, *and* sent 
the response back (also succesfully) to whoever sent this request to it.

It is difficult to read the tcpdump log that you provide below, but it looks like it also 
shows that for each POST from the "master" to the "slave", there is a HTTP response with 
code 200 OK, from the "slave" to the "master".
Why do you think that these responses are being "lost" ?

Maybe you should have a closer look at the application on the "master" side, to see why it 
does not seem to catch the slave responses ?

Also, take into account that if the /application/ on the "master" side makes a connection 
to the slave, this is not tomcat code, it is the application code, and tomcat itself (the 
master) knows nothing about this. So there is little that we can do to help you.



On 18.10.2019 15:57, Saurabh Barthwal wrote:
> Hi Team,
> I am facing one unusual problem with tomcat. I am using 2 tomcat server for
> master and slave architecture.
> when master send's HTTP request(POST) to slave if slave is taking more then
> 1 hr then the slave tomcat is not responding back but in slave tomcat's
> localhost_access.log is showing request as 200 ok but that is not revived
> by master tomcat server there is no time out (we are using infinite
> connection time out ) send I checked master's tcp connection after 1 hr it
> is good(ESTABLISHED).
>
> So I tried to capture all requests at slave server's tcp port by tcpdump
> but the request is lost after tomcat logs into   localhost_access.log(as a
> success) but not went to tcp port. No idea where the request lost.
>
> Details and logs :
> tomcat 8.0
> ------------
> *localhost_access_log.txt of slave*
>
> xx.xx.xx.xx - - [18/Oct/2019:08:51:07 -0400] "POST /path/process5 HTTP/1.1"
> 200 2737
>
>
> *tcpdump output at slave *
>
> reading from file /tmp/http18103.log, link-type EN10MB (Ethernet)
> 07:36:32.960401 IP xx.xx.xx.xx.52978 > slaveServer.webcache: Flags [P.],
> seq 282516513:282516889, ack 3687166207, win 229, options [nop,nop,TS val
> 3093985757 ecr 3091920822], length 376: HTTP: POST /path/process1 HTTP/1.1
> 07:36:34.783281 IP slaveServer.webcache > xx.xx.xx.xx.52978: Flags [.], seq
> 1:2577, ack 2838, win 280, options [nop,nop,TS val 3091922673 ecr
> 3093985759], length 2576: HTTP: HTTP/1.1 200
> 07:36:45.022982 IP xx.xx.xx.xx.53120 > slaveServer.webcache: Flags [P.],
> seq 1539707126:1539707502, ack 2187000281, win 229, options [nop,nop,TS val
> 3093997820 ecr 3091932884], length 376: HTTP: POST /path/process2 HTTP/1.1
> 07:36:56.300518 IP slaveServer.webcache > xx.xx.xx.xx.53120: Flags [.], seq
> 1:2577, ack 3329, win 300, options [nop,nop,TS val 3091944190 ecr
> 3093997820], length 2576: HTTP: HTTP/1.1 200
> 07:36:56.512553 IP xx.xx.xx.xx.53232 > slaveServer.webcache: Flags [P.],
> seq 2909077325:2909077700, ack 2040056900, win 229, options [nop,nop,TS val
> 3094009310 ecr 3091944374], length 375: HTTP: POST /path/process3 HTTP/1.1
> 07:37:27.209286 IP slaveServer.webcache > xx.xx.xx.xx.53232: Flags [.], seq
> 1:2577, ack 3557, win 300, options [nop,nop,TS val 3091975099 ecr
> 3094009310], length 2576: HTTP: HTTP/1.1 200
> 07:37:27.404865 IP xx.xx.xx.xx.53551 > slaveServer.webcache: Flags [P.],
> seq 1996723440:1996723817, ack 1343133109, win 229, options [nop,nop,TS val
> 3094040204 ecr 3091975267], length 377: HTTP: POST /path/process4 HTTP/1.1
> 07:37:28.932928 IP slaveServer.webcache > xx.xx.xx.xx.53551: Flags [.], seq
> 1:2577, ack 3548, win 300, options [nop,nop,TS val 3091976823 ecr
> 3094040204], length 2576: HTTP: HTTP/1.1 200
> 07:37:29.120056 IP xx.xx.xx.xx.53580 > slaveServer.webcache: Flags [P.],
> seq 1734970332:1734970711, ack 390079555, win 229, options [nop,nop,TS val
>
>
>
>
>
>
>
>
>
> *3094041920 ecr 3091976982], length 379: HTTP: POST /path/process5
> HTTP/1.108:51:23.325430 IP slaveServer.webcache > xx.xx.xx.xx.53580: Flags
> [.], seq 1:2577, ack 5366, win 326, options [nop,nop,TS val 3096411215 ecr
> 3094041920], length 2576: HTTP: HTTP/1.1 20008:51:23.607888 IP
> slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366,
> win 326, options [nop,nop,TS val 3096411498 ecr 3094041920], length 1288:
> HTTP: HTTP/1.1 20008:51:24.066861 IP slaveServer.webcache >
> xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366, win 326, options
> [nop,nop,TS val 3096411957 ecr 3094041920], length 1288: HTTP: HTTP/1.1
> 20008:51:24.985860 IP slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.],
> seq 1:1289, ack 5366, win 326, options [nop,nop,TS val 3096412876 ecr
> 3094041920], length 1288: HTTP: HTTP/1.1 20008:51:26.821888 IP
> slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366,
> win 326, options [nop,nop,TS val 3096414712 ecr 3094041920], length 1288:
> HTTP: HTTP/1.1 20008:51:30.493846 IP slaveServer.webcache >
> xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366, win 326, options
> [nop,nop,TS val 3096418384 ecr 3094041920], length 1288: HTTP: HTTP/1.1
> 20008:51:37.837868 IP slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.],
> seq 1:1289, ack 5366, win 326, options [nop,nop,TS val 3096425728 ecr
> 3094041920], length 1288: HTTP: HTTP/1.1 20008:51:52.525862 IP
> slaveServer.webcache > xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366,
> win 326, options [nop,nop,TS val 3096440416 ecr 3094041920], length 1288:
> HTTP: HTTP/1.1 20008:52:21.869807 IP slaveServer.webcache >
> xx.xx.xx.xx.53580: Flags [.], seq 1:1289, ack 5366, win 326, options
> [nop,nop,TS val 3096469760 ecr 3094041920], length 1288: HTTP: HTTP/1.1 200*
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org