I was running recently with that exact same configuration but did not
experience that problem.  Can you show some config files.

-Andy

-----Original Message-----
From: Shinta Tjio
To: [EMAIL PROTECTED]
Cc: 'Dan Milstein'
Sent: 3/6/01 7:01 PM
Subject: RE: FW: problem w/ ajp13 - if Tomcat is shutdown

I am using Tomcat 3.2.1, Apache 1.3.14, running on 
Solaris 2.8, Sun machines. 

After various attempts of debugging this, I have 
more information. 

1. Even though I'm setting the worker's property 
cache_size to default (1), I'm finding there 
are up to 6 connections opened from Apache to 
Tomcat. I deduce this by looking at the mod_jk.conf 
and by doing netstat. 

I finally find out, this is so because my Apache 
is set to spawn minimum of 6 children and each 
of those children are making separate connections 
to Tomcat. 

This is very bad because, I ended up having to 
reload 6 times before Tomcat starts serving me 
the page again. Each time it uses a different 
Apache children that has defunct socket. So the 
more Apache children I have, the longer it takes 
me to recover from this problem. 

2. It seems when Tomcat dies & restarts, the send() 
called by ajp13's jk_tcp_socket_sendfull() does not 
get an error. But the recv() does get an error, with 
errno ECONNRESET. After which, the socket is properly 
closed. 

3. When I shutdown Tomcat, those sockets that were 
opened between Apache/Tomcat showed up in state 
CLOSE_WAIT, and FIN_WAIT2. I think this is normally 
solved by calling the shutdown() API after closing 
the socket. However, this would have to be done from 
the Tomcat side in Ajp13ConnectionHandler.java. 
I can't find the corresponding method of Socket 
in Java. 

So.. based on all of these, the only fix I can think 
of putting is to make mod_jk retry the send() if 
recv() comes back with an error ECONNRESET. The retry 
should happen after the old socket is properly closed. 

Anyone wants to comment? 

shinta 
  

> -----Original Message----- 
> From: Dan Milstein [ mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
] 
> Sent: Tuesday, March 06, 2001 12:00 PM 
> To: [EMAIL PROTECTED] 
> Subject: Re: FW: problem w/ ajp13 - if Tomcat is shutdown 
> 
> 
> What version of TC are you using?  What version of Apache? 
> 
> I would look into the mod_jk docs -- I think this is the 
> spec'd behavior 
> (which, admittedly, is not great, but that makes it more of a feature 
> request than a bug ;-).  With ajp13, Apache opens up a 
> persistent TCP/IP 
> connection TC -- if TC restarts, I think that connection may 
> just hang up 
> and then timeout (since Apache doesn't know that TC has restarted). 
> 
> If anyone wants to work on this, you would have the undying 
> thanks of the 
> rest of the TC community -- having to restart Apache all the 
> time bugs a 
> *lot* of people. 
> 
> -Dan 
> 
> > Shinta Tjio wrote: 
> > 
> > I'm having problem with mod_jk if ajp13 is used. 
> > 
> > The problem is often reproduced when Tomcat is shut 
> > down without Apache being shut down. When a request 
> > is fired through Apache as soon as Tomcat starts, 
> > I often get Internal Server Error. The mod_jk.log 
> > will have the following: 
> > 
> > > [jk_uri_worker_map.c (344)]: Into 
> jk_uri_worker_map_t::map_uri_to_worker 
> > 
> > > [jk_uri_worker_map.c (406)]: 
> jk_uri_worker_map_t::map_uri_to_worker, 
> > >   Found a match ajp13 
> > > [jk_worker.c (123)]: Into wc_get_worker_for_name ajp13 
> > > [jk_worker.c (127)]: wc_get_worker_for_name, done  found a worker 
> > > [jk_ajp13_worker.c (651)]: Into jk_worker_t::get_endpoint 
> > > [jk_ajp13_worker.c (536)]: Into jk_endpoint_t::service 
> > > [jk_ajp13.c (346)]: Into ajp13_marshal_into_msgb 
> > > [jk_ajp13.c (480)]: ajp13_marshal_into_msgb - Done 
> > > [jk_ajp13_worker.c (203)]: connection_tcp_get_message: Error - 
> > >    jk_tcp_socket_recvfull failed 
> > > [jk_ajp13_worker.c (619)]: Error reading request 
> > > [jk_ajp13_worker.c (489)]: Into jk_endpoint_t::done 
> > 
> > If I hit reload multiple times, eventually Tomcat will 
> > serve the servlet fine. 
> > 
> > Did anyone see this problem before? Is there anyway 
> > around this? 
> > 
> > shinta 
> 
> -- 
> 
> Dan Milstein // [EMAIL PROTECTED] 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to