Bug 1113225 - CMR: TX log does not show participants after crash.
Summary: CMR: TX log does not show participants after crash.
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: Transaction Manager
Version: 6.3.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: EAP 6.4.0
Assignee: Michael
QA Contact: Ondrej Chaloupka
URL:
Whiteboard:
: 1086297 (view as bug list)
Depends On: 1143956
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-06-25 17:03 UTC by Hayk Hovsepyan
Modified: 2019-08-19 12:40 UTC (History)
5 users (show)

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.
Clone Of:
Environment:
Last Closed: 2019-08-19 12:38:31 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
TraceServerLog (349.61 KB, text/x-log)
2014-06-25 17:03 UTC, Hayk Hovsepyan
no flags Details
tx-object-store (428 bytes, text/plain)
2014-06-25 17:06 UTC, Hayk Hovsepyan
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1086297 0 unspecified CLOSED JBoss CLI does not know to work with CMR data from object store log 2021-02-22 00:41:40 UTC
Red Hat Issue Tracker JBTM-2238 0 Major Closed Tooling does not expose CMR records 2020-11-04 04:37:37 UTC

Internal Links: 1086297

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


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