3

I'm seeing the following Exception occurring often in our live environment :

2013-01-08 00:09:45,886 ERROR [org.jboss.aspects.tx.TxPolicy] (Thread-70534 (HornetQ-   client-global-threads-225905014)) javax.ejb.EJBTransactionRolledbackException
2013-01-08 00:09:45,886 ERROR [org.hornetq.ra.inflow.HornetQMessageHandler] (Thread-    70534 (HornetQ-client-global-threads-225905014)) Failed to deliver message
javax.ejb.EJBTransactionRolledbackException
at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:115)
at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:194)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.tx.NullInterceptor.invoke(NullInterceptor.java:42)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke(Ejb3AuthenticationInterceptorv2.    java:79)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.BlockContainerShutdownInterceptor.invoke(BlockContainerShutdownInterceptor.java:67)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.core.context.CurrentInvocationContextInterceptor.invoke(CurrentInvocationContextInterceptor.java:47)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.interceptor.EJB3TCCLInterceptor.invoke(EJB3TCCLInterceptor.java:86)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.ejb3.mdb.MessagingContainer.localInvoke(MessagingContainer.java:281)
at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.delivery(MessageInflowLocalProxy.java:311)
at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.invoke(MessageInflowLocalProxy.java:153)
at org.hornetq.ra.inflow.HornetQMessageHandler.onMessage(HornetQMessageHandler.java:324)
at org.hornetq.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:1028)
at org.hornetq.core.client.impl.ClientConsumerImpl.access$400(ClientConsumerImpl.java:50)
at org.hornetq.core.client.impl.ClientConsumerImpl$Runner.run(ClientConsumerImpl.java:1173)
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)
Caused by: java.lang.NullPointerException
...
2013-01-08 00:09:45,897 WARN  [org.hornetq.core.server.impl.QueueImpl] (Thread-1   (HornetQ-server-HornetQServerImpl::serverUUID=2de2c2a9-440f-11e2-ae8e-0024e83c51d2-   1125034725)) Message   Reference[160399362]:RELIABLE:ServerMessage[messageID=160399362,priority=9,    bodySize=474,expiration=0, durable=true,   address=jms.queue.phaseQueueFromEngine,properties=TypedProperties[{_HQ_GROUP_ID=S129737044}]     ]@1530618770 has reached maximum delivery attempts, sending it to Dead Letter Address   jms.queue.DLQ from jms.queue.phaseQueueFromEngine

I'm not sure why this is happening, messages are most of the times processed correctly, but sometimes they raise the exception below. I tried to dig into Jboss code, but I couldn't figure it out. Any clue?

marcocast
  • 401
  • 4
  • 9
  • Check the transactional attributes used in your code maybe you are using a wrong one: http://stackoverflow.com/questions/1759554/examples-or-uses-cases-to-explain-ejb-transaction-attributes – javing Jan 10 '13 at 15:31

1 Answers1

0

I found the cause of the exception, it was a null pointer in the code, but the origin of the Exception (full stack trace) was not displayed.

marcocast
  • 401
  • 4
  • 9