Bugzilla (bugzilla.redhat.com) will be under maintenance for infrastructure upgrades and will not be available on July 31st between 12:30 AM - 05:30 AM UTC. We appreciate your understanding and patience. You can follow status.redhat.com for details.
Bug 458656 - List of xids from dtx.recover is not as expected
Summary: List of xids from dtx.recover is not as expected
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp
Version: 1.0
Hardware: All
OS: Linux
Target Milestone: 1.0.1
: ---
Assignee: Kim van der Riet
QA Contact: Kim van der Riet
Depends On:
Blocks: 460112
TreeView+ depends on / blocked
Reported: 2008-08-11 12:12 UTC by Gordon Sim
Modified: 2008-10-06 19:08 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2008-10-06 19:08:30 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2008:0640 0 normal SHIPPED_LIVE Red Hat Enterprise MRG bug fix and enhancement update 2008-10-06 19:08:07 UTC

Description Gordon Sim 2008-08-11 12:12:01 UTC
The resonse for dtx.recover should include a list of all the xids currently in the prepared state; at present it only includes those that were in prepared state at time of last recovery.

Comment 1 Kim van der Riet 2008-08-14 18:40:04 UTC
The call to BdbMessageStore::collectPreparedXids() was using the prepared list obtained at time of recovery, but this call needs to provide a current list, no matter when called. The ability to ignore transactions when reading was added to class rmgr, and a subclass of JournalImpl (called TplJournalImpl) was created which implements the ignore as standard practice when calling read. This enables reads of pending transactions from this list. Now BdbMessageStore::collectPreparedXids() re-reads the transaction prepared list (TPL) before returning the XID list.

This is a somewhat expensive solution - but is sufficient for the time being as collectPreparedXids() is currently only called on recovery in the broker.

Fixed in r.2305 (trunk), r.2306 (1.0 branch)

Comment 3 Frantisek Reznicek 2008-09-11 07:34:35 UTC
RHTS test MRG_Messaging/qpid_xids_fails_bz458656 runs qpid.tests_0-10.dtx tests (which are passing) that proves that xid.recover response is now OK (->VERIFIED)

Comment 5 errata-xmlrpc 2008-10-06 19:08:30 UTC
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.


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