You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Ajit Narayanan <aj...@techmahindra.com> on 2006/05/18 09:51:09 UTC

FW: tomcat hangs with error msg-"All Threads are Busy....."

 
hi,
 
My tomcat 4.1.27 is running on sun Solaris 8 box but ocassionally it hangs
out giving the error " All threads are busy, waiting. Please increase
maxThreads or check the servlet status75".  I have tried increasing the no
of threads but its not working I guess.  The application code looks clean
but can there be any compatibility issues (of tomcat and JDK) with the
solaris POSIX thread libraries?? If there is  any problem then what can be
done to resolve this problem. One more thing restarting the tomcat manually
resolves the problem.
 
regards,
Ajit.


============================================================================================================================

Tech Mahindra, formerly Mahindra-British Telecom.
 

Disclaimer:


The contents of this E-mail (including the contents of the enclosure(s) or attachment(s) if any) are privileged and confidential material of Tech Mahindra and should not be disclosed to, used by or copied in any manner by anyone other than the intended addressee(s). In case you are not the desired addressee, you should delete this message and/or re-direct it to the sender. The views expressed in this E-mail message (including the enclosure(s) or attachment(s) if any) are those of the individual sender, except where the sender expressly, and with authority, states them to be the views of Tech Mahindra.


This e-mail message including attachment/(s), if any, is believed to be free of any virus. However, it is the responsibility of the recipient to ensure that it is virus free and Tech Mahindra is not responsible for any loss or damage arising in any way from its use.

============================================================================================================================

Re: FW: tomcat hangs with error msg-"All Threads are Busy....."

