In previous versions of JBoss EAP 6 it was found that `LogStoreProbeHandler` replaced the 'delegate' held by `LogStoreResource`. This removed any data from the existing delegate's 'model' field (the "type" attribute, for example).
As a result, invoking the 'probe' operation on the `subsystem=transactions/log-store=log-store` would result in the value of the resource's 'type' attribute being changed to 'default' even if the transaction manager is actually using 'hornetq'. The actual runtime behavior would not be affected, but the reported value would be wrong.
In this release of the product the contents of the current delegate's model is copied to the new delegate before it is removed and the 'type' attribute will no longer be 'default' after running the 'probe' operation when the log store type is actually something else.
Description of problem:
The subsystem=transaction/log-store=log-store has a 'probe' operation that inadvertently clears the 'type' attribute from the resource.
Steps to Reproduce:
1. Invoke /subsystem=transaction/log-store=log-store:probe
2. Invoke /subsystem=transaction/log-store=log-store:read-resource
The 'type' attribute is undefined
The 'type' attribute should be defined
LogStoreProbeHandler replaces the 'delegate' held by LogStoreResource. Doing this removes any data from the existing delegate's 'model' field, i.e. the "type" attribute.
The steps to reproduce were incomplete. You only see the problem if the type attribute does not have value 'default'.
So, before the step I listed, either add the <use-hornetq-store/> element to the transaction subsystem config, or do it via the CLI with
Thank you for the additional info about verification the issue.
I've checked the behavior of EAP 6.3.0.ER3 and I have one cosmetic note about the failure behavior.
After the probe() operation is run the type of the log-store is not put to 'undefined' but is changed back to default 'default' value.
Agreed. I've changed the text. Thanks!
Verified on EAP 6.3.0.ER4