Bug 456524 - Broker crashes during recovery when XA tx are indoubt
Broker crashes during recovery when XA tx are indoubt
Status: CLOSED ERRATA
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp (Show other bugs)
1.0
All Linux
urgent Severity high
: 1.0.1
: ---
Assigned To: Kim van der Riet
Kim van der Riet
:
Depends On:
Blocks: 460108
  Show dependency treegraph
 
Reported: 2008-07-24 08:56 EDT by Arnaud Simon
Modified: 2008-10-06 15:08 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-10-06 15:08:24 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Arnaud Simon 2008-07-24 08:56:05 EDT
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)
Comment 1 Kim van der Riet 2008-07-25 16:44:56 EDT
Fixed

r.2229 for trunk; r.2230 for 1.0 branch
Comment 3 Frantisek Reznicek 2008-09-18 07:19:12 EDT
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
Comment 5 errata-xmlrpc 2008-10-06 15:08:24 EDT
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-0640.html

Note You need to log in before you can comment on or make changes to this bug.