Posted by David Delbecq <de...@oma.be>.
I think you should not use synchronized sections / mutex to get 
informations from client. Common policy in using mutex is to keep them 
as little time as possible and do only the critical work inside the 
exclusive part.This is to prevent long waiting queues and ... things 
like that :)
Ajit Narayanan wrote:
> You are right! 
>
> The code does implement a mutex() part. But the problem lasted for 7 days
> untill the server was restarted manually.
>
> There were about 15 threads which were found to be in locked state.And for
> all these days tomcat was not accepting any requests.
>
> Do you think Dev that this could have happened under the conditions that you
> have mentioned .
>
>
> And the following message was found in the catalina.out log file:
>
> Dec 7, 2004 3:44:37 PM 
> org.apache.tomcat.util.threads.ThreadPool logFull
>                 SEVERE: All threads are busy, waiting. Please increase
> maxThreads or check the servlet status75 75  
>
>
>
>
>
>
>
>
> -----Original Message-----
> From: David Delbecq [mailto:delbd@oma.be] 
> Sent: Thursday, May 18, 2006 2:35 PM
> To: Tomcat Users List
> Subject: Re: FW: tomcat hangs with error msg-"All Threads are Busy....."
>
> ok, i bet then you problem is in this :D:
>
> au.com.AdmTech.incontrol.secureproxy.SecureProxy.doGet(SecureProxy.java:298)
> 	- locked <0xf227ea88> (a
> au.com.alcatel.incontrol.secureproxy.SecureProxy)
> 	at
> au.com.AdMtech.incontrol.secureproxy.SecureProxy.doPost(SecureProxy.java:435
> )
>
> it uses a lock to a ressource or there is a synchronized method in the way.
> As such, until one process has finished, others can't start working. 
> This is bad :)
> As a consequence, if one of clients is not responding but not sending data
> to the wire, it locks everything.
> In normal course of operation, you end up with a connection closed exception
> in socketinputstream.read() but it takes time to get them. and the delay is
> platform dependant. if client abruptly close, TCP/IP protocol has no
> information  about this except for a very long delay.
>
> Maybe some protocol level tunings like keep alives might help :/
>
> Anyway, this has nothing to do with GC :)
>
> Ajit Narayanan wrote:
>   
>> Thanx for ur interest Dav.I am fairly new to java and tomcat 
>> programming so I am bit low on debugging these.
>>
>> Yes,I do have some of the data from the dumps, I don't know whether 
>> these will be of any help or not but this what I have.This happened on 
>> live about
>> 7 months ago and it has been reopened on cux demand ,a workaround has 
>> been patched where in the socket gets realesed after some 90- secs.The 
>> following dump has been taken before this workaround:
>>
>> "Thread-540" daemon prio=5 tid=0x0048b9e0 nid=0x33a runnable 
>> [ee47f000..ee4819a8]
>> 	at java.net.SocketInputStream.socketRead0(Native Method)
>> 	at java.net.SocketInputStream.read(Unknown Source)
>> 	at
>> org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.
>> java:7
>> 77)
>> 	at
>> org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.do
>> Read(I
>> nternalInputBuffer.java:807)
>> 	at
>> org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityIn
>> putFil
>> ter.java:158)
>> 	at
>> org.apache.coyote.http11.InternalInputBuffer.doRead(InternalInputBuffe
>> r.java
>> :742)
>> 	at org.apache.coyote.Request.doRead(Request.java:431)
>> 	at
>> org.apache.coyote.tomcat4.CoyoteInputStream.readBytes(CoyoteInputStrea
>> m.java
>> :199)
>> 	at
>>
>>     
> org.apache.coyote.tomcat4.CoyoteInputStream.read(CoyoteInputStream.java:156)
>   
>> 	at
>> org.apache.coyote.tomcat4.CoyoteRequest.readPostBody(CoyoteRequest.jav
>> a:1983
>> )
>> 	at
>> org.apache.coyote.tomcat4.CoyoteRequest.parseRequestParameters(CoyoteR
>> equest
>> .java:1965)
>> 	at
>>
>>     
> org.apache.coyote.tomcat4.CoyoteRequest.getParameter(CoyoteRequest.java:911)
>   
>> 	at
>> org.apache.coyote.tomcat4.CoyoteRequestFacade.getParameter(CoyoteReque
>> stFaca
>> de.java:178)
>> 	at
>>
>>     
> au.com.AdmTech.incontrol.secureproxy.SecureProxy.doGet(SecureProxy.java:298)
>   
>> 	- locked <0xf227ea88> (a
>> au.com.alcatel.incontrol.secureproxy.SecureProxy)
>> 	at
>> au.com.AdMtech.incontrol.secureproxy.SecureProxy.doPost(SecureProxy.ja
>> va:435
>> )
>> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>>
>> And there are 71 threads waiting to lock <0xf227ea88>:
>>
>> "- waiting to lock <0xf227ea88>
>>
>> Apart from what you suggested can this be a problem of compatibility 
>> between tomcat-JDK and the POSIX lib of solaris?
>> Or can it be that the gc is not able to execute as generally the load 
>> on this proxy is very high leading to such a problem.
>>
>> Thanks and regards,
>> Ajit.
>>   
>>
>> -----Original Message-----
>> From: David Delbecq [mailto:delbd@oma.be]
>> Sent: Thursday, May 18, 2006 1:32 PM
>> To: Tomcat Users List
>> Subject: Re: FW: tomcat hangs with error msg-"All Threads are Busy....."
>>
>> This most probably means there is deadlock somewhere in your 
>> webapplication, leading to HTTP threads  not being released because 
>> they are stuck waiting for something before sending response to a user
>>     
> that dropped hours agos.
>   
>> To get clues on where your problem is when this happens, send signal 
>> SIGQUIT to tomcat process, it will force the sun JVM to dump all threads
>>     
> stacks.
>   
>> Regards,
>> David Delbecq
>> Ajit Narayanan wrote:
>>   
>>     
>>>  
>>> hi,
>>>  
>>> My tomcat 4.1.27 is running on sun Solaris 8 box but ocassionally it 
>>> hangs out giving the error " All threads are busy, waiting. Please 
>>> increase maxThreads or check the servlet status75".  I have tried 
>>> increasing the no of threads but its not working I guess.  The 
>>> application code looks clean but can there be any compatibility 
>>> issues (of tomcat and JDK) with the solaris POSIX thread libraries?? 
>>> If there is  any problem then what can be done to resolve this 
>>> problem. One more thing restarting the tomcat manually resolves the
>>>       
> problem.
>   
>>>  
>>> regards,
>>> Ajit.
>>>
>>>
>>> =====================================================================
>>> = ======================================================
>>>
>>> Tech Mahindra, formerly Mahindra-British Telecom.
>>>  
>>>
>>> Disclaimer:
>>>
>>>
>>> The contents of this E-mail (including the contents of the 
>>> enclosure(s) or
>>>     
>>>       
>> attachment(s) if any) are privileged and confidential material of Tech 
>> Mahindra and should not be disclosed to, used by or copied in any 
>> manner by anyone other than the intended addressee(s). In case you are 
>> not the desired addressee, you should delete this message and/or re-direct
>>     
> it to the sender.
>   
>> The views expressed in this E-mail message (including the enclosure(s) 
>> or
>> attachment(s) if any) are those of the individual sender, except where 
>> the sender expressly, and with authority, states them to be the views 
>> of Tech Mahindra.
>>   
>>     
>>> This e-mail message including attachment/(s), if any, is believed to 
>>> be
>>>     
>>>       
>> free of any virus. However, it is the responsibility of the recipient 
>> to ensure that it is virus free and Tech Mahindra is not responsible 
>> for any loss or damage arising in any way from its use.
>>   
>>     
>>> =====================================================================
>>> = ======================================================
>>>   
>>>     
>>>       
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
>>
>>
>> ======================================================================
>> ======================================================
>>
>> Tech Mahindra, formerly Mahindra-British Telecom.
>>  
>>
>> Disclaimer:
>>
>>
>> The contents of this E-mail (including the contents of the enclosure(s) or
>>     
> attachment(s) if any) are privileged and confidential material of Tech
> Mahindra and should not be disclosed to, used by or copied in any manner by
> anyone other than the intended addressee(s). In case you are not the desired
> addressee, you should delete this message and/or re-direct it to the sender.
> The views expressed in this E-mail message (including the enclosure(s) or
> attachment(s) if any) are those of the individual sender, except where the
> sender expressly, and with authority, states them to be the views of Tech
> Mahindra.
>   
>> This e-mail message including attachment/(s), if any, is believed to be
>>     
> free of any virus. However, it is the responsibility of the recipient to
> ensure that it is virus free and Tech Mahindra is not responsible for any
> loss or damage arising in any way from its use.
>   
>> ======================================================================
>> ======================================================
>>
>> ---------------------------------------------------------------------
>> 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
>
>
> ============================================================================================================================
>
> Tech Mahindra, formerly Mahindra-British Telecom.
>  
>
> Disclaimer:
>
>
> The contents of this E-mail (including the contents of the enclosure(s) or attachment(s) if any) are privileged and confidential material of Tech Mahindra and should not be disclosed to, used by or copied in any manner by anyone other than the intended addressee(s). In case you are not the desired addressee, you should delete this message and/or re-direct it to the sender. The views expressed in this E-mail message (including the enclosure(s) or attachment(s) if any) are those of the individual sender, except where the sender expressly, and with authority, states them to be the views of Tech Mahindra.
>
>
> This e-mail message including attachment/(s), if any, is believed to be free of any virus. However, it is the responsibility of the recipient to ensure that it is virus free and Tech Mahindra is not responsible for any loss or damage arising in any way from its use.
>
> ============================================================================================================================
>
> ---------------------------------------------------------------------
> 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


