Hi Alex,

The issue is not with messages but with bindings. If I have an exchange and a 
queue with identical names (in this case, I named them Ae8M6kKM),  moving the 
master node to another server brake the binding. 

If both exchange and queue have different names, everything works correctly.

Here is the stack trace. I moved the master node and tried to delete the 
binding:

2022-01-13T14:39:55,179Z DEBUG [qtp1018056877-65] 
(o.a.q.s.m.AbstractConfiguredObject) - authorise returned ALLOWED
2022-01-13T14:39:55,180Z DEBUG [VirtualHostNode-default2-Config] 
(o.a.q.s.c.u.TaskExecutorImpl) - Performing Task['unbind' on 
'TopicExchangeImplWithAccessChecking[Ae8M6kKM]' with arguments 
'destination=Ae8M6kKM,bindingKey=#']
2022-01-13T14:39:55,181Z DEBUG [VirtualHostNode-default2-Config] 
(o.a.q.s.c.u.TaskExecutorImpl) - Task['unbind' on 
'TopicExchangeImplWithAccessChecking[Ae8M6kKM]' with arguments 
'destination=Ae8M6kKM,bindingKey=#'] performed successfully with result: null
2022-01-13T14:39:55,185Z WARN  [qtp1018056877-65] 
(o.a.q.s.m.p.ManagementException) - Unexpected Exception
java.lang.NullPointerException: null
        at 
org.apache.qpid.server.queue.AbstractQueue.linkRemoved(AbstractQueue.java:3836)
        at 
org.apache.qpid.server.exchange.AbstractExchange.unbind(AbstractExchange.java:827)
        at 
org.apache.qpid.server.exchange.TopicExchangeImplWithAccessChecking.access$301(TopicExchangeImplWithAccessChecking.java:33)
        at 
org.apache.qpid.server.exchange.TopicExchangeImplWithAccessChecking$4.execute(TopicExchangeImplWithAccessChecking.java:160)
        at 
org.apache.qpid.server.exchange.TopicExchangeImplWithAccessChecking$4.execute(TopicExchangeImplWithAccessChecking.java:155)
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$2.execute(AbstractConfiguredObject.java:647)
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$2.execute(AbstractConfiguredObject.java:640)
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:248)
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl$CallableWrapper$1.run(TaskExecutorImpl.java:320)
        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:125)
        at 
com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
        at 
com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at 
org.apache.qpid.server.bytebuffer.QpidByteBufferFactory.lambda$null$0(QpidByteBufferFactory.java:464)
        at java.base/java.lang.Thread.run(Thread.java:829)
2022-01-13T14:39:55,186Z DEBUG [qtp1018056877-65] (o.a.q.s.m.p.f.LoggingFilter) 
- RESPONSE method='POST' 
url='http://testqpid:8443//api/latest/exchange/default2/default/Ae8M6kKM/unbind'
 status='500’


Thanks

Andrey


> On 13 Jan 2022, at 13:31, Oleksandr Rudyy <oru...@gmail.com> wrote:
> 
> Hi Andrey,
> 
> Only persistent messages survive the change of the master. The
> transient messages are lost on mastership transfer.
> Could you please verify that persistent messages are published into
> durable queues?
> 
> As for error 500 "Please correct the problem and retry your
> operation." reported for the binding delete operation, could you
> please provide exception stack traces reported into broker logs?
> 
> 
> Kind Regards,
> Alex
> 
> 
> 
> 
> On Tue, 11 Jan 2022 at 19:29, Andrey Shi <shemanovs...@gmail.com> wrote:
>> 
>> Hi all,
>> 
>> I have a three-node cluster qpid broker-j 8.0.6
>> 
>> I create a topic and durable queue with the same name (for example, random 
>> generated Ae8M6kKM) and make a binding. At this stage, I can send and 
>> receive messages.
>> 
>> I move the master node to another server. After that, all messages that I 
>> sent to the topic Ae8M6kKM dropped.
>> If I try to delete the binding, web interface returns an error with code 500 
>> "Please correct the problem and retry your operation.", but the binding is 
>> deleted successfully. After the binding recreation, all messages are sent 
>> and received correctly.
>> 
>> If I move the master node, the issue reproduces again. I have reproduced 
>> this behaviour on different clusters.
>> 
>> Does anyone know how to fix this?
>> 
>> Thanks
>> 
>> 
>> Andrey
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
>> For additional commands, e-mail: users-h...@qpid.apache.org
>> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
> For additional commands, e-mail: users-h...@qpid.apache.org
> 


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

Reply via email to