Reputation: 69
I'm trying to configure a dynamic shovel on RabbitMQ 3.2.3 after installing the Shovel plugin. However, when I run the following command:
rabbitmqctl set_parameter shovel test-shovel '{"src-uri": "amqp://", "src-queue": "queueName", "dest-uri": "amqp://user:password@host", "dest-queue": "queueName"}'
...I get this error message:
Error: Validation failed
component shovel not found
The plugin appears to be installed correctly. If I run:
rabbitmq-plugins list
...I get:
[e] amqp_client 3.2.3
[ ] cowboy 0.5.0-rmq3.2.3-git4b93c2d
[ ] eldap 3.2.3-gite309de4
[e] mochiweb 2.7.0-rmq3.2.3-git680dba8
[ ] rabbitmq_amqp1_0 3.2.3
[ ] rabbitmq_auth_backend_ldap 3.2.3
[ ] rabbitmq_auth_mechanism_ssl 3.2.3
[ ] rabbitmq_consistent_hash_exchange 3.2.3
[ ] rabbitmq_federation 3.2.3
[ ] rabbitmq_federation_management 3.2.3
[ ] rabbitmq_jsonrpc 3.2.3
[ ] rabbitmq_jsonrpc_channel 3.2.3
[ ] rabbitmq_jsonrpc_channel_examples 3.2.3
[E] rabbitmq_management 3.2.3
[e] rabbitmq_management_agent 3.2.3
[ ] rabbitmq_management_visualiser 3.2.3
[ ] rabbitmq_mqtt 3.2.3
[E] rabbitmq_shovel 3.2.3
[E] rabbitmq_shovel_management 3.2.3
[ ] rabbitmq_stomp 3.2.3
[ ] rabbitmq_tracing 3.2.3
[e] rabbitmq_web_dispatch 3.2.3
[ ] rabbitmq_web_stomp 3.2.3
[ ] rabbitmq_web_stomp_examples 3.2.3
[ ] rfc4627_jsonrpc 3.2.3-git5e67120
[ ] sockjs 0.3.4-rmq3.2.3-git3132eb9
[e] webmachine 1.10.3-rmq3.2.3-gite9359c7
Also, if I run:
rabbitmqctl eval 'rabbit_shovel_status:status().'
...I get:
[]
...done.
Any ideas?! Thanks in advance!
Upvotes: 3
Views: 3656
Reputation: 1152
This can also occur due to a race condition in RMQ versions prior to 3.8.6
. Until 3.8.6
, loading static definitions could happen before plugins were activated, causing this validation error. For more information, see GitHub issue rabbitmq/rabbitmq-server#2384.
Upvotes: 0
Reputation: 69
Looks like dynamic shovels were added in 3.3.0, doh! We're still on 3.2.3.
http://www.rabbitmq.com/release-notes/README-3.3.0.txt
Upvotes: 3
Reputation: 22740
Ok, Typically this behavior is when you install a plug-in and you don't restart RabbitMQ server.
Restart RMQ is mandatory.
Upvotes: 1