[rabbitmq-discuss] Shovel messages get lost or stay unacknowledged.
Jelle Smet
smetj.net at gmail.com
Fri Nov 18 09:43:21 GMT 2011
Hi all,
Sorry for double posting, but I wanted to start a new thread on this topic
as the previous one<https://groups.google.com/forum/#!topic/rabbitmq-discuss/7grvcHWvp3s/discussion>had multiple angles covering multiple cases.
I'm having issues with the Shovel plugin, which currently makes my work
with RabbitMQ difficult.
My goal is to get the content of a queue to a queue of a remote broker.
Here's a recap:
- All RabbitMQ instances run the latest stable version 2.7.0 (the
problem also occurred with 2.6.1)
- Messages which should be shoveled to a remote broker stay
unacknowledged in the queue which Shovel is using as a source.
- Restarting RabbitMQ on that moment isn't possible. Killing is
required, often having to issue "epmd -kill"
- When I restart RabbitMQ which has the Shovel plugin, all messages get
delivered correctly.
By default I use ack_mode with value "on_confirm". When I change this into
"no_ack" and I run into the above situation all messages get lost.
I must say occasional network interruptions, or occasional packetloss is a
fact. But not to that extent it should be a problem. Besides that, it
doesn't explain that restarting Rabbit, makes all messages arrive correctly
all of a sudden.
Here's my complete Shovel configuration (I replaced hostnames & queue
names):
[{rabbitmq_shovel,
[{shovels,
[
{scan_orders_amsterdam,
[{sources, [{broker,"amqp://localhost"}]},
{destinations, [{broker, "amqp://server01"}]},
{queue, <<"messages_server01">>},
{ack_mode, on_confirm},
{publish_properties, [{delivery_mode, 2}]},
{publish_fields, [{exchange, <<"">>},
{routing_key, <<"assignments">>}]},
{reconnect_delay, 5}
]},
{scan_orders_gent,
[{sources, [{broker,"amqp://localhost"}]},
{destinations, [{broker, "amqp://server02"}]},
{queue, <<"messages_server02">>},
{ack_mode, on_confirm},
{publish_properties, [{delivery_mode, 2}]},
{publish_fields, [{exchange, <<"">>},
{routing_key, <<"assignments">>}]},
{reconnect_delay, 5}
]},
{scan_orders_lebanon,
[{sources, [{broker,"amqp://localhost"}]},
{destinations, [{broker, "amqp://server03"}]},
{queue, <<"messages_server03">>},
{ack_mode, on_confirm},
{publish_properties, [{delivery_mode, 2}]},
{publish_fields, [{exchange, <<"">>},
{routing_key, <<"assignments">>}]},
{reconnect_delay, 5}
]},
{scan_orders_pune,
[{sources, [{broker,"amqp://localhost"}]},
{destinations, [{broker, "amqp://server04"}]},
{queue, <<"messages_server04">>},
{ack_mode, on_confirm},
{publish_properties, [{delivery_mode, 2}]},
{publish_fields, [{exchange, <<"">>},
{routing_key, <<"assignments">>}]},
{reconnect_delay, 5}
]},
{scan_orders_lodz,
[{sources, [{broker,"amqp://localhost"}]},
{destinations, [{broker, "amqp://server05"}]},
{queue, <<"messages_server05">>},
{ack_mode, on_confirm},
{publish_properties, [{delivery_mode, 2}]},
{publish_fields, [{exchange, <<"">>},
{routing_key, <<"assignments">>}]},
{reconnect_delay, 5}
]}
]
}]
}].
The problem I would like to get solved is that my messages just arrive on
their destination, without having to restart Rabbit frequently.
Any pointers, work-arounds, fixes, tips are welcome.
Cheers,
Jelle
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20111118/376fc0dd/attachment.htm>
More information about the rabbitmq-discuss
mailing list