Profile Image
bhaskar.m

what is the error can please give the proper error

i am facing the waring state of my host

 


Report URL - https://fastthread.io/my-thread-report.jsp?p=c2hhcmVkLzIwMjQvMDcvMjQvVGhyZWFkX0R1bXAuemlwLS0xMi0yMi0xOA==

    Please Sign In or to post your comment or answer

    Profile Image

    Kousika M

    Hello Bhaskar M,

    Greetings!

    In your application 1420 threads are WAITING on wait() method in java.lang.Object file and they all have the below stacktrace:

    stackTrace:
    java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at org.apache.activemq.FifoMessageDispatchChannel.dequeue(FifoMessageDispatchChannel.java:74)
    - locked <0x0000000578800748> (a java.lang.Object)
    at org.apache.activemq.ActiveMQMessageConsumer.dequeue(ActiveMQMessageConsumer.java:486)
    at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:653)
    at org.springframework.jms.support.destination.JmsDestinationAccessor.receiveFromConsumer(JmsDestinationAccessor.java:132)
    at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:418)
    at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:303)
    at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:245)
    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1189)
    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1179)
    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1076)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:750)
    Locked ownable synchronizers:
    - <0x0000000578800878> (a java.util.concurrent.ThreadPoolExecutor$Worker)

     

    It can result in java.lang.OutOfMemoryError: Unable to create new native thread.

     

    Basically these threads are doing nothing. They are just waiting for new jobs to come. You don't need these many WAITING state threads, as threads occupy memory. 

    You may want to lower the 'min' thread pool size of this thread pool. It has potential to lower the WAITING state thread count in your overall application

     

     

    Got something else on mind? Post Your Question