[rabbitmq-discuss] Dynamic Shovel parameter validation regression between RMQ 3.3.0 and 3.3.1?
vish.ramachandran
vish.ramachandran at gmail.com
Tue Jun 3 07:31:04 BST 2014
Hi RMQ team,
Following command used to work with RMQ 3.3.0. However, with RMQ 3.3.1, it
does not work anymore.
~/Documents/rabbitScripts$ rabbitmqctl set_parameter -p myvhost shovel
testShovel '{"src-uri": "amqp://myuser@/myvhost", "src-queue":
"mysourceExchange", "dest-uri": ["amqp://destrmq1.example.com",
"amqp://destrmq1.example.com"], "dest-exchange": "myDestExchange",
"dest-exchange-key" : "routingKey"}'
Setting runtime parameter "testShovel" for component "shovel" to
"{\"src-uri\": \"amqp://myuser@/myvhost\", \"src-queue\":
\"mysourceExchange\", \"dest-uri\": [\"amqp://destrmq1.example.com\",
\"amqp://destrmq1.example.com\"], \"dest-exchange\": \"myDestExchange\",
\"dest-exchange-key\" : \"routingKey\"}" ...
Error: {function_clause,
[{rabbit_shovel_parameters,validate_params_user,
[{amqp_params_direct,<<"myuser">>,none,<<"myvhost">>,
'rabbit at vishr-mac1',none,[]},
none],
[{file,"rabbitmq-shovel/src/rabbit_shovel_parameters.erl"},
{line,115}]},
{rabbit_parameter_validation,'-proplist/3-fun-0-',3,
[{file,"src/rabbit_parameter_validation.erl"},{line,59}]},
{lists,foldl,3,[{file,"lists.erl"},{line,1248}]},
{rabbit_parameter_validation,proplist,3,
[{file,"src/rabbit_parameter_validation.erl"},{line,55}]},
{rabbit_shovel_parameters,validate,5,
[{file,"rabbitmq-shovel/src/rabbit_shovel_parameters.erl"},
{line,55}]},
{rabbit_runtime_parameters,set_any0,5,
[{file,"src/rabbit_runtime_parameters.erl"},{line,99}]},
{rabbit_runtime_parameters,set_any,5,
[{file,"src/rabbit_runtime_parameters.erl"},{line,90}]},
{rpc,'-handle_call_call/6-fun-0-',5,
[{file,"rpc.erl"},{line,205}]}]}
However, if we add "localhost" to the source URI, it works:
~/Documents/rabbitScripts$ rabbitmqctl set_parameter -p myvhost shovel
testShovel '{"src-uri": "amqp://myuser@localhost/myvhost", "src-queue":
"mysourceExchange", "dest-uri": ["amqp://destrmq1.example.com",
"amqp://destrmq1.example.com"], "dest-exchange": "myDestExchange",
"dest-exchange-key" : "routingKey"}'
Setting runtime parameter "testShovel" for component "shovel" to
"{\"src-uri\": \"amqp://myuser@localhost/myvhost\", \"src-queue\":
\"mysourceExchange\", \"dest-uri\": [\"amqp://destrmq1.example.com\",
\"amqp://destrmq1.example.com\"], \"dest-exchange\": \"myDestExchange\",
\"dest-exchange-key\" : \"routingKey\"}" ...
...done.
~/Documents/rabbitScripts$
>From the static shovel documentation at
http://www.rabbitmq.com/shovel-static.html
"If the host is omitted (not valid in a general AMQP URI), the shovel uses a
direct connection to the broker in which it is running. This avoids using
the network stack."
Has the support for this direct access been removed in 3.3.1 ? This used to
work for 3.3.0.
Thanks
Vish
--
View this message in context: http://rabbitmq.1065348.n5.nabble.com/Dynamic-Shovel-parameter-validation-regression-between-RMQ-3-3-0-and-3-3-1-tp35995.html
Sent from the RabbitMQ mailing list archive at Nabble.com.
More information about the rabbitmq-discuss
mailing list