]
RH Bugzilla Integration commented on WFLY-1309:
-----------------------------------------------
Petr Kremensky <pkremens(a)redhat.com> changed the Status of [bug
CLI: creating a server on a domain slave followed by setting a system
property fails when done in batch mode
------------------------------------------------------------------------------------------------------------
Key: WFLY-1309
URL:
https://issues.jboss.org/browse/WFLY-1309
Project: WildFly
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Domain Management
Affects Versions: 8.0.0.Alpha1
Environment: wildfly build from a git clone on 2013-05-02
Reporter: Tom Fonteyne
Assignee: Emanuel Muckenhuber
Fix For: 8.0.0.CR1
Attachments: host-domain-controller.xml, host-slave.xml
Setup two boxes:
- on one, run domain mode (full-ha) -> domain controller
- on the other, configure host.xml to point to the DC, and run the host controller
Now in CLI:
# add the group:
/server-group=slaves:add(profile=full-ha,socket-binding-group=full-ha-sockets)
# create server and set a prop
batch
/host=slave1/server-config=i1:add(group=slaves,auto-start=false)
/host=slave1/server-config=i1/system-property=env:add(value=dev)
run-batch
results in:
JBAS010839: Operation failed or was rolled back on all servers.
Debugging (on EAP 6.0.1) showed the real reason:
activeStep.response = (org.jboss.dmr.ModelNode) {
"outcome" => "failed",
"failure-description" => "JBAS010850: No handler for operation
composite at address [
(\"host\" => \"slave1\"),
(\"server\" => \"i1\")
]",
"rolled-back" => true
}
More debugging led to :
org.jboss.as.controller.AbstractOperationContext
seems to be where the rollback is set. When debugging, I found that the constructor
always sets
ModelController.OperationTransactionControl transactionControl
but at line 332 (eap 6.0.1) / line 372 (wildfly), the end of doCompleteStep() :
// Allow any containing TransactionControl to vote
final AtomicReference<ResultAction> ref = new
AtomicReference<ResultAction>(transactionControl == null ? ResultAction.KEEP :
ResultAction.ROLLBACK);
and ref becomes a rollback.
I "walked" pretty much of all the code going on in between. The bit where the
config is getting persisted is successful.
But I'm afraid I'm out of my depth as there is *a lot* going on to execute such a
composite command :)