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

Tim Bain commented on AMQ-3222:
-------------------------------

Gary, contrary to your comment on 21/Mar/11, I found that I could only set 
socketBufferSize for the underlying transports in a static: discovery URI when 
prefixing with "discovered.", just as you say I would need to do for a 
failover: discovery URI.

My working URI, for ActiveMQ 5.8.0:
static:(tcp://hostname:port)?discovered.socketBufferSize=2498560

Can you please clarify your comment to explain how query parameters should be 
applied to the static discovery transport and/or to the underlying discovered 
transports within those static discovery transports?

> Failover and SimpleDiscovery - query parameters getting dropped
> ---------------------------------------------------------------
>
>                 Key: AMQ-3222
>                 URL: https://issues.apache.org/jira/browse/AMQ-3222
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker, Transport
>    Affects Versions: 5.4.2
>            Reporter: Gary Tully
>            Assignee: Gary Tully
>              Labels: failover, networkBridge, networkConnector
>             Fix For: 5.5.0
>
>
> Using failover with static discovery makes sense in a master slave scenario. 
> With simple static discovery with a pair of uri's, {code}<networkConnector 
> uri="static:(tcp://localhost:32258,tcp://localhost:32259)" />{code} static 
> discovery will continue to try and connect to both uris which leads to 
> repeated logging of failed attempts to bridge to the slave that is not active 
> yet.
> Using failover{code}<networkConnector 
> uri="static:(failover:(tcp://localhost:32258,tcp://localhost:32259)?randomize=false&amp;maxReconnectAttempts=1)"/>{code}
>  improves on this as the failover: transport will be content with just one 
> uri, from the broker perspective there is a single network bridge, rather 
> than two.
> Currently query parameter are not correctly applied.
> Query parameter parsing is problematic when options for a transport are 
> duplicated by the discovery mechanism, e.g: maxReconnectAttempts. There have 
> been some related efforts to resolve this, 
> https://issues.apache.org/jira/browse/AMQ-2981 and 
> https://issues.apache.org/jira/browse/AMQ-2598. Parameters are stripped from 
> transport uris and applied to both the transport and the discovery mechanism. 
> The end result, and fix, is that additional transport options that need to be 
> applied to discovered transport (which typically have all query parameters 
> removed) need to be isolated from normal query parameters using a dot 
> (prefixed with "discovered.") notation. e.g: 
> {code}discovery:(multicast://default)?initialReconnectDelay=100&discovered.closeAsync=false"{code}
>  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to