You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Sridhar Komandur (JIRA)" <ji...@apache.org> on 2008/03/20 23:51:32 UTC

[jira] Commented: (AMQ-1629) wildcards don't work in networkconnector excludeDestinations

    [ https://issues.apache.org/activemq/browse/AMQ-1629?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=41747#action_41747 ] 

Sridhar Komandur commented on AMQ-1629:
---------------------------------------

I did a little investigation and the problem appears to be here:

DemandForwardingBridgeSupport.java:
    protected boolean isPermissableDestination(ActiveMQDestination destination) {
        // Are we not bridging temp destinations?
        if (destination.isTemporary() && !configuration.isBridgeTempDestinations()) {
            return false;
        }

       A****  DestinationFilter filter = DestinationFilter.parseFilter(destination);
        ActiveMQDestination[] dests = excludedDestinations;
        if (dests != null && dests.length > 0) {
            for (int i = 0; i < dests.length; i++) {
                ActiveMQDestination match = dests[i];
                if (match != null && filter.matches(match)) {
                    return false;
                }
            }
      }

The DestinationFilter returned (A above) is SimpleDestinationFilter because the destination (TEST.FOO) is "simple" ==> filter.matches tries to string comparison eventually( TEST.FOO with TEST.>) and does not match it.
        
 I am not very familiar with the code, but shouldn't  the DestinationFilter reflect wildcard/prefix in either excludedDestination or the queue/topic destination ? 
Thanks
- Sridhar
 

> wildcards don't work in networkconnector excludeDestinations 
> -------------------------------------------------------------
>
>                 Key: AMQ-1629
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1629
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 4.1.1, 5.0.0
>         Environment: linux
>            Reporter: Sridhar Komandur
>
> Version: 5.0 
> We have a simple setup to test excludedDestinations config ...We are using the broker and  example producer & consumer from the binary distribution (broker instances A & B are on different hosts 
> Setup: 
> producer --- A ---- B--- consumer 
> Broker A's activemq.xml has the following for NC config (everythingelse is the same as in the orig config file):
>     <networkConnectors> 
>       <networkConnector name="toB" uri="static://(tcp://B.foo.com:61616)"> 
>            <excludedDestinations> 
>                 <queue physicalName="TEST.>" /> 
>            </excludedDestinations> 
>      </networkConnector> 
>     </networkConnectors> 
> Issue: consumer attached to Broker B sees all the messages sent to TEST.FOO (the default messages generated by the producer)
> We noticed that none of the queue or topic wildcards work, only specific topic or queue names work in the exclusion. However, http://activemq.apache.org/networks-of-brokers.html states "N.B. You can use wildcards in inclusive , exclusive destination properties". Are we missing anything ? 
> Thanks 
> - Sridhar

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