RE: FW: tomcat hangs with error msg-"All Threads are Busy....."

Posted by Ajit Narayanan <aj...@techmahindra.com>.
You are right! 

The code does implement a mutex() part. But the problem lasted for 7 days
untill the server was restarted manually.

There were about 15 threads which were found to be in locked state.And for
all these days tomcat was not accepting any requests.

Do you think Dev that this could have happened under the conditions that you
have mentioned .


And the following message was found in the catalina.out log file:

Dec 7, 2004 3:44:37 PM 
org.apache.tomcat.util.threads.ThreadPool logFull
                SEVERE: All threads are busy, waiting. Please increase
maxThreads or check the servlet status75 75  








-----Original Message-----
From: David Delbecq [mailto:delbd@oma.be] 
Sent: Thursday, May 18, 2006 2:35 PM
To: Tomcat Users List
Subject: Re: FW: tomcat hangs with error msg-"All Threads are Busy....."

ok, i bet then you problem is in this :D:

au.com.AdmTech.incontrol.secureproxy.SecureProxy.doGet(SecureProxy.java:298)
	- locked <0xf227ea88> (a
au.com.alcatel.incontrol.secureproxy.SecureProxy)
	at
au.com.AdMtech.incontrol.secureproxy.SecureProxy.doPost(SecureProxy.java:435
)

