When you have set the object store to be type of hornetq and then you change your mind to set it for jdbc object store the jboss-cli permits this operation but no change is propagated to model and XML file. How to reproduce: 1) ./bin/standalone.xml (start eap 6.2.0.GA) 2) ./bin/jboss-cli.sh -c (connect to running eap) 2a) /subsystem=transactions:write-attribute(name=use-hornetq-store, value=true) 2b) :reload 2c) /subsystem=transactions/log-store=log-store:read-attribute(name=type) 2d) /subsystem=transactions:write-attribute(name=use-jdbc-store, value=true) 2e) :reload 2f) /subsystem=transactions/log-store=log-store:read-attribute(name=type) The object store stays to be set to hornetq and no change happens in the standalone.xml file.
You need to disable 'use-hornetq-store' first as TransactionSubsystemXMLPersister prefers the hornetq store to the jdbc store, see the code snippet below: if(node.hasDefined(CommonAttributes.USEHORNETQSTORE) && node.get(CommonAttributes.USEHORNETQSTORE).asBoolean()) { .. } else if (node.hasDefined(CommonAttributes.USE_JDBC_STORE) && node.get(CommonAttributes.USE_JDBC_STORE).asBoolean()) { .. } Other possibility would be to enhance 'use-hornetq-store' and 'use-jdbc-store' write handlers to disable the opposite option.
The workaround for this is to change the other attribute before reloading, probably best to do it in a batch.
Created PR: https://github.com/jbossas/jboss-eap/pull/1140
Ok, it works for me now. Checked on EAP 6.3.0.ER1. Thank you.