[jboss-jira] [JBoss JIRA] (WFLY-7987) Remove operations should warn the user if the resource has any dependents

Guillermo González de Agüero (JIRA) issues at jboss.org
Sat Jan 28 11:32:00 EST 2017


Guillermo González de Agüero created WFLY-7987:
--------------------------------------------------

             Summary: Remove operations should warn the user if the resource has any dependents
                 Key: WFLY-7987
                 URL: https://issues.jboss.org/browse/WFLY-7987
             Project: WildFly
          Issue Type: Task
    Affects Versions: 10.1.0.Final
            Reporter: Guillermo González de Agüero
            Assignee: Jason Greene


Services may have dependents that can't work if they are not present. Removal operations should prevent, or least warn the user then he is about to remove a service that may have side effects.

Take a look at this example:

{code:shell}
[standalone at localhost:9990 /] /subsystem=undertow/configuration=filter/response-header=test:add(header-name=X-test, header-value=test)
{"outcome" => "success"}
[standalone at localhost:9990 /] /subsystem=undertow/server=default-server/host=default-host/filter-ref=test:add()
{"outcome" => "success"}
[standalone at localhost:9990 /] /subsystem=undertow/configuration=filter/response-header=test:remove()
{
    "outcome" => "success",
    "response-headers" => {
        "operation-requires-reload" => true,
        "process-state" => "reload-required"
    }
}
[standalone at localhost:9990 /] :reload()
{
    "outcome" => "success",
    "result" => undefined
}
[standalone at localhost:9990 /] /core-service=management:read-boot-errors()
{
    "outcome" => "success",
    "result" => [{
        "failed-operation" => {
            "operation" => "add",
            "address" => [
                ("subsystem" => "undertow"),
                ("server" => "default-server"),
                ("host" => "default-host"),
                ("filter-ref" => "test")
            ]
        },
        "failure-description" => "{\"WFLYCTL0412: Required services that are not installed:\" => [\"jboss.undertow.filter.test\"],\"WFLYCTL0180: Services with missing/unavailable dependencies\" => [\"jboss.undertow.server.default-server.default-host.filter-ref.test is missing [jboss.undertow.filter.test]\"]}",
        "services-missing-dependencies" => ["jboss.undertow.server.default-server.default-host.filter-ref.test is missing [jboss.undertow.filter.test]"]
    }]
}
{code}

A new Undertow filter is created and assigned to a host. The filter is then removed, but the host still needs it.

The problem is only seen after a server reload. The same thing happens when you remove, i.e. the default Servlet Container or the Bean pool of the EJB subsystem.

My proposal is to at least add a response head to the remove operations listing affected (dependent) services. This would complement the new WildFly 11 capability registry.



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)



More information about the jboss-jira mailing list