it uses a lock to a ressource or there is a synchronized method in the way.
As such, until one process has finished, others can't start working. 
This is bad :)
As a consequence, if one of clients is not responding but not sending data
to the wire, it locks everything.
In normal course of operation, you end up with a connection closed exception
in socketinputstream.read() but it takes time to get them. and the delay is
platform dependant. if client abruptly close, TCP/IP protocol has no
information  about this except for a very long delay.

Maybe some protocol level tunings like keep alives might help :/

Anyway, this has nothing to do with GC :)

Ajit Narayanan wrote:
> Thanx for ur interest Dav.I am fairly new to java and tomcat 
> programming so I am bit low on debugging these.
>
> Yes,I do have some of the data from the dumps, I don't know whether 
> these will be of any help or not but this what I have.This happened on 
> live about
> 7 months ago and it has been reopened on cux demand ,a workaround has 
> been patched where in the socket gets realesed after some 90- secs.The 
> following dump has been taken before this workaround:
>
> "Thread-540" daemon prio=5 tid=0x0048b9e0 nid=0x33a runnable 
> [ee47f000..ee4819a8]
> 	at java.net.SocketInputStream.socketRead0(Native Method)
> 	at java.net.SocketInputStream.read(Unknown Source)
> 	at
> org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.
> java:7
> 77)
> 	at
> org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.do
> Read(I
> nternalInputBuffer.java:807)
> 	at
> org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityIn
> putFil
> ter.java:158)
> 	at
> org.apache.coyote.http11.InternalInputBuffer.doRead(InternalInputBuffe
> r.java
> :742)
> 	at org.apache.coyote.Request.doRead(Request.java:431)
> 	at
> org.apache.coyote.tomcat4.CoyoteInputStream.readBytes(CoyoteInputStrea
> m.java
> :199)
> 	at
>
org.apache.coyote.tomcat4.CoyoteInputStream.read(CoyoteInputStream.java:156)
> 	at
> org.apache.coyote.tomcat4.CoyoteRequest.readPostBody(CoyoteRequest.jav
> a:1983
> )
> 	at
> org.apache.coyote.tomcat4.CoyoteRequest.parseRequestParameters(CoyoteR
> equest
> .java:1965)
> 	at
>
org.apache.coyote.tomcat4.CoyoteRequest.getParameter(CoyoteRequest.java:911)
> 	at
> org.apache.coyote.tomcat4.CoyoteRequestFacade.getParameter(CoyoteReque
> stFaca
> de.java:178)
> 	at
>
au.com.AdmTech.incontrol.secureproxy.SecureProxy.doGet(SecureProxy.java:298)
> 	- locked <0xf227ea88> (a
> au.com.alcatel.incontrol.secureproxy.SecureProxy)
> 	at
> au.com.AdMtech.incontrol.secureproxy.SecureProxy.doPost(SecureProxy.ja
> va:435
> )
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>
> And there are 71 threads waiting to lock <0xf227ea88>:
>
> "- waiting to lock <0xf227ea88>
>
> Apart from what you suggested can this be a problem of compatibility 
> between tomcat-JDK and the POSIX lib of solaris?
> Or can it be that the gc is not able to execute as generally the load 
> on this proxy is very high leading to such a problem.
>
> Thanks and regards,
> Ajit.
>   
>
> -----Original Message-----
> From: David Delbecq [mailto:delbd@oma.be]
> Sent: Thursday, May 18, 2006 1:32 PM
> To: Tomcat Users List
> Subject: Re: FW: tomcat hangs with error msg-"All Threads are Busy....."
>
> This most probably means there is deadlock somewhere in your 
> webapplication, leading to HTTP threads  not being released because 
> they are stuck waiting for something before sending response to a user
that dropped hours agos.
>
> To get clues on where your problem is when this happens, send signal 
> SIGQUIT to tomcat process, it will force the sun JVM to dump all threads
stacks.
>
> Regards,
> David Delbecq
> Ajit Narayanan wrote:
>   
>>  
>> hi,
>>  
>> My tomcat 4.1.27 is running on sun Solaris 8 box but ocassionally it 
>> hangs out giving the error " All threads are busy, waiting. Please 
>> increase maxThreads or check the servlet status75".  I have tried 
>> increasing the no of threads but its not working I guess.  The 
>> application code looks clean but can there be any compatibility 
>> issues (of tomcat and JDK) with the solaris POSIX thread libraries?? 
>> If there is  any problem then what can be done to resolve this 
>> problem. One more thing restarting the tomcat manually resolves the
problem.
>>  
>> regards,
>> Ajit.
>>
>>
>> =====================================================================
>> = ======================================================
>>
>> Tech Mahindra, formerly Mahindra-British Telecom.
>>  
>>
>> Disclaimer:
>>
>>
>> The contents of this E-mail (including the contents of the 
>> enclosure(s) or
>>     
> attachment(s) if any) are privileged and confidential material of Tech 
> Mahindra and should not be disclosed to, used by or copied in any 
> manner by anyone other than the intended addressee(s). In case you are 
> not the desired addressee, you should delete this message and/or re-direct
it to the sender.
> The views expressed in this E-mail message (including the enclosure(s) 
> or
> attachment(s) if any) are those of the individual sender, except where 
> the sender expressly, and with authority, states them to be the views 
> of Tech Mahindra.
>   
>> This e-mail message including attachment/(s), if any, is believed to 
>> be
>>     
> free of any virus. However, it is the responsibility of the recipient 
> to ensure that it is virus free and Tech Mahindra is not responsible 
> for any loss or damage arising in any way from its use.
>   
>> =====================================================================
>> = ======================================================
>>   
>>     
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
> ======================================================================
> ======================================================
>
> Tech Mahindra, formerly Mahindra-British Telecom.
>  
>
> Disclaimer:
>
>
> The contents of this E-mail (including the contents of the enclosure(s) or
attachment(s) if any) are privileged and confidential material of Tech
Mahindra and should not be disclosed to, used by or copied in any manner by
anyone other than the intended addressee(s). In case you are not the desired
addressee, you should delete this message and/or re-direct it to the sender.
The views expressed in this E-mail message (including the enclosure(s) or
attachment(s) if any) are those of the individual sender, except where the
sender expressly, and with authority, states them to be the views of Tech
Mahindra.
>
>
> This e-mail message including attachment/(s), if any, is believed to be
free of any virus. However, it is the responsibility of the recipient to
ensure that it is virus free and Tech Mahindra is not responsible for any
loss or damage arising in any way from its use.
>
> ======================================================================
> ======================================================
>
> ---------------------------------------------------------------------
> 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


