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
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp
Version: 1.0
Hardware: All
OS: Linux
urgent
high
Target Milestone: 1.0.1
: ---
Assignee: Kim van der Riet
QA Contact: Kim van der Riet
URL:
Whiteboard:
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:
Environment:
Last Closed: 2008-10-06 19:08:30 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
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.

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.