Keith Wall created QPID-7934:
--------------------------------

             Summary: [Java Broker] A recovered 
RuleBasedVirtualHostAccessControlProvider doesn’t tell the virtualhost about 
changes to itself
                 Key: QPID-7934
                 URL: https://issues.apache.org/jira/browse/QPID-7934
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
            Reporter: Keith Wall


A recovered {{RuleBasedVirtualHostAccessControlProvider}} doesn’t tell its 
virtualhost about changes to itself, so the virtualhost doesn’t react to 
changes in its state (i.e. the rule-set).  This issue exists on the normal 
Broker start-up path.  It means that if the user attempts to change a rule-set 
the changes are not applied.

If a new RuleBasedVirtualHostAccessControlProvider is added, changes made to it 
are reported properly to the VirtualHost.  (This is why 
VirtualHostAccessControlProviderRestTest does not fail).

The issue is that {{AbstractVirtualHost#postResolveChildren}} fails to add 
state listeners to existing {{VirtualHostAccessControlProviders}}.  The same 
issue applies on the virtualhost restart path (much like QPID-7933).

There is a second problem that lies behind the first.  If you fix 
#postResolveChildren to install the listener on the existing VHACP, you find 
that the VH still update its ACL controller state probably after changes to the 
provider.  This problem is that AbstractVirtualHost#updateAccessControl gets 
called before #recreateAccessController so the VH continues to stale a stale 
controller.







--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to