[
https://issues.jboss.org/browse/WFCORE-692?page=com.atlassian.jira.plugin...
]
Paul Ferraro updated WFCORE-692:
--------------------------------
Description:
If a resource exists with the same key as the target address of a resource alias,
read-children-names can return incorrect results.
Here's an example:
I have a alias registered that translates:
{noformat}/subsystem=infinispan/cache-container=*/local-cache=*/file-store=FILE_STORE{noformat}
to:
{noformat}/subsystem=infinispan/cache-container=*/local-cache=*/store=file{noformat}
Additionally, I have a resource named:
{noformat}/subsystem=infinispan/cache-container=*/local-cache=*/store=none{noformat}
If I create a cache that uses store=none, the corresponding
read-children-names(child-type=file-store, include-aliases=true) operation returns the
name of the FILE_STORE resource, even though the target resource (i.e. file=store) does
not exist.
This additionally causes the /subsystem=infinispan:read-resource(include-aliases=true,
recursive=true) operation to fail.
was:
If a resource exists with the same key as the target address of a resource alias,
read-resource-children
Just because an alias is registered doesn't mean a child resource necessarily exists
at the target address. The handler needs to validate that a resource actually exists at
the target address rather than assuming it does. This causes
read-resource(recursive=true, include-aliases=true) to fail.
Here's an example:
I have a alias registered that translates:
{noformat}/subsystem=infinispan/cache-container=*/local-cache=*/file-store=FILE_STORE{noformat}
to:
{noformat}/subsystem=infinispan/cache-container=*/local-cache=*/store=file{noformat}
If I create a cache without a file cache store (which is perfectly valid), the
corresponding read-resource operation returns a child for file-store=FILE_STORE, even
though it returns no child for file=store (the target address), since no such child
resource exists.
This is very problematic, since it makes aliases impossible to use if the target child
resource is not always present.
read-children-names(include-aliases=true) can return phantom results
if another resource exists with the same key
-----------------------------------------------------------------------------------------------------------------
Key: WFCORE-692
URL:
https://issues.jboss.org/browse/WFCORE-692
Project: WildFly Core
Issue Type: Bug
Components: Domain Management
Affects Versions: 1.0.0.CR3
Reporter: Paul Ferraro
Assignee: Brian Stansberry
If a resource exists with the same key as the target address of a resource alias,
read-children-names can return incorrect results.
Here's an example:
I have a alias registered that translates:
{noformat}/subsystem=infinispan/cache-container=*/local-cache=*/file-store=FILE_STORE{noformat}
to:
{noformat}/subsystem=infinispan/cache-container=*/local-cache=*/store=file{noformat}
Additionally, I have a resource named:
{noformat}/subsystem=infinispan/cache-container=*/local-cache=*/store=none{noformat}
If I create a cache that uses store=none, the corresponding
read-children-names(child-type=file-store, include-aliases=true) operation returns the
name of the FILE_STORE resource, even though the target resource (i.e. file=store) does
not exist.
This additionally causes the /subsystem=infinispan:read-resource(include-aliases=true,
recursive=true) operation to fail.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)