Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-496

Failover transport can cause CPU spin

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Cannot Reproduce
    • None
    • 4.0 M4
    • Transport
    • None

    Description

      4.0 - reliable:tcp transport (SNAPSHOT 01-12-06)
      -----------------------------

      • If you shutdown the ActiveMQ server, Consumers and Producers spin 100% cpu
        If you shutdown the ActiveMQ server, both my consumers and the producers will crank 100%. When the server is back, immediately everything will become okay again. I did a threadump of the JVM, and it wasn't blazingly obvious what was spinning all the cpu time. This is the closest I found:
        3XMTHREADINFO "ActiveMQ Default Thread Pool Thread" (TID:0x00002AAABF25EA00, sys_thread_t:0x00000000401101A8, state:CW, native ID:0x0000000040110208) prio=5
        4XESTACKTRACE at java/lang/Thread.sleep(Native Method)
        4XESTACKTRACE at java/lang/Thread.sleep(Thread.java:943)
        4XESTACKTRACE at org/apache/activemq/transport/failover/FailoverTransport$2.iterate(FailoverTransport.java:154)
        4XESTACKTRACE at org/apache/activemq/thread/SimpleTaskRunner.runTask(SimpleTaskRunner.java:110)
        4XESTACKTRACE at org/apache/activemq/thread/SimpleTaskRunner.access$100(SimpleTaskRunner.java:25)
        4XESTACKTRACE at org/apache/activemq/thread/SimpleTaskRunner$1.run(SimpleTaskRunner.java:42)
        4XESTACKTRACE at edu/emory/mathcs/backport/java/util/concurrent/Executors$RunnableAdapter.call(Executors.java:431)
        4XESTACKTRACE at edu/emory/mathcs/backport/java/util/concurrent/FutureTask.run(FutureTask.java:166)
        4XESTACKTRACE at edu/emory/mathcs/backport/java/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:91)
        4XESTACKTRACE at edu/emory/mathcs/backport/java/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:198)
        4XESTACKTRACE at edu/emory/mathcs/backport/java/util/concurrent/ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:643)
        4XESTACKTRACE at edu/emory/mathcs/backport/java/util/concurrent/ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:668)
        4XESTACKTRACE at java/lang/Thread.run(Thread.java:816)

      However that's clearly sleeping. But, either way, something on my consumers and producers is spinning 100% cpu each. It makes moving my mouse slow because of the thread priorities . Obviously a big big problem if you have many consumers/producers on a single machine. Probably a simple fix.

      Attachments

        Activity

          People

            jlim Jonas B. Lim
            chirino Hiram R. Chirino
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: