tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Barker" <wbar...@wilshire.com>
Subject Re: Re: Re: APR Connector Shutdown Problem
Date Sat, 04 Feb 2006 03:49:43 GMT
I was doing a cut-and paste from the code in Httpd.  In tcnative, 's' is 
it's internal socket structure, and the APR socket is s->sock.

"Fenlason, Josh" <jfenlason@ptc.com> wrote in message 
news:CF83BAA719FD2C439D25CBB1C9D1D302B717F5@HQ-MAIL4.ptcnet.ptc.com...
I added the following line to
tomcat-native.1.1.1/jni/native/src/network.c (added at line 388):
apr_socket_opt_set( s, APR_SO_REUSEADDR, 1 );
But I'm still running into the same problem.

Does anyone who works on the APR Connector have any input on this?  Or
do I need to post this issue on the dev list?  Thanks.
,
Josh.

> -----Original Message-----
> From: news [mailto:news@sea.gmane.org] On Behalf Of Bill Barker
> Sent: Monday, January 30, 2006 10:07 PM
> To: users@tomcat.apache.org
> Subject: Re: Re: APR Connector Shutdown Problem
>
>
> Not by me, I don't really work on the APR Connector ;-).
>
> In the bind method in network.c is probably easiest.  If you
> want your patch
> to be accepted by the dev team, then you should probably wrap it in a
> '#ifndef WIN32' like httpd does (don't know why, and care
> even less :).
>
> "Fenlason, Josh" <jfenlason@ptc.com> wrote in message
> news:CF83BAA719FD2C439D25CBB1C9D1D302B717E9@HQ-MAIL4.ptcnet.ptc.com...
> Is there no intent to fix this issue?  Where would I need to
> make that patch?  Thanks. , Josh.
>
> > -----Original Message-----
> > From: news [mailto:news@sea.gmane.org] On Behalf Of Bill Barker
> > Sent: Friday, January 27, 2006 8:59 PM
> > To: users@tomcat.apache.org
> > Subject: Re: APR Connector Shutdown Problem
> >
> >
> > Yeah, the difference is that Httpd calls:
> >   apr_socket_opt_set(s, APR_SO_REUSEADDR, one);
> > on the Socket before binding it.  That allows it to bind
> even though
> > there are still half-closed sockets on systems like Solaris.
> >
> > About the only work-around is to hack the tcnative code,
> and recompile
> > it.
> >
> > "Fenlason, Josh" <jfenlason@ptc.com> wrote in message
> >
> news:CF83BAA719FD2C439D25CBB1C9D1D302B717E8@HQ-MAIL4.ptcnet.ptc.com...
> > I added the Listener you mentioned to server.xml, but I'm
> still seeing
> > the issue.  The problem is happening when run the
> shutdown.sh.  I can
> > understand if things aren't all clean and tidy if Tomcat
> crashed, but
> > you shouldn't have to wait 4 minutes to restart Tomcat
> after a planned
> > shutdown.  Apache doesn't work like that.  Any other suggestions on
> > how to get this to shutdown properly?  Thanks in advance. , Josh.
> >
> > > -----Original Message-----
> > > From: Mladen Turk [mailto:mladen.turk@jboss.com]
> > > Sent: Friday, January 27, 2006 1:24 AM
> > > To: Tomcat Users List
> > > Subject: Re: APR Connector Shutdown Problem
> > >
> > >
> > > Fenlason, Josh wrote:
> > > > I'm running into a problem with the APR connector not
> > shutting down
> > > > properly.  Tomcat runs fine and there are no errors on
> > > shutdown, but if
> > > > I shut Tomcat down and start it up again I get a socket
> > bind failed
> > > > error in the catalina log (attached).  I have to wait
> for several
> > > > minutes between shutdown and startup for Tomcat to be able
> > > to startup
> > > > correctly.  If I run Tomcat without the APR connector, I
> > > don't have this
> > > > issue.  This does not occur on Windows, but does on
> > Solaris and AIX.
> > > > Has anyone else seen this? One thing I noticed is that
> the first
> > > > thing logged on
> > > shutdown is an
> > > > "AjpAprProtocol pause" entry, but there is no shutdown,
> > > stop or destroy.
> > > > Is there any chance the APR connector is just getting
> > > paused and nothing
> > > > is actually stopping it?
> > > > Any help would be greatly appreciated.  Thanks in advance.
> > >
> > >
> > > I suppose you have:
> > > <Listener
> > className="org.apache.catalina.core.AprLifecycleListener" />
> > > in your server.xml
> > >
> > > But of course it doesn't guarantee it will be executed in
> > all cases,
> > > if the JVM crashes for example. On Solaris it can take up
> > to 4 minutes
> > > until the OS recycles the zombie socket.
> > > You can use:
> > > ndd -set /dev/tcp tcp_time_wait_interval 60000
> > > To lower that value.
> > >
> > > APR does not try to fool the OS like JVM, but rather behaves like
> > > Apache httpd.
> > >
> > > Regards,
> > > Mladen.
> > >
> > >
> > >
> > >
> >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > > For additional commands, e-mail: users-help@tomcat.apache.org
> > >
> >
> >
> >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> > For additional commands, e-mail: users-help@tomcat.apache.org
> >
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
> 




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


Mime
View raw message