============================================================================================================================

Tech Mahindra, formerly Mahindra-British Telecom.
 

Disclaimer:


The contents of this E-mail (including the contents of the enclosure(s) or attachment(s) if any) are privileged and confidential material of Tech Mahindra and should not be disclosed to, used by or copied in any manner by anyone other than the intended addressee(s). In case you are not the desired addressee, you should delete this message and/or re-direct it to the sender. The views expressed in this E-mail message (including the enclosure(s) or attachment(s) if any) are those of the individual sender, except where the sender expressly, and with authority, states them to be the views of Tech Mahindra.


This e-mail message including attachment/(s), if any, is believed to be free of any virus. However, it is the responsibility of the recipient to ensure that it is virus free and Tech Mahindra is not responsible for any loss or damage arising in any way from its use.

============================================================================================================================

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


Re: FW: tomcat hangs with error msg-"All Threads are Busy....."

Posted by David Delbecq <de...@oma.be>.
ok, i bet then you problem is in this :D:

au.com.AdmTech.incontrol.secureproxy.SecureProxy.doGet(SecureProxy.java:298)
	- locked <0xf227ea88> (a
au.com.alcatel.incontrol.secureproxy.SecureProxy)
	at
au.com.AdMtech.incontrol.secureproxy.SecureProxy.doPost(SecureProxy.java:435
)

it uses a lock to a ressource or there is a synchronized method in the way.
As such, until one process has finished, others can't start working. 
This is bad :)
As a consequence, if one of clients is not responding but not sending 
data to the wire, it locks everything.
In normal course of operation, you end up with a connection closed 
exception in socketinputstream.read() but it takes time to get them. and 
the delay is platform dependant. if client abruptly close, TCP/IP 
protocol has no information  about this except for a very long delay.

Maybe some protocol level tunings like keep alives might help :/

Anyway, this has nothing to do with GC :)

