Hi all, I've got a strange problem and I wonder whether someone can help me with it.
I'm running rabbitmq 3.4.2 on erlang 17.3.
Recently we switched to a new cluster on a new set of servers. To do the switch without losing any in-process messages, we told all the producers and consumers to connect to the new cluster, then set up a bunch of shovels to move the messages from the old cluster to the new one. That all worked great!
However, now we can't get rid of the things. I'd really like to get rid of them!
In the admin web ui, under Admin / Shovel Status, I see rows like e.g.
Name: carapace.sms.mt.fast-shovel
Node: elkprmq01
Virtual Host: carapace-production
State: running
Last changed: 2016-03-19 22:53:12
However, in the Shovel Management part of the UI, the "Shovels" section just shows: "... no shovels ...". So of course I can't destroy them from the web ui; there's no way to get to a shovel page for a shovel it doesn't admit to existing. Using the HTTP api fails to get rid of them as well. And "rabbitmqctl list_parameters" doesn't show any shovels either.
To make matters worse -- some of the shovels were not created properly (the password for the account has spaces in it, and initially we tried creating shovels without URL-encoding the spaces in the src-uri and dest-uri). Those shovels are not started properly -- still don't show up in the shovel management UI or rabbitmqctl -- and periodically try to start, resulting in error messages being written to the log files (snippets attached).
Is there any way to get rid of shovels in this weird and inconsistent state? If someone could suggest a snippet of erlang code I could throw in via "rabbitmqctl eval", or something, that would be awesome.
Thanks!
Brett