[jboss-jira] [JBoss JIRA] (WFLY-9021) Unhelpful failure message if transaction subsystem 'delete' op is run against a non-existent resource on a domain mode server
Brian Stansberry (JIRA)
issues at jboss.org
Wed Jun 28 17:07:00 EDT 2017
[ https://issues.jboss.org/browse/WFLY-9021?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Brian Stansberry updated WFLY-9021:
-----------------------------------
Description:
In a domain if you run the 'delete' op against an invalid transaction resource you get an invalid failure message about trying to directly call a write op on a server:
{code}
[domain at localhost:9990 /] /host=master/server=server-one/subsystem=transactions/log-store=log-store/transactions=0\:ffff0afc4420\:3b2568af\:594b9528\::delete()
{
"outcome" => "failed",
"result" => undefined,
"failure-description" => "WFLYCTL0249: Operation 'delete' targeted at resource '[
(\"subsystem\" => \"transactions\"),
(\"log-store\" => \"log-store\"),
(\"transactions\" => \"0:ffff0afc4420:3b2568af:594b9528:\")
]' was directly invoked by a user. User operations are not permitted to directly update the persistent configuration of a server in a managed domain.",
"rolled-back" => true
}
{code}
This is because if the resource doesn't exist, the check for mods to non-runtime-only resources is checking the MRR to see if it's runtime only. But this MRR doesn't declare it is so the kernel thinks a direct write to the model is happening and rejects that.
A fix results in the appropriate failure for invoking against a non-existent resource:
{code}
[domain at localhost:9990 /] /host=master/server=server-one/subsystem=transactions/log-store=log-store/transactions=0\:ffff0afc4420\:3b2568af\:594b9528\::delete()
{
"outcome" => "failed",
"result" => undefined,
"failure-description" => "WFLYCTL0216: Management resource '[
(\"subsystem\" => \"transactions\"),
(\"log-store\" => \"log-store\"),
(\"transactions\" => \"0:ffff0afc4420:3b2568af:594b9528:\")
]' not found",
"rolled-back" => true
}
{code}
was:
In a domain if you run the 'delete' op against an invalid transaction resource you get an invalid failure message about trying to directly call a write op on a server:
{code}
[domain at localhost:9990 /] /host=master/server=server-one/subsystem=transactions/log-store=log-store/transactions=0\:ffff0afc4420\:3b2568af\:594b9528\::delete()
{
"outcome" => "failed",
"result" => undefined,
"failure-description" => "WFLYCTL0249: Operation 'delete' targeted at resource '[
(\"subsystem\" => \"transactions\"),
(\"log-store\" => \"log-store\"),
(\"transactions\" => \"0:ffff0afc4420:3b2568af:594b9528:\")
]' was directly invoked by a user. User operations are not permitted to directly update the persistent configuration of a server in a managed domain.",
"rolled-back" => true
}
{code}
This is because if the resource doesn't exist, the check for mods to non-runtime-only resources is checking the MRR to see if its runtime only. But this MRR doesn't declare it is so the kernel thinks a direct write to the model is happening and rejects that.
A fix results in:
{code}
[domain at localhost:9990 /] /host=master/server=server-one/subsystem=transactions/log-store=log-store/transactions=0\:ffff0afc4420\:3b2568af\:594b9528\::delete()
{
"outcome" => "failed",
"result" => undefined,
"failure-description" => "WFLYCTL0216: Management resource '[
(\"subsystem\" => \"transactions\"),
(\"log-store\" => \"log-store\"),
(\"transactions\" => \"0:ffff0afc4420:3b2568af:594b9528:\")
]' not found",
"rolled-back" => true
}
{code}
> Unhelpful failure message if transaction subsystem 'delete' op is run against a non-existent resource on a domain mode server
> -----------------------------------------------------------------------------------------------------------------------------
>
> Key: WFLY-9021
> URL: https://issues.jboss.org/browse/WFLY-9021
> Project: WildFly
> Issue Type: Bug
> Components: Transactions
> Reporter: Brian Stansberry
> Assignee: Brian Stansberry
> Priority: Minor
>
> In a domain if you run the 'delete' op against an invalid transaction resource you get an invalid failure message about trying to directly call a write op on a server:
> {code}
> [domain at localhost:9990 /] /host=master/server=server-one/subsystem=transactions/log-store=log-store/transactions=0\:ffff0afc4420\:3b2568af\:594b9528\::delete()
> {
> "outcome" => "failed",
> "result" => undefined,
> "failure-description" => "WFLYCTL0249: Operation 'delete' targeted at resource '[
> (\"subsystem\" => \"transactions\"),
> (\"log-store\" => \"log-store\"),
> (\"transactions\" => \"0:ffff0afc4420:3b2568af:594b9528:\")
> ]' was directly invoked by a user. User operations are not permitted to directly update the persistent configuration of a server in a managed domain.",
> "rolled-back" => true
> }
> {code}
> This is because if the resource doesn't exist, the check for mods to non-runtime-only resources is checking the MRR to see if it's runtime only. But this MRR doesn't declare it is so the kernel thinks a direct write to the model is happening and rejects that.
> A fix results in the appropriate failure for invoking against a non-existent resource:
> {code}
> [domain at localhost:9990 /] /host=master/server=server-one/subsystem=transactions/log-store=log-store/transactions=0\:ffff0afc4420\:3b2568af\:594b9528\::delete()
> {
> "outcome" => "failed",
> "result" => undefined,
> "failure-description" => "WFLYCTL0216: Management resource '[
> (\"subsystem\" => \"transactions\"),
> (\"log-store\" => \"log-store\"),
> (\"transactions\" => \"0:ffff0afc4420:3b2568af:594b9528:\")
> ]' not found",
> "rolled-back" => true
> }
> {code}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
More information about the jboss-jira
mailing list