Ajit Narayanan wrote:
> Thanx for ur interest Dav.I am fairly new to java and tomcat programming so
> I am bit low on debugging these.
>
> Yes,I do have some of the data from the dumps, I don't know whether these
> will be of any help or not but this what I have.This happened on live about
> 7 months ago and it has been reopened on cux demand ,a workaround has been
> patched where in the socket gets realesed after some 90- secs.The following
> dump has been taken before this workaround:
>
> "Thread-540" daemon prio=5 tid=0x0048b9e0 nid=0x33a runnable
> [ee47f000..ee4819a8]
> 	at java.net.SocketInputStream.socketRead0(Native Method)
> 	at java.net.SocketInputStream.read(Unknown Source)
> 	at
> org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:7
> 77)
> 	at
> org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.doRead(I
> nternalInputBuffer.java:807)
> 	at
> org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFil
> ter.java:158)
> 	at
> org.apache.coyote.http11.InternalInputBuffer.doRead(InternalInputBuffer.java
> :742)
> 	at org.apache.coyote.Request.doRead(Request.java:431)
> 	at
> org.apache.coyote.tomcat4.CoyoteInputStream.readBytes(CoyoteInputStream.java
> :199)
> 	at
> org.apache.coyote.tomcat4.CoyoteInputStream.read(CoyoteInputStream.java:156)
> 	at
> org.apache.coyote.tomcat4.CoyoteRequest.readPostBody(CoyoteRequest.java:1983
> )
> 	at
> org.apache.coyote.tomcat4.CoyoteRequest.parseRequestParameters(CoyoteRequest
> .java:1965)
> 	at
> org.apache.coyote.tomcat4.CoyoteRequest.getParameter(CoyoteRequest.java:911)
> 	at
> org.apache.coyote.tomcat4.CoyoteRequestFacade.getParameter(CoyoteRequestFaca
> de.java:178)
> 	at
> au.com.AdmTech.incontrol.secureproxy.SecureProxy.doGet(SecureProxy.java:298)
> 	- locked <0xf227ea88> (a
> au.com.alcatel.incontrol.secureproxy.SecureProxy)
> 	at
> au.com.AdMtech.incontrol.secureproxy.SecureProxy.doPost(SecureProxy.java:435
> )
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>
> And there are 71 threads waiting to lock <0xf227ea88>:
>
> "- waiting to lock <0xf227ea88>  
>
> Apart from what you suggested can this be a problem of compatibility between
> tomcat-JDK and the POSIX lib of solaris?
> Or can it be that the gc is not able to execute as generally the load on
> this proxy is very high leading to such a problem. 
>
> Thanks and regards,
> Ajit.
>   
>
> -----Original Message-----
> From: David Delbecq [mailto:delbd@oma.be] 
> Sent: Thursday, May 18, 2006 1:32 PM
> To: Tomcat Users List
> Subject: Re: FW: tomcat hangs with error msg-"All Threads are Busy....."
>
> This most probably means there is deadlock somewhere in your webapplication,
> leading to HTTP threads  not being released because they are stuck waiting
> for something before sending response to a user that dropped hours agos.
>
> To get clues on where your problem is when this happens, send signal SIGQUIT
> to tomcat process, it will force the sun JVM to dump all threads stacks.
>
> Regards,
> David Delbecq
> Ajit Narayanan wrote:
>   
>>  
>> hi,
>>  
>> My tomcat 4.1.27 is running on sun Solaris 8 box but ocassionally it 
>> hangs out giving the error " All threads are busy, waiting. Please 
>> increase maxThreads or check the servlet status75".  I have tried 
>> increasing the no of threads but its not working I guess.  The 
>> application code looks clean but can there be any compatibility issues 
>> (of tomcat and JDK) with the solaris POSIX thread libraries?? If there 
>> is  any problem then what can be done to resolve this problem. One 
>> more thing restarting the tomcat manually resolves the problem.
>>  
>> regards,
>> Ajit.
>>
>>
>> ======================================================================
>> ======================================================
>>
>> Tech Mahindra, formerly Mahindra-British Telecom.
>>  
>>
>> Disclaimer:
>>
>>
>> The contents of this E-mail (including the contents of the enclosure(s) or
>>     
> attachment(s) if any) are privileged and confidential material of Tech
> Mahindra and should not be disclosed to, used by or copied in any manner by
> anyone other than the intended addressee(s). In case you are not the desired
> addressee, you should delete this message and/or re-direct it to the sender.
> The views expressed in this E-mail message (including the enclosure(s) or
> attachment(s) if any) are those of the individual sender, except where the
> sender expressly, and with authority, states them to be the views of Tech
> Mahindra.
>   
>> This e-mail message including attachment/(s), if any, is believed to be
>>     
> free of any virus. However, it is the responsibility of the recipient to
> ensure that it is virus free and Tech Mahindra is not responsible for any
> loss or damage arising in any way from its use.
>   
>> ======================================================================
>> ======================================================
>>   
>>     
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>
> ============================================================================================================================
>
> Tech Mahindra, formerly Mahindra-British Telecom.
>  
>
> Disclaimer:
>
>
> The contents of this E-mail (including the contents of the enclosure(s) or attachment(s) if any) are privileged and confidential material of Tech Mahindra and should not be disclosed to, used by or copied in any manner by anyone other than the intended addressee(s). In case you are not the desired addressee, you should delete this message and/or re-direct it to the sender. The views expressed in this E-mail message (including the enclosure(s) or attachment(s) if any) are those of the individual sender, except where the sender expressly, and with authority, states them to be the views of Tech Mahindra.
>
>
> This e-mail message including attachment/(s), if any, is believed to be free of any virus. However, it is the responsibility of the recipient to ensure that it is virus free and Tech Mahindra is not responsible for any loss or damage arising in any way from its use.
>
> ============================================================================================================================
>
> ---------------------------------------------------------------------
> 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


