[jbossts-issues] [JBoss JIRA] (JBTM-1867) Confusing error logged after crash recovery on prepare when hornetq object store used

Michael Musgrove (JIRA) jira-events at lists.jboss.org
Mon Aug 12 11:03:27 EDT 2013


    [ https://issues.jboss.org/browse/JBTM-1867?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12796314#comment-12796314 ] 

Michael Musgrove commented on JBTM-1867:
----------------------------------------

The bug report is asking for the exception to be logged at debug or trace but it is not possible to infer whether the transaction log entry has been removed because of a previous rollback attempt or for some other reason (perhaps the tooling has inadvertently removed it). Therefore I don't think it is a good idea to reduce the severity of log statement. Onrej, would you mind if I close the jira as will not fix or can you suggest an alternate way of resolving this issue.
                
> Confusing error logged after crash recovery on prepare when hornetq object store used
> -------------------------------------------------------------------------------------
>
>                 Key: JBTM-1867
>                 URL: https://issues.jboss.org/browse/JBTM-1867
>             Project: JBoss Transaction Manager
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: JTS
>    Affects Versions: 4.17.7, 5.0.0.M3
>            Reporter: Ondřej Chaloupka
>            Assignee: Michael Musgrove
>
> There is logged an confusing error after crash recovery happens when server crashed in prepare phase.
> {code}
> 14:47:59,697 ERROR [stderr] (RequestProcessor-10) com.arjuna.ats.arjuna.exceptions.ObjectStoreException: java.lang.IllegalStateException: Cannot find add info 3
> 14:47:59,698 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.arjuna.objectstore.hornetq.HornetqJournalStore.remove_committed(HornetqJournalStore.java:153)
> 14:47:59,698 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.arjuna.objectstore.hornetq.HornetqObjectStoreAdaptor.remove_committed(HornetqObjectStoreAdaptor.java:186)
> 14:47:59,698 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.jta.resources.jts.orbspecific.XAResourceRecord.destroyState(XAResourceRecord.java:1271)
> 14:47:59,699 INFO  [org.jboss.as.test.jbossts.common.TestXAResourceCommon] (Periodic Recovery) TestXAResourceCommon.isSameRM(xaResource=TestXAResourceRecovered(TestXAResourceCommon(0, null)))
> 14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.jta.resources.jts.orbspecific.XAResourceRecord.rollback(XAResourceRecord.java:411)
> 14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ArjunaOTS.OTSAbstractRecordPOA._invoke(OTSAbstractRecordPOA.java:213)
> 14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at org.jacorb.poa.RequestProcessor.invokeOperation(RequestProcessor.java:306)
> 14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at org.jacorb.poa.RequestProcessor.process(RequestProcessor.java:626)
> 14:47:59,699 ERROR [stderr] (RequestProcessor-10) 	at org.jacorb.poa.RequestProcessor.run(RequestProcessor.java:769)
> 14:47:59,700 ERROR [stderr] (RequestProcessor-10) Caused by: java.lang.IllegalStateException: Cannot find add info 3
> 14:47:59,700 ERROR [stderr] (RequestProcessor-10) 	at org.hornetq.core.journal.impl.JournalImpl.appendDeleteRecord(JournalImpl.java:904)
> 14:47:59,700 ERROR [stderr] (RequestProcessor-10) 	at org.hornetq.core.journal.impl.JournalBase.appendDeleteRecord(JournalBase.java:163)
> 14:47:59,700 ERROR [stderr] (RequestProcessor-10) 	at org.hornetq.core.journal.impl.JournalImpl.appendDeleteRecord(JournalImpl.java:82)
> 14:47:59,701 ERROR [stderr] (RequestProcessor-10) 	at com.arjuna.ats.internal.arjuna.objectstore.hornetq.HornetqJournalStore.remove_committed(HornetqJournalStore.java:151)
> 14:47:59,701 ERROR [stderr] (RequestProcessor-10) 	... 7 more
> {code}
> This happens when hornetq object store is used. This is caused because of the rollback is called on resource two times. This is ok - this matches to OTS spec (https://bugzilla.redhat.com/show_bug.cgi?id=988724).
> But after the second call of rollback the TM tries to remove Xid from object store. But as the xid does not exist anymore the hornetq object store implementation throws exception that is logged directly on stderr:
> XAResourceRecord.destroyState does e.printStackTrace()
> I would propose to put this exception to debug or trace as it does not mean error in fact.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the jbossts-issues mailing list