[jboss-jira] [JBoss JIRA] (AS7-3919) HornetQ causing deadlock when max-size-bytes reaches its limit

Ove Ranheim (JIRA) jira-events at lists.jboss.org
Mon Feb 27 05:24:37 EST 2012


Ove Ranheim created AS7-3919:
--------------------------------

             Summary: HornetQ causing deadlock when max-size-bytes reaches its limit
                 Key: AS7-3919
                 URL: https://issues.jboss.org/browse/AS7-3919
             Project: Application Server 7
          Issue Type: Bug
          Components: JMS
    Affects Versions: 7.1.0.Final
            Reporter: Ove Ranheim
            Assignee: Andy Taylor
            Priority: Critical
             Fix For: 7.1.1.Final


I have journal-file-size set to 10 Mb and max-size-bytes set 10 Mb, with a address policy of BLOCK. When my sendMailQueue reaches its limit a deadlock occurs. This is further emphasized in the JBossAS Forum reference.

Here's a snippet from jstack after HornetQ crashes.

{noformat}
Found one Java-level deadlock:
=============================
"Thread-878 (HornetQ-client-global-threads-1151364488)":
  waiting to lock monitor 0x0000000041df8640 (object 0x00000000ea17d6e0, a java.lang.Object),
  which is held by "Thread-873 (HornetQ-client-global-threads-1151364488)"
"Thread-873 (HornetQ-client-global-threads-1151364488)":
  waiting to lock monitor 0x000000004107c8b8 (object 0x00000000ea17d6d0, a java.lang.Object),
  which is held by "Thread-878 (HornetQ-client-global-threads-1151364488)"

Java stack information for the threads listed above:
===================================================
"Thread-878 (HornetQ-client-global-threads-1151364488)":
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.close(ClientSessionFactoryImpl.java:461)
	- waiting to lock <0x00000000ea17d6e0> (a java.lang.Object)
	- locked <0x00000000ea17d6d0> (a java.lang.Object)
	at org.hornetq.core.client.impl.ServerLocatorImpl.doClose(ServerLocatorImpl.java:1294)
	at org.hornetq.core.client.impl.ServerLocatorImpl.close(ServerLocatorImpl.java:1238)
	at org.hornetq.jms.server.recovery.HornetQXAResourceWrapper.close(HornetQXAResourceWrapper.java:392)
	at org.hornetq.jms.server.recovery.HornetQXAResourceWrapper.connectionFailed(HornetQXAResourceWrapper.java:232)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.callFailureListeners(ClientSessionFactoryImpl.java:905)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.failoverOrReconnect(ClientSessionFactoryImpl.java:690)
	- locked <0x00000000f0222060> (a java.lang.Object)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.handleConnectionFailure(ClientSessionFactoryImpl.java:556)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.access$000(ClientSessionFactoryImpl.java:79)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl$1.run(ClientSessionFactoryImpl.java:386)
	at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:100)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)
"Thread-873 (HornetQ-client-global-threads-1151364488)":
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.close(ClientSessionFactoryImpl.java:458)
	- waiting to lock <0x00000000ea17d6d0> (a java.lang.Object)
	at org.hornetq.jms.server.recovery.HornetQXAResourceWrapper.close(HornetQXAResourceWrapper.java:391)
	at org.hornetq.jms.server.recovery.HornetQXAResourceWrapper.connectionFailed(HornetQXAResourceWrapper.java:232)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.callFailureListeners(ClientSessionFactoryImpl.java:905)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.failoverOrReconnect(ClientSessionFactoryImpl.java:690)
	- locked <0x00000000ea17d6e0> (a java.lang.Object)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.handleConnectionFailure(ClientSessionFactoryImpl.java:556)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl.access$000(ClientSessionFactoryImpl.java:79)
	at org.hornetq.core.client.impl.ClientSessionFactoryImpl$1.run(ClientSessionFactoryImpl.java:386)
	at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:100)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)

Found 1 deadlock.
{noformat}


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list