RE: FW: tomcat hangs with error msg-"All Threads are Busy....."

Posted by Ajit Narayanan <aj...@techmahindra.com>.
Thanx for ur interest Dav.I am fairly new to java and tomcat programming so
I am bit low on debugging these.

Yes,I do have some of the data from the dumps, I don't know whether these
will be of any help or not but this what I have.This happened on live about
7 months ago and it has been reopened on cux demand ,a workaround has been
patched where in the socket gets realesed after some 90- secs.The following
dump has been taken before this workaround:

"Thread-540" daemon prio=5 tid=0x0048b9e0 nid=0x33a runnable
[ee47f000..ee4819a8]
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(Unknown Source)
	at
org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:7
77)
	at
org.apache.coyote.http11.InternalInputBuffer$InputStreamInputBuffer.doRead(I
nternalInputBuffer.java:807)
	at
org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFil
ter.java:158)
	at
org.apache.coyote.http11.InternalInputBuffer.doRead(InternalInputBuffer.java
:742)
	at org.apache.coyote.Request.doRead(Request.java:431)
	at
org.apache.coyote.tomcat4.CoyoteInputStream.readBytes(CoyoteInputStream.java
:199)
	at
org.apache.coyote.tomcat4.CoyoteInputStream.read(CoyoteInputStream.java:156)
	at
org.apache.coyote.tomcat4.CoyoteRequest.readPostBody(CoyoteRequest.java:1983
)
	at
org.apache.coyote.tomcat4.CoyoteRequest.parseRequestParameters(CoyoteRequest
.java:1965)
	at
org.apache.coyote.tomcat4.CoyoteRequest.getParameter(CoyoteRequest.java:911)
	at
org.apache.coyote.tomcat4.CoyoteRequestFacade.getParameter(CoyoteRequestFaca
de.java:178)
	at
au.com.AdmTech.incontrol.secureproxy.SecureProxy.doGet(SecureProxy.java:298)
	- locked <0xf227ea88> (a
au.com.alcatel.incontrol.secureproxy.SecureProxy)
	at
au.com.AdMtech.incontrol.secureproxy.SecureProxy.doPost(SecureProxy.java:435
)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

And there are 71 threads waiting to lock <0xf227ea88>:

"- waiting to lock <0xf227ea88>  

Apart from what you suggested can this be a problem of compatibility between
tomcat-JDK and the POSIX lib of solaris?
Or can it be that the gc is not able to execute as generally the load on
this proxy is very high leading to such a problem. 

Thanks and regards,
Ajit.
  

-----Original Message-----
From: David Delbecq [mailto:delbd@oma.be] 
Sent: Thursday, May 18, 2006 1:32 PM
To: Tomcat Users List
Subject: Re: FW: tomcat hangs with error msg-"All Threads are Busy....."

This most probably means there is deadlock somewhere in your webapplication,
leading to HTTP threads  not being released because they are stuck waiting
for something before sending response to a user that dropped hours agos.

To get clues on where your problem is when this happens, send signal SIGQUIT
to tomcat process, it will force the sun JVM to dump all threads stacks.

