Bug 1113225

Summary: CMR: TX log does not show participants after crash.
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Hayk Hovsepyan <hhovsepy>
Component: Transaction ManagerAssignee: Michael <mmusgrov>
Status: CLOSED CURRENTRELEASE QA Contact: Ondrej Chaloupka <ochaloup>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.3.0CC: hhovsepy, kkhan, mmusgrov, ochaloup, tom.jenkinson
Target Milestone: ---   
Target Release: EAP 6.4.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
In previous releases of JBoss EAP 6, the tooling for reading transaction logs did not expose CMR records. THis issue has been addressed in this release.
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-19 12:38:31 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1143956    
Bug Blocks:    
Attachments:
Description Flags
TraceServerLog
none
tx-object-store none

Description Hayk Hovsepyan 2014-06-25 17:03:24 UTC
Created attachment 912173 [details]
TraceServerLog

Description of problem:
After crashing on exit of CommitMarkableResourceRecord.commit method, there is not participants in TX log.

Please find attached server trace log, "tree" result of "tx-object-store" and "standalone-full.xml".

Version-Release number of selected component (if applicable):
6.3.0.ER7

How reproducible:
always

Steps to Reproduce:
1. In a transaction there is 1 CMR and 1 test XA resources.
2. Crash the server on the exit of CommitMarkableResourceRecord.commit method.
3. Pause Periodic Recovery during the reboot of server.
4. Check that there is 1 TX in a logs, but this does not have participants.


Actual results:
there are no participants in TX log

Expected results:
where should be 2 of them (for CMR and test XA)

Comment 1 Hayk Hovsepyan 2014-06-25 17:06:15 UTC
Created attachment 912175 [details]
tx-object-store

Comment 3 Ondrej Chaloupka 2014-06-30 13:53:29 UTC
This could be connected (or being the same issue) as https://bugzilla.redhat.com/show_bug.cgi?id=1086297

Comment 4 Ondrej Chaloupka 2014-07-08 13:34:08 UTC
*** Bug 1086297 has been marked as a duplicate of this bug. ***

Comment 7 Hayk Hovsepyan 2014-07-22 10:46:35 UTC
Michael,

I have tried the workaround in ER7, it shows "EISNAME" transaction as well together with "StateManager/BasicAction/TwoPhaseCoordinator/AtomicAction" transaction, but still transaction participants are empty for both of them.

However the problem is fixed in EAP 6.3.0 ER10.

Comment 8 Ondrej Chaloupka 2014-08-29 11:22:56 UTC
This issue was bound to testcase of recovery testsuite:
ToolingCMRTestCase#haltCMRCommit

This testcase started to pass in EAP 6.3.0.ER10.

But this issue was left open as there was trouble described in bug: 
https://bugzilla.redhat.com/show_bug.cgi?id=1086297
and as that bug was defined as duplicate of this one. So this one represents the core issue.

The problem in bz#1086297 was seen when tested manually.

It's needed to check whether bz#1086297 is problem or not for 6.3.1.

Comment 9 Michael 2014-08-29 11:49:53 UTC
I fixed the underlying issue of the probe operation not seeing the CMR participants.

However the test still fails when it tries to remove a particular transaction from the log. The intent of the test is to:

- remove the tx from log (the test only creates 1 log), the test fails here
- reprobe
- validate that the logs are empty.

I modified the test to clear the log instead of just removing a particular entry and the test passes (which I believe more accurately implements the intention behind the test case). I did not debug why the tx remove operation is failing.

Comment 10 Hayk Hovsepyan 2014-08-29 11:55:14 UTC
Does it mean that in 6.3.1 logs are deleted automatically after recovery is finished?

Comment 11 Ondrej Chaloupka 2014-08-29 13:10:36 UTC
I would just try to sum up the case here
- there was fixed test ToolingCMRTestCase#haltCMRCommit to run with EAP 6.3.1 (if the recover operation completes the transaction then the log will be deleted)
- Mike created a fix for bz#1086297 which will be part of Narayana 4.17.23 release

Comment 12 tom.jenkinson 2014-09-02 11:19:19 UTC
fixed in community project, awaiting release

Comment 13 Hayk Hovsepyan 2014-11-07 14:04:00 UTC
Verified on version EAP 6.4.0 DR8.

Now the TX log shows participants correctly after crash.

Comment 14 JBoss JIRA Server 2014-12-02 15:51:52 UTC
Tom Jenkinson <tom.jenkinson> updated the status of jira JBTM-2238 to Closed