[
https://issues.redhat.com/browse/WFLY-13632?page=com.atlassian.jira.plugi...
]
Brian Stansberry commented on WFLY-13632:
-----------------------------------------
[~mmusgrov] [~tomjenkinson]
There can be more than one /subsystem=transactions/commit-markable-resource=* resource and
the CMResourceAdd handler will install an instance of CMResourceService for each. Those
*install* calls will happen in series (e.g. during boot) from a single thread, and no
other management op can come in and add resource another commit-markable-resource=*
resource at the same time. But installing an MSC Service is not the same as starting the
service – MSC invokes the start method on services concurrently using its thread pool. So
you can definitely get concurrent calls to CMResourceService.start(StartContext).
If a CMR resource is deployed concurrently then it will overwrite the
list of resources that are expected to behave as CMR
--------------------------------------------------------------------------------------------------------------------------
Key: WFLY-13632
URL:
https://issues.redhat.com/browse/WFLY-13632
Project: WildFly
Issue Type: Bug
Components: Transactions
Reporter: Thomas Jenkinson
Assignee: Michael Musgrove
Priority: Blocker
Inspecting
https://github.com/wildfly/wildfly/blob/master/transactions/src/main/java...
we can see that it will overwrite the map in
https://github.com/jbosstm/narayana/blob/48818111d12d2e51b52082a00bcb6060...
because it first get's a copy of a map
(
https://github.com/wildfly/wildfly/blob/master/transactions/src/main/java...
->
https://github.com/jbosstm/narayana/blob/48818111d12d2e51b52082a00bcb6060...)
so the maps won't be equal.
This will result in WildFly overwriting the list of resources that Narayana will treat as
CMR.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)