You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2024/01/23 09:30:00 UTC

[jira] [Commented] (QPID-8665) [Broker-J] Changing queue exclusive mode throws exception

    [ https://issues.apache.org/jira/browse/QPID-8665?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17809844#comment-17809844 ] 

ASF GitHub Bot commented on QPID-8665:
--------------------------------------

dakirily opened a new pull request, #233:
URL: https://github.com/apache/qpid-broker-j/pull/233

   This PR addresses JIRA [QPID-8665](https://issues.apache.org/jira/browse/QPID-8665), fixing an exception thrown when changing queue exclusive mode




> [Broker-J] Changing queue exclusive mode throws exception
> ---------------------------------------------------------
>
>                 Key: QPID-8665
>                 URL: https://issues.apache.org/jira/browse/QPID-8665
>             Project: Qpid
>          Issue Type: Bug
>          Components: Broker-J
>    Affects Versions: qpid-java-broker-9.1.0
>            Reporter: Daniil Kirilyuk
>            Priority: Minor
>             Fix For: qpid-java-broker-9.1.1
>
>
> If queue has a consumer and exclusive mode is set to CONNECTION, then changing queue exclusive mode to PRINCIPAL or CONTAINER will throw exception below. Then no consumer is able to consume messages from queue and broker's webgui fails to show Edit Queue dialog again.
> Steps to reproduce:
>  * set queue exclusive mode to CONNECTION in broker's webgui
>  * connect to queue
>  * set queue exclusive mode to PRINCIPAL or CONTAINER in broker's webgui
>  * exception should be thrown
> {noformat}
> 2024-01-16T09:30:55,432Z INFO  [VirtualHostNode-default-Config] (q.m.q.update) - [mng:uO4gG/VX(admin@/127.0.0.1:45136)] [vh(/default)/qu(broadcast.CAREX_TESTCALMMACC1.Public)] QUE-1017 : Update : "broadcast.CAREX_TESTCALMMACC1.Public" : FAILURE : {alternateBinding=null,exclusive=PRINCIPAL}
> 2024-01-16T09:30:55,435Z WARN  [qtp398517223-54] (o.a.q.s.m.p.ManagementException) - Unexpected Exception
> java.lang.ClassCastException: class java.lang.String cannot be cast to class java.security.Principal (java.lang.String and java.security.Principal are in module java.base of loader 'bootstrap')
>         at org.apache.qpid.server.queue.AbstractQueue.getOwner(AbstractQueue.java:776)
>         at jdk.internal.reflect.GeneratedMethodAccessor85.invoke(Unknown Source)
>         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.base/java.lang.reflect.Method.invoke(Method.java:566)
>         at org.apache.qpid.server.model.ConfiguredObjectMethodAttributeOrStatistic.getValue(ConfiguredObjectMethodAttributeOrStatistic.java:68)
>         at org.apache.qpid.server.model.ConfiguredObjectMethodAttribute.getValue(ConfiguredObjectMethodAttribute.java:29)
>         at org.apache.qpid.server.model.AbstractConfiguredObject.getAttribute(AbstractConfiguredObject.java:1792)
>         at org.apache.qpid.server.model.AbstractConfiguredObject$9.lambda$getAttributes$0(AbstractConfiguredObject.java:1916)
>         at java.base/java.security.AccessController.doPrivileged(Native Method)
>         at java.base/javax.security.auth.Subject.doAs(Subject.java:361)
>         at org.apache.qpid.server.model.AbstractConfiguredObject$9.getAttributes(AbstractConfiguredObject.java:1906)
>         at org.apache.qpid.server.store.JsonFileConfigStore.update(JsonFileConfigStore.java:420)
>         at org.apache.qpid.server.configuration.store.StoreConfigurationChangeListener.bulkChangeEnd(StoreConfigurationChangeListener.java:98)
>         at org.apache.qpid.server.model.AbstractConfiguredObject.bulkChangeEnd(AbstractConfiguredObject.java:3030)
>         at org.apache.qpid.server.model.AbstractConfiguredObject.changeAttributes(AbstractConfiguredObject.java:3065)
>         at org.apache.qpid.server.queue.AbstractQueue.changeAttributes(AbstractQueue.java:3369)
>         at org.apache.qpid.server.model.AbstractConfiguredObject$19.setAttributes(AbstractConfiguredObject.java:2914)
>         at org.apache.qpid.server.model.AbstractConfiguredObject$19.execute(AbstractConfiguredObject.java:2896)
>         at org.apache.qpid.server.model.AbstractConfiguredObject$19.execute(AbstractConfiguredObject.java:2889)
>         at org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248)
>         at org.apache.qpid.server.configuration.updater.TaskExecutorImpl$CallableWrapper.lambda$call$0(TaskExecutorImpl.java:317)
>         at java.base/java.security.AccessController.doPrivileged(Native Method)
>         at java.base/javax.security.auth.Subject.doAs(Subject.java:361)
>         at org.apache.qpid.server.configuration.updater.TaskExecutorImpl$CallableWrapper.call(TaskExecutorImpl.java:313)
>         at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131)
>         at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:75)
> {noformat}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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