Regards,
David Delbecq
Ajit Narayanan wrote:
>  
> hi,
>  
> My tomcat 4.1.27 is running on sun Solaris 8 box but ocassionally it 
> hangs out giving the error " All threads are busy, waiting. Please 
> increase maxThreads or check the servlet status75".  I have tried 
> increasing the no of threads but its not working I guess.  The 
> application code looks clean but can there be any compatibility issues 
> (of tomcat and JDK) with the solaris POSIX thread libraries?? If there 
> is  any problem then what can be done to resolve this problem. One 
> more thing restarting the tomcat manually resolves the problem.
>  
> regards,
> Ajit.
>
>
> ======================================================================
> ======================================================
>
> Tech Mahindra, formerly Mahindra-British Telecom.
>  
>
> Disclaimer:
>
>
> The contents of this E-mail (including the contents of the enclosure(s) or
attachment(s) if any) are privileged and confidential material of Tech
Mahindra and should not be disclosed to, used by or copied in any manner by
anyone other than the intended addressee(s). In case you are not the desired
addressee, you should delete this message and/or re-direct it to the sender.
The views expressed in this E-mail message (including the enclosure(s) or
attachment(s) if any) are those of the individual sender, except where the
sender expressly, and with authority, states them to be the views of Tech
Mahindra.
>
>
> This e-mail message including attachment/(s), if any, is believed to be
free of any virus. However, it is the responsibility of the recipient to
ensure that it is virus free and Tech Mahindra is not responsible for any
loss or damage arising in any way from its use.
>
> ======================================================================
> ======================================================
>   


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


============================================================================================================================

Tech Mahindra, formerly Mahindra-British Telecom.
 

Disclaimer:


The contents of this E-mail (including the contents of the enclosure(s) or attachment(s) if any) are privileged and confidential material of Tech Mahindra and should not be disclosed to, used by or copied in any manner by anyone other than the intended addressee(s). In case you are not the desired addressee, you should delete this message and/or re-direct it to the sender. The views expressed in this E-mail message (including the enclosure(s) or attachment(s) if any) are those of the individual sender, except where the sender expressly, and with authority, states them to be the views of Tech Mahindra.


This e-mail message including attachment/(s), if any, is believed to be free of any virus. However, it is the responsibility of the recipient to ensure that it is virus free and Tech Mahindra is not responsible for any loss or damage arising in any way from its use.

============================================================================================================================

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


Re: FW: tomcat hangs with error msg-"All Threads are Busy....."

Posted by David Delbecq <de...@oma.be>.
This most probably means there is deadlock somewhere in your 
webapplication, leading to HTTP threads  not being released because they 
are stuck waiting for something before sending response to a user that 
dropped hours agos.

To get clues on where your problem is when this happens, send signal 
SIGQUIT to tomcat process, it will force the sun JVM to dump all threads 
stacks.

Regards,
David Delbecq
Ajit Narayanan wrote:
>  
> hi,
>  
> My tomcat 4.1.27 is running on sun Solaris 8 box but ocassionally it hangs
> out giving the error " All threads are busy, waiting. Please increase
> maxThreads or check the servlet status75".  I have tried increasing the no
> of threads but its not working I guess.  The application code looks clean
> but can there be any compatibility issues (of tomcat and JDK) with the
> solaris POSIX thread libraries?? If there is  any problem then what can be
> done to resolve this problem. One more thing restarting the tomcat manually
> resolves the problem.
>  
> regards,
> Ajit.
>
>
> ============================================================================================================================
>
> Tech Mahindra, formerly Mahindra-British Telecom.
>  
>
> Disclaimer:
>
>
> The contents of this E-mail (including the contents of the enclosure(s) or attachment(s) if any) are privileged and confidential material of Tech Mahindra and should not be disclosed to, used by or copied in any manner by anyone other than the intended addressee(s). In case you are not the desired addressee, you should delete this message and/or re-direct it to the sender. The views expressed in this E-mail message (including the enclosure(s) or attachment(s) if any) are those of the individual sender, except where the sender expressly, and with authority, states them to be the views of Tech Mahindra.
>
>
> This e-mail message including attachment/(s), if any, is believed to be free of any virus. However, it is the responsibility of the recipient to ensure that it is virus free and Tech Mahindra is not responsible for any loss or damage arising in any way from its use.
>
> ============================================================================================================================
>   


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