You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Frank Gynnild (Issue Comment Edited) (JIRA)" <ji...@apache.org> on 2012/02/07 20:36:59 UTC

[jira] [Issue Comment Edited] (AMQNET-369) Seems like there is a race condition that can lead to an InvalidDestinationException for tempoary queues after failover has resumed

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

Frank Gynnild edited comment on AMQNET-369 at 2/7/12 7:36 PM:
--------------------------------------------------------------

This code determines if the temp destination is active so for some reason tempDests can't contain dest.

{code}
        internal bool IsTempDestinationActive(ActiveMQTempDestination dest)
        {
            if(this.advisoryConsumer == null)
            {
                return true;
            }

            return this.tempDests.Contains(dest);
        }
{code}
                
      was (Author: fgynnild):
    This code determines if the temp destination is active so either advisoryConsumer must be null for some reason or tempDests doesn't contain dest.

{code}
        internal bool IsTempDestinationActive(ActiveMQTempDestination dest)
        {
            if(this.advisoryConsumer == null)
            {
                return true;
            }

            return this.tempDests.Contains(dest);
        }
{code}
                  
> Seems like there is a race condition that can lead to an InvalidDestinationException for tempoary queues after failover has resumed
> -----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AMQNET-369
>                 URL: https://issues.apache.org/jira/browse/AMQNET-369
>             Project: ActiveMQ .Net
>          Issue Type: Bug
>    Affects Versions: 1.5.3
>            Reporter: Frank Gynnild
>            Assignee: Jim Gomes
>
> If I repeat the test below I sometimes get a:
> Apache.NMS.InvalidDestinationException: Cannot publish to a deleted Destination: temp-queue://ID:Duracell-61594-634642411329432145-1:0:1
> Test:
> 1. Start Message bus
> 2. Start server code.
> 3. Stop Message bus
> 4. Start Message bus
> 5. Start client code.
> The client/server uses the request/response pattern.
> I don't have a unit test since it doesn't happen all the time. But if happens often enough that I am sure there is a race condition bug here
> somewhere. And I think it's in NMS since I can see these log lines:
> AdvisoryConsumer adding: temp-queue://ID:Duracell-61594-634642411329432145-1:0:1
> ...Get InvalidDestinationException here...
> AdvisoryConsumer removing: temp-queue://ID:Duracell-61594-634642411329432145-1:0:1

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira