activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rob Davies (JIRA)" <j...@apache.org>
Subject [jira] Assigned: (AMQ-1322) AdvisoryBroker leaks destinations created "from top" by the RegionBroker
Date Mon, 23 Jul 2007 17:21:49 GMT

     [ https://issues.apache.org/activemq/browse/AMQ-1322?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Rob Davies reassigned AMQ-1322:
-------------------------------

    Assignee: Jonas Lim  (was: Rob Davies)

> AdvisoryBroker leaks destinations created "from top" by the RegionBroker
> ------------------------------------------------------------------------
>
>                 Key: AMQ-1322
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1322
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 4.1.1, 5.x
>         Environment: activemq svn branch 4.1
>            Reporter: Manuel Teira
>            Assignee: Jonas Lim
>         Attachments: AdvisoryBroker.patch
>
>
> Consider the following situation:
>  - The AdvisoryBroker sends a message to a non existent yet advisory topic. (a producer
advisory, for example).
>  - The RegionBroker sends the request to the TopicRegion.
>  - The TopicRegion automatically creates the new topic, sending:
>     context.getBroker().addDestination(context,  destination);
> - This eventually reaches again the AdvisoryBroker that adds the destination to its destination
map.
> Now, when the queue that triggered the creation of the advisory topic is deleted, the
AdvisoryBroker attempts to delete the consumer and producer related topics, but doesn't clear
them from its own destination map.
> I'm attaching a proposed fix for the 4.1 branch, where:
> - The AdvisoryBroker tries to delete those producer and consumer advisories from top
of the broker.
> - This is only made if the incoming destination is not a temporary itself, to avoid improper
attempts to delete advisories of advisories.
> In the trunk , the situation is different. 
> - The TopicRegion (actually in AbstracRegion code) creates the 'on demand' topics internally,
without advising the RegionBroker.
> - So, since the RegionBroker is not aware of these newly created topics, AdvisoryBroker
attempts to delete the producer and consumer advisory topics are futile.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message