You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by Adam Chase <ad...@gmail.com> on 2009/01/23 06:05:46 UTC
cpp broker: subscriptionManager subscribe/unsubscribe/subscribe issue
Maybe you already know about this, but when I subscribe, then
unsubscribe and then resubscribe the same queue from a
subscriptionManager, I get: Queue already exists for SLOT.
I'm not suicidal. I'm trying to have my consumers fail-over and then fail-back.
I have 2 consumers and I want either of them to handle both
consumption queues if the other crashes.
I have a queue with queueNames in it. I'm getting messages with those
queueNames, manual accept and not accepting them, subscribing to the
queueName from the queue and processing those messages. When I crash,
the queueName I was using becomes available to the other consumer and
it subscribes to it. When the other queue comes back and announces
itself via another message, I fail back by canceling my secondary
subscription once I'm done with any outstanding messages and releasing
the message I was holding for that group. The other consumer picks up
here. But when a consumer has to pick up the slack once again, I get
this error.
Let me know if you have any insight.
Adam
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org
Re: cpp broker: subscriptionManager subscribe/unsubscribe/subscribe
issue
Posted by Adam Chase <ad...@gmail.com>.
Yes it is with a LocalQueue.
Thanks,
Adam
On Fri, Jan 23, 2009 at 9:18 AM, Gordon Sim <gs...@redhat.com> wrote:
> Adam Chase wrote:
>>
>> Maybe you already know about this, but when I subscribe, then
>> unsubscribe and then resubscribe the same queue from a
>> subscriptionManager, I get: Queue already exists for SLOT.
>
> Thats using a LocalQueue rather than a MessageListener, right? I've raised a
> Jira [https://issues.apache.org/jira/browse/QPID-1613] and
> have committed a fix to trunk (r737028).
>
> If you are using the M4 release, a workaround is to call:
>
> session.getExecution().getDemux().remove("xyz");
>
> After canceling a subscription with a LocalQueue (where "xyz" is the
> subscription name you pass to SubscriptionManager::cancel()).
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project: http://qpid.apache.org
> Use/Interact: mailto:users-subscribe@qpid.apache.org
>
>
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org
Re: cpp broker: subscriptionManager subscribe/unsubscribe/subscribe
issue
Posted by Gordon Sim <gs...@redhat.com>.
Adam Chase wrote:
> Maybe you already know about this, but when I subscribe, then
> unsubscribe and then resubscribe the same queue from a
> subscriptionManager, I get: Queue already exists for SLOT.
Thats using a LocalQueue rather than a MessageListener, right? I've
raised a Jira [https://issues.apache.org/jira/browse/QPID-1613] and
have committed a fix to trunk (r737028).
If you are using the M4 release, a workaround is to call:
session.getExecution().getDemux().remove("xyz");
After canceling a subscription with a LocalQueue (where "xyz" is the
subscription name you pass to SubscriptionManager::cancel()).
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org