-
Notifications
You must be signed in to change notification settings - Fork 3.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Queue mirror process terminates on updating delta #944
Comments
my understanding is its just metadata about the Qs get stored in mnesia DB not the Q or .. so what process actually sync the Qs is it rabbitmq-server .. ? |
Please post questions to rabbitmq-users or Stack Overflow. RabbitMQ uses GitHub issues for specific actionable items engineers can work on, not questions. Thank you. |
One of the causes for this crash is the coexistence of several slaves for the same queue on the same node. This bug is probably caused during the partial partitions and restarts by autoheal, when several master can be alive on different nodes at the same time as these nodes are disconnected. Mnesia updates could propagate views of the cluster where the first slave disappears, thus a second one is allowed to start. See logs below (note: the warning is a debug message added for testing only)
|
When two slaves are alive on the same node one of them can be promoted to master, and the Slaves should detect they have been removed from the slaves list and do a clean stop. This should avoid at least the majority of the crashes, and allow the queue to eventually reach a consistent state. Note that it is possible that messages are lost in this situation. |
Similar to #687 but with a different root cause (in investigation) as no priority queues are used.
The 3-node cluster uses persistent queues, autoheal and HA all and automatic sync.
Partial partitions are simulated between the nodes while messages are being published and consumed.
The text was updated successfully, but these errors were encountered: