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

Dmitry Babich updated AMQCPP-352:
---------------------------------

    Description: 
Only first and last composite uris are recognized by FailoverTransportFactory.

For example - given uri: 
   
failover://(tcp://10.10.10.1:61616,tcp://10.10.10.2:61616,tcp://10.10.10.3:61616,tcp://10.10.10.4:61616)
only "tcp://10.10.10.1:61616" and "tcp://10.10.10.4:61616" will work.

The bug in URISupport::splitComponents() in line 350. 
Line:
   std::string s = str.substr( last, i );
should be replaced by:
   std::string s = str.substr( last, i - last );  // 2nd argument of substr() 
is length of substring


  was:
Only first and last composite uris are recognized by FailoverTransportFactory.

For example - given uri: 
   
failover(tcp://10.10.10.1:61616,tcp://10.10.10.2:61616,tcp://10.10.10.3:61616,tcp://10.10.10.4:61616)
only "tcp://10.10.10.1:61616" and "tcp://10.10.10.4:61616" will work.

The bug in URISupport::splitComponents() in line 350. 
Line:
   std::string s = str.substr( last, i );
should be replaced by:
   std::string s = str.substr( last, i - last );  // 2nd argument of substr() 
is length of substring



> FailoverTransportFactory doesn't work correctly with more than two composite 
> uris 
> ----------------------------------------------------------------------------------
>
>                 Key: AMQCPP-352
>                 URL: https://issues.apache.org/jira/browse/AMQCPP-352
>             Project: ActiveMQ C++ Client
>          Issue Type: Bug
>          Components: Transports
>    Affects Versions: 3.0, 3.2.4
>         Environment: All platforms
>            Reporter: Dmitry Babich
>            Assignee: Timothy Bish
>
> Only first and last composite uris are recognized by FailoverTransportFactory.
> For example - given uri: 
>    
> failover://(tcp://10.10.10.1:61616,tcp://10.10.10.2:61616,tcp://10.10.10.3:61616,tcp://10.10.10.4:61616)
> only "tcp://10.10.10.1:61616" and "tcp://10.10.10.4:61616" will work.
> The bug in URISupport::splitComponents() in line 350. 
> Line:
>    std::string s = str.substr( last, i );
> should be replaced by:
>    std::string s = str.substr( last, i - last );  // 2nd argument of substr() 
> is length of substring

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to