Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1060114 - store_chk raises "Operation on non-existent record: operation=unlock; rid=.." on aborted DTX transaction in TplStore
Summary: store_chk raises "Operation on non-existent record: operation=unlock; rid=.."...
Keywords:
Status: POST
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp
Version: 2.3
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
: ---
Assignee: Pavel Moravec
QA Contact: MRG Quality Engineering
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-01-31 10:51 UTC by Pavel Moravec
Modified: 2019-02-08 14:56 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:


Attachments (Terms of Use)
Proposed patch (deleted)
2014-01-31 11:02 UTC, Pavel Moravec
no flags Details | Diff
Patch committed to upstream (deleted)
2014-02-01 10:48 UTC, Pavel Moravec
no flags Details | Diff


Links
System ID Priority Status Summary Last Updated
Apache JIRA QPID-5530 None None None Never

Description Pavel Moravec 2014-01-31 10:51:48 UTC
Description of problem:
Having an aborted DTX transaction in TplStore, store_chk raises "Operation on non-existent record: operation=unlock; rid=.." error.


Version-Release number of selected component (if applicable):
any (incl. qpid 0.26)


How reproducible:
100%


Steps to Reproduce:
1. Prepare and abort a DTX transaction (e.g. by replacing "dtxCommit" by "dtxRollback" in qpid-txtest.cpp, recompiling it and running it with --dtx=1 argument)
2. /usr/libexec/qpid/store_chk /var/lib/qpidd/rhm/tpl -b tpl


Actual results:
Recovering journals .
Operation on non-existent record: operation=unlock; rid=0x2311c


Expected results:
Journals recovered properly.


Additional info:

Comment 1 Pavel Moravec 2014-01-31 11:02:16 UTC
Created attachment 857799 [details]
Proposed patch

Though I did not understand full logic of emap / map in janal.py, the extra condition in _abort prevents raising the error and allows proper processing of the abort.

Comment 2 Pavel Moravec 2014-01-31 12:15:46 UTC
Upstream review request: https://reviews.apache.org/r/17587/

Comment 3 Pavel Moravec 2014-02-01 10:48:24 UTC
Created attachment 858071 [details]
Patch committed to upstream

Comment 4 Pavel Moravec 2014-02-01 10:49:05 UTC
Committed to upstream as r1563387.

Comment 5 Mike McCune 2016-03-28 23:20:28 UTC
This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune@redhat.com with any questions


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