minor problem with the new failover syntax and uri params
---------------------------------------------------------
Key: AMQCPP-278
URL: https://issues.apache.org/activemq/browse/AMQCPP-278
Project: ActiveMQ C++ Client
Issue Type: Bug
Affects Versions: 3.1
Reporter: lars geidel
Assignee: Timothy Bish
Priority: Minor
i played around a little with persistent messages and connection loss
the default behavior for that situation is that the producer blocks
what i want to achieve is that any problem while sending persistent messages
leads to an exception, but reconnects should be possible
so i tried the following uri:
failover:(tcp://localhost:61616)?connection.sendTimeout=1000&timeout=1000
which enables reconnects, but the producer-thread still blocks (multithreaded
program)
after some debugging i found that the uri parameters are ignored if the new
failover syntax (as stated above) is used:
urihelper.cpp line 115 -> query is not set -> connection properties stay empty
so the working uri is:
failover://(tcp://localhost:61616)?connection.sendTimeout=1000&timeout=1000
(double slash after "failover:" - old syntax - see
http://activemq.apache.org/failover-transport-reference.html)
and one question:
could it be that:
"failover:(uri1,...,uriN)?transportOptions"
indicates that the following uri is legal:
failover:(tcp://localhost:61616?connection.sendTimeout=1000,tcp://{some-other-host}:61616?connection.sendTimeout=2000)?timeout=1000
?
if yes, than there's a lot more to do ... (query-parsing - e.g. urisupport.cpp
line 122 will cut the query; cast-exception at "2000)"; ...)
anyway, keep up the good work
with kind regards
lars geidel
btw.:
the parameter in FailoverTransport.cpp line 231 should be "timeout", not
"timedout" :-)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.