[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host causing virtualhost restart fail
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16346880#comment-16346880 ] ASF subversion and git services commented on QPID-8066: --- Commit bce93dfb642ef30a87227377d71c588b084d7d04 in qpid-broker-j's branch refs/heads/master from [~alex.rufous] [ https://git-wip-us.apache.org/repos/asf?p=qpid-broker-j.git;h=bce93df ] QPID-8066: [Broker-J] Fix jdbc store deletion on removal of Virtual Host Node or/and Virtual Host > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host causing > virtualhost restart failure > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Assignee: Keith Wall >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > Attachments: > 0001-QPID-8066-Broker-J-Remove-all-children-records-recur.patch, > QPID-8066.tar.bz2 > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.run(TaskExecutorImpl.java:190) > at > org.apache.qpid.server.store.GenericRecoverer.recover(GenericRecoverer.java:54) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.recover(VirtualHostStoreUpgraderAndRecoverer.java:1085) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.upgradeAndRecover(VirtualHostStoreUpgraderAndRecoverer.java:1058) > at > org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode.activate(AbstractStandardVirtualHostNode.java:91) > at > org.apache.qpid.server.virtualhostnode.AbstractVirtualHostNode.doActivate(AbstractVirtualHostNode.java:162) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1524) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1503) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1070) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1064) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2639) > at >
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host causing virtualhost restart fail
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16346871#comment-16346871 ] Alex Rudyy commented on QPID-8066: -- The implemented changes reviled the defect with jdbc store deletion on VHN/VH removal > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host causing > virtualhost restart failure > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Assignee: Keith Wall >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > Attachments: > 0001-QPID-8066-Broker-J-Remove-all-children-records-recur.patch, > QPID-8066.tar.bz2 > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.run(TaskExecutorImpl.java:190) > at > org.apache.qpid.server.store.GenericRecoverer.recover(GenericRecoverer.java:54) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.recover(VirtualHostStoreUpgraderAndRecoverer.java:1085) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.upgradeAndRecover(VirtualHostStoreUpgraderAndRecoverer.java:1058) > at > org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode.activate(AbstractStandardVirtualHostNode.java:91) > at > org.apache.qpid.server.virtualhostnode.AbstractVirtualHostNode.doActivate(AbstractVirtualHostNode.java:162) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1524) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1503) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1070) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1064) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2639) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2635) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:360) > at >
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host causing virtualhost restart fail
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16345510#comment-16345510 ] ASF subversion and git services commented on QPID-8066: --- Commit dd9f95686e88772d3acbb4d020edbe517900c939 in qpid-broker-j's branch refs/heads/6.1.x from [~alex.rufous] [ https://git-wip-us.apache.org/repos/asf?p=qpid-broker-j.git;h=dd9f956 ] QPID-8066: [Broker-J] Delete log inclusion rules on logger deletion (cherry picked from commit 3daf38b2bc0d0d36ad778b1946e36fcb5e85b25d) > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host causing > virtualhost restart failure > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Assignee: Keith Wall >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > Attachments: > 0001-QPID-8066-Broker-J-Remove-all-children-records-recur.patch, > QPID-8066.tar.bz2 > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.run(TaskExecutorImpl.java:190) > at > org.apache.qpid.server.store.GenericRecoverer.recover(GenericRecoverer.java:54) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.recover(VirtualHostStoreUpgraderAndRecoverer.java:1085) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.upgradeAndRecover(VirtualHostStoreUpgraderAndRecoverer.java:1058) > at > org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode.activate(AbstractStandardVirtualHostNode.java:91) > at > org.apache.qpid.server.virtualhostnode.AbstractVirtualHostNode.doActivate(AbstractVirtualHostNode.java:162) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1524) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1503) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1070) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1064) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2639) > at >
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host causing virtualhost restart fail
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16345351#comment-16345351 ] ASF subversion and git services commented on QPID-8066: --- Commit 3daf38b2bc0d0d36ad778b1946e36fcb5e85b25d in qpid-broker-j's branch refs/heads/7.0.x from [~alex.rufous] [ https://git-wip-us.apache.org/repos/asf?p=qpid-broker-j.git;h=3daf38b ] QPID-8066: [Broker-J] Delete log inclusion rules on logger deletion > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host causing > virtualhost restart failure > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Assignee: Keith Wall >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > Attachments: > 0001-QPID-8066-Broker-J-Remove-all-children-records-recur.patch, > QPID-8066.tar.bz2 > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.run(TaskExecutorImpl.java:190) > at > org.apache.qpid.server.store.GenericRecoverer.recover(GenericRecoverer.java:54) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.recover(VirtualHostStoreUpgraderAndRecoverer.java:1085) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.upgradeAndRecover(VirtualHostStoreUpgraderAndRecoverer.java:1058) > at > org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode.activate(AbstractStandardVirtualHostNode.java:91) > at > org.apache.qpid.server.virtualhostnode.AbstractVirtualHostNode.doActivate(AbstractVirtualHostNode.java:162) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1524) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1503) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1070) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1064) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2639) > at >
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host causing virtualhost restart fail
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16344958#comment-16344958 ] Keith Wall commented on QPID-8066: -- Alex, I incorporated the changes we agreed following the review into [96a4e13|https://git-wip-us.apache.org/repos/asf?p=qpid-broker-j.git;h=96a4e13]. > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host causing > virtualhost restart failure > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Assignee: Keith Wall >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > Attachments: > 0001-QPID-8066-Broker-J-Remove-all-children-records-recur.patch, > QPID-8066.tar.bz2 > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.run(TaskExecutorImpl.java:190) > at > org.apache.qpid.server.store.GenericRecoverer.recover(GenericRecoverer.java:54) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.recover(VirtualHostStoreUpgraderAndRecoverer.java:1085) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.upgradeAndRecover(VirtualHostStoreUpgraderAndRecoverer.java:1058) > at > org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode.activate(AbstractStandardVirtualHostNode.java:91) > at > org.apache.qpid.server.virtualhostnode.AbstractVirtualHostNode.doActivate(AbstractVirtualHostNode.java:162) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1524) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1503) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1070) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1064) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2639) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2635) > at java.security.AccessController.doPrivileged(Native Method) > at
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host causing virtualhost restart fail
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16344954#comment-16344954 ] ASF subversion and git services commented on QPID-8066: --- Commit 96a4e13194095ba5cf08e1b8f886afb6c8b0adf2 in qpid-broker-j's branch refs/heads/master from [~k-wall] [ https://git-wip-us.apache.org/repos/asf?p=qpid-broker-j.git;h=96a4e13 ] QPID-8066: [Model] Refactor object delete so that an object's children delete themselves too > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host causing > virtualhost restart failure > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Assignee: Keith Wall >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > Attachments: > 0001-QPID-8066-Broker-J-Remove-all-children-records-recur.patch, > QPID-8066.tar.bz2 > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.run(TaskExecutorImpl.java:190) > at > org.apache.qpid.server.store.GenericRecoverer.recover(GenericRecoverer.java:54) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.recover(VirtualHostStoreUpgraderAndRecoverer.java:1085) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.upgradeAndRecover(VirtualHostStoreUpgraderAndRecoverer.java:1058) > at > org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode.activate(AbstractStandardVirtualHostNode.java:91) > at > org.apache.qpid.server.virtualhostnode.AbstractVirtualHostNode.doActivate(AbstractVirtualHostNode.java:162) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1524) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1503) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1070) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1064) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2639) > at >
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host causing virtualhost restart fail
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16340908#comment-16340908 ] Alex Rudyy commented on QPID-8066: -- Keith, I reviewed the changes in the attached patch. In general I believe that proposed changes is a move in right direction. It looks like the changes prepare the ground for QPID-7197. Also, they address partially QPID-7547 which might be closed after committing the patch. Here are my review comments * BDBHAVirtualHostNodeImpl ** {{_helpers} field itself and setting of {{_helper}} field in {{beforeDelete}} does not look necessary to me. It seems that local variable in {{onDelete}} can be introduced for this purpose. ** Flag {{_isClosed}} is set on both deletion and close. Would it be better to rename the flag into {{_isClosingOrDeleting}} to reflect that it can be set from both operations? ** {{#removeRemoteReplicationNode}} invokes {{deleteAsync}}. I think that {{deleteNoChecks}} should be called instead off {{deleteAsync}} in order to avoid unnecessary authorization checks. ** In {{onDelete}} of BDB HA VHN its VH is get closed. We discussed that before and you implemented exactly what we discussed. Though, after reviewing the changes, it looks more logical to me to close all direct children of CO with {{managesChildStorage=true}} in {{AbstractConfiguredObject#deleteChildren}}. Thus, no call to close the children would be required in the implementation of {{onDelete}}. * AbstractExchange ** {{#onDelete}}; why performDelete is called only on condition {{getState() != State.UNINITIALIZED}}? It seems to me that this condition need to be removed otherwise a reference to _alternateBindingDestination will not removed and binding count statistics on queues will not be updated. * AmqpPortImpl ** {{_closing}}; is set on deletion and close. Would it be better to rename the flag into {{_isClosingOrDeleting}} to reflect that it can be set from both operations? * AbstractConfiguredObject ** In {{deleteChildren}} when {{managesChildStorage=true}}, the immediate future is returned. Would it be better to close the children and return close future? Though, it is not required now, but taking that it is a generic code, potentially, on close some system resources can be cleaned up. At the moment, COs managing children close the children by themselves in {{doDelete}} which looks to me like a duplication of code. ** {{CreateExceptionHandler#handleException}} invokes {{deleteAsync}}. IMHO, it should call {{deleteNoChecks}} in order to avoid making unnecessary authorization checks. ** when child is not instance AbstractConfiguredObject or AbstractConfiguredObjectProxy, it seems it will not be deleted. It does not look like a problem at the moment, but, it points to the potential gap in a public API of {{ConfiguredObject}} interface. We might need a public method to perform the delete checks. * AbstractQueue ** {{_deleteQueueDepthFuture}} is set twice: once prematurely at the beigining of {{#performDelete}} and second time at the end of {{#performDelete}} ** Method {{deleteAndReturnCountAsync}} calls {{deleteAsync}}. It seems it should call {{deleteNoCheck}} as authorization and checks are done in {{deleteAndReturnCountAsync}}. * QueueConsumerImpl ** {{deleteAsync}} is invoked from {{onClose}}. As result authorization check would be performed which is not really necessary. Would it be better to call {{deleteNoChecks}} instead of {{deleteAsync}} * AbstractAuthenticationManager ** Method {{performDelete}} can be inlined. * Immediate future is created explicitly in {{doDelete}}. Would it be better to call {{super.doDelete()}} for consistency reasons? * AbstractKeyStore ** Method {{deleteIfNotInUse}} is not used and can be safely removed. ** Method {{doDelete}} can call and return {{super.doDelete}} instead of creation of intermediate future * AbstractTrustStore ** Immediate future is created explicitly in {{doDelete}}. Would it be better to call {{super.doDelete()}} for consistency? * AbstractAMQPSession ** Immediate future is created explicitly in {{doDelete}}. Would it be better to call {{super.doDelete()}} for consistency? ** Task {{_deleteModelTask}} calls {{deleteAsync}}. IMHO, it should call {{deleteNoChecks}} to avoid unnecessary authorization and checks. * PrincipalDatabaseAuthenticationManager ** In method {{addChildAsync}} on {{RuntimeException}} the user is deleted asynchronously by calling {{principalAdapter.deleteAsync();}}. IMHO, {{deleteNoChecks}} should be called instead to avoid no necessary auth checks. > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host causing > virtualhost restart failure >
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host causing virtualhost restart fail
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16337659#comment-16337659 ] Keith Wall commented on QPID-8066: -- I think the nub of the problem is that when deleting an object, the child objects never know that they are being deleted. This means that the child's listeners aren't fired, so the store never hears about the change. I attach a patch that changes how delete works. When deleting an object, after the operation has passed the authorisation/validation checks, now propagates the delete, depth first, to all child objects until a store-discontinuity is encountered in the tree. The child deletes proceed without an additional authorisation and validation checks. To me having the authorisation to delete a parent confers rights to delete the children. The reason for pruning at the discontinuity is because the object encountered at the discontinuity is responsible for storage of the children beneath. As this object is about to be deleted and the child-storage will go too. If we were to traverse into the children beyond the discontinuity we would generate a stream of unnecessary deletes that the child storage would need to handle needlessly. The patch gets rid of the {{deleted()/setState(DELETED)}} idiom we had scattered about the code. This is now centralised within ACO. {{deleted()}} is now private too. I have *tentatively* removed support for delete state listener methods. Delete actions are now in first class methods {{beforeDelete()}} and {{onDelete()}}following the beforeClose/onClose() pattern. I *think* the general feeling was that the state change listener method were a bad idea - fragile in class hierarchies and hard to work with in the IDE, so I see this as a step towards their elimination. Finally VHN delete needed some special casing to deal with the fact that there might be message storage associated with the VirtualHost child. Without the special casing the storage wouldn't disappear. I did try a few things to get rid of this wrinkle, but they ended up more obscure than what I have now. Given there are only two cases, I think this is acceptable. > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host causing > virtualhost restart failure > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Assignee: Keith Wall >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > Attachments: > 0001-QPID-8066-Broker-J-Remove-all-children-records-recur.patch, > QPID-8066.tar.bz2 > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) >
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16332883#comment-16332883 ] Alex Rudyy commented on QPID-8066: -- Attached a tactical patch to remove all children records on removal of an entry for the configured object. > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > Attachments: > 0001-QPID-8066-Broker-J-Remove-all-children-records-recur.patch > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.run(TaskExecutorImpl.java:190) > at > org.apache.qpid.server.store.GenericRecoverer.recover(GenericRecoverer.java:54) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.recover(VirtualHostStoreUpgraderAndRecoverer.java:1085) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.upgradeAndRecover(VirtualHostStoreUpgraderAndRecoverer.java:1058) > at > org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode.activate(AbstractStandardVirtualHostNode.java:91) > at > org.apache.qpid.server.virtualhostnode.AbstractVirtualHostNode.doActivate(AbstractVirtualHostNode.java:162) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1524) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1503) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1070) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1064) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2639) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2635) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:360) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22.onSuccess(AbstractConfiguredObject.java:2634) > at >
[jira] [Commented] (QPID-8066) [Broker-J] Virtual host logger rules are left over in configuration store after deletion of virtual host logger on provided virtual host
[ https://issues.apache.org/jira/browse/QPID-8066?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16318648#comment-16318648 ] Keith Wall commented on QPID-8066: -- I'm guessing from the description that this wouldn't happen for a JSON configuration store, as that store is hierarchal in nature. Agree lets investigate with tentative fix for v7.0.1. > [Broker-J] Virtual host logger rules are left over in configuration store > after deletion of virtual host logger on provided virtual host > > > Key: QPID-8066 > URL: https://issues.apache.org/jira/browse/QPID-8066 > Project: Qpid > Issue Type: Bug > Components: Broker-J >Affects Versions: qpid-java-6.0, qpid-java-6.0.1, qpid-java-6.0.2, > qpid-java-6.0.3, qpid-java-6.0.4, qpid-java-6.0.5, qpid-java-6.1, > qpid-java-6.0.6, qpid-java-6.1.1, qpid-java-6.1.2, qpid-java-6.0.7, > qpid-java-6.1.3, qpid-java-6.0.8, qpid-java-6.1.4, qpid-java-broker-7.0.0, > qpid-java-6.1.5 >Reporter: Alex Rudyy >Priority: Critical > Fix For: qpid-java-broker-7.0.1, qpid-java-broker-7.1.0 > > > Virtual host logger rules are left over in configuration store after deletion > of virtual host logger on provided virtual host. On restart of VHN or Broker, > virtual host recovery fails with IllegalArgumentException as the one below: > {noformat} > java.lang.IllegalArgumentException: Recovered configured object record > BDBConfiguredObjectRecord [id=8e9c5547-c41b-4443-9333-48dac61f3b40, > type=VirtualHostLogInclusionRule, name=test, parents={}] has no recorded > parents and is not a valid child type [[interface > org.apache.qpid.server.model.VirtualHost, interface > org.apache.qpid.server.model.RemoteReplicationNode]] for the root > BDBVirtualHostNodeImplWithAccessChecking > [id=591aa6d9-c2e0-474c-a0a9-86eb14bc3c6a, name=bdb, > storePath=/home/alex/.qpid-7.1.0-SNAPSHOT/bdb/config] > at > org.apache.qpid.server.store.GenericRecoverer.resolveDiscontinuity(GenericRecoverer.java:119) > at > org.apache.qpid.server.store.GenericRecoverer.performRecover(GenericRecoverer.java:90) > at > org.apache.qpid.server.store.GenericRecoverer.access$000(GenericRecoverer.java:41) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:59) > at > org.apache.qpid.server.store.GenericRecoverer$1.execute(GenericRecoverer.java:55) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:165) > at > org.apache.qpid.server.configuration.updater.TaskExecutorImpl.run(TaskExecutorImpl.java:190) > at > org.apache.qpid.server.store.GenericRecoverer.recover(GenericRecoverer.java:54) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.recover(VirtualHostStoreUpgraderAndRecoverer.java:1085) > at > org.apache.qpid.server.store.VirtualHostStoreUpgraderAndRecoverer.upgradeAndRecover(VirtualHostStoreUpgraderAndRecoverer.java:1058) > at > org.apache.qpid.server.virtualhostnode.AbstractStandardVirtualHostNode.activate(AbstractStandardVirtualHostNode.java:91) > at > org.apache.qpid.server.virtualhostnode.AbstractVirtualHostNode.doActivate(AbstractVirtualHostNode.java:162) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1524) > at > org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1503) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1070) > at > org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:1064) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2639) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22$1.run(AbstractConfiguredObject.java:2635) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:360) > at > org.apache.qpid.server.model.AbstractConfiguredObject$22.onSuccess(AbstractConfiguredObject.java:2634) > at >