+++ This bug was initially created as a clone of Bug #456524 +++ Description of problem: Broker crashes during recovery when XA tx are in-doubt To reproduce: run the java test: org.apache.qpid.test.unit.xa.QueueTest test: testRecover When the broker recovers it displays: qpidt 2008-jul-24 14:34:11 info Loaded Module: /home/asimon/Projects/cppStore/cpp/lib/.libs/libbdbstore.so 2008-jul-24 14:34:11 info Management enabled 2008-jul-24 14:34:11 debug ManagementBroker restored broker ID: 5f319d37-d9ad-4d26-91f5-acabdad8ccb6 2008-jul-24 14:34:11 debug ManagementBroker boot sequence: 118 2008-jul-24 14:34:11 debug ManagementBroker added package qpid 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.system 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.broker 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.agent 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.vhost 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.queue 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.exchange 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.binding 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.connection 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.link 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.bridge 2008-jul-24 14:34:11 debug ManagementBroker added class qpid.session 2008-jul-24 14:34:11 notice Journal "TplStore": Instantiation 2008-jul-24 14:34:11 debug Journal "TplStore": Journal directory = "/home/asimon/Projects/store//rhm/tpl/"; Base file name = "tpl" 2008-jul-24 14:34:11 notice Store module initialized; dir=/home/asimon/Projects/store/ 2008-jul-24 14:34:11 info > Default files per journal: 8 2008-jul-24 14:34:11 info > Default jrournal file size: 24 (wpgs) 2008-jul-24 14:34:11 info > Default write cache page size: 32 (Kib) 2008-jul-24 14:34:11 info > Default number of write cache pages: 32 2008-jul-24 14:34:11 info > TPL files per journal: 8 2008-jul-24 14:34:11 info > TPL jrournal file size: 24 (wpgs) 2008-jul-24 14:34:11 info > TPL write cache page size: 4 (Kib) 2008-jul-24 14:34:11 info > TPL number of write cache pages: 64 2008-jul-24 14:34:11 debug Journal "TplStore": Recover; num_jfiles=8 jfsize_sblks=3072 queue_id = 0x0 wcache_pgsize_sblks=64 wcache_num_pages=8 2008-jul-24 14:34:11 debug Journal "TplStore": Recover file analysis (jid="TplStore"): owi=FALSE frot=TRUE empty=FALSE ffid=0 fro=0x200 (4 dblks) lfid=0 eo=0xa00 (20 dblks) h_rid=0x9 full=FALSE Enqueued records (txn & non-txn): [ fid_00=2 fid_01=0 fid_02=0 fid_03=0 fid_04=0 fid_05=0 fid_06=0 fid_07=0 ] 2008-jul-24 14:34:11 debug Journal "TplStore": Recover phase I complete; highest rid found = 0x9; emap.size=0; tmap.size=2; journal now read-only. 2008-jul-24 14:34:11 debug Journal "TplStore": Recover phase II complete; journal now writable. 2008-jul-24 14:34:11 debug Configured queue with no-local=0 2008-jul-24 14:34:11 debug Configured queue xaQueue with qpid.trace.id='' and qpid.trace.exclude='' i.e. 0 elements 2008-jul-24 14:34:11 notice Journal "xaQueue": Instantiation 2008-jul-24 14:34:11 debug Journal "xaQueue": Journal directory = "/home/asimon/Projects/store//rhm/jrnl/0014/xaQueue/"; Base file name = "JournalData" 2008-jul-24 14:34:11 debug Journal "xaQueue": Recover; num_jfiles=8 jfsize_sblks=3072 queue_id = 0x2 wcache_pgsize_sblks=64 wcache_num_pages=32 2008-jul-24 14:34:12 debug Journal "xaQueue": Recover file analysis (jid="xaQueue"): owi=FALSE frot=TRUE empty=FALSE ffid=0 fro=0x200 (4 dblks) lfid=0 eo=0x800 (16 dblks) h_rid=0x8 full=FALSE Enqueued records (txn & non-txn): [ fid_00=2 fid_01=0 fid_02=0 fid_03=0 fid_04=0 fid_05=0 fid_06=0 fid_07=0 ] 2008-jul-24 14:34:12 debug Journal "xaQueue": Recover phase I complete; highest rid found = 0x8; emap.size=1; tmap.size=2; journal now read-only. 2008-jul-24 14:34:12 debug Exception constructed: XID not found in tplRecoverMap (BdbMessageStore.cpp:762) 2008-jul-24 14:34:12 debug Journal "xaQueue": Destroyed XID not found in tplRecoverMap (BdbMessageStore.cpp:762) --- Additional comment from kim.vdriet on 2008-07-25 16:44:56 EDT --- Fixed r.2229 for trunk; r.2230 for 1.0 branch
Manual qpid java test QueueTest run on RHEL5.2/4.7 i386/x86_64 proves the issue has been fixed. (->VERIFIED) Shortened log report: [junit] Running org.apache.qpid.test.unit.xa.QueueTest [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 2.168 sec
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2008-0867.html