I have a peculiar issue in our RabbitMQ cluster, a queue that shows up with messages in the management console (as synchronized), shows up also through rabbitmqctl (but without message count there).
Attempts at getting the messages from the queue fail (404 - not found)
RabbitMQ 3.6.5, Erlang 19.1 Cluster 2 nodes - queues replicated (exactly 2 - manual sync mode)
I'm currently checking the logs (I only have about 40 days of them though) trying to track down when the issue occurred.
Possible "candidate" related to this:
** Reason for termination ==
** {function_clause,
[{rabbit_variable_queue,d,
[{delta,29,1,29}],
[{file,"src/rabbit_variable_queue.erl"},{line,1096}]},
{rabbit_variable_queue,maybe_deltas_to_betas,2,
[{file,"src/rabbit_variable_queue.erl"},{line,2479}]},
{rabbit_variable_queue,fetch_from_q3,1,
[{file,"src/rabbit_variable_queue.erl"},{line,2423}]},
{rabbit_variable_queue,queue_out,1,
[{file,"src/rabbit_variable_queue.erl"},{line,1382}]},
{rabbit_variable_queue,fetch,2,
[{file,"src/rabbit_variable_queue.erl"},{line,611}]},
{rabbit_priority_queue,fetch,2,
[{file,"src/rabbit_priority_queue.erl"},{line,299}]},
{rabbit_mirror_queue_master,fetch,2,
[{file,"src/rabbit_mirror_queue_master.erl"},{line,359}]},
{rabbit_amqqueue_process,fetch,2,
[{file,"src/rabbit_amqqueue_process.erl"},{line,674}]}]}
Cluster has 399 queues, this is the only one with this issue.
The queue nature is to store events that have failed processing, no automatic processing is in place (meaning no process listens to the queue by default)
Basic get fails (tried with pika, as well as management console).
Next "test" will be to see if additional messages matching the binding in place would reach the queue or not.
Any help (beyond the very reasonable upgrade to latest, which I cannot do for the moment, due to management constraints) would be greatly appreciated,
be it in terms of pointers to general documentation, erlang debugging tips or other.
Kind regards,
Olivier