RabbitMQ upgrade from 3.9.29 to 3.10.24 failed and got queue index directory not found error #8663
-
Hey, I am trying to upgrade RabbitMQ in AKS clusters (three pods per cluster) with rolling upgrade strategy. The old container image is Have checked all required feature flags are enabled as required from RabbitMQ 3.10.0. All clusters using the same rabbit configurations, but 2 clusters successfully upgraded while 2 got failed, not sure what could make it different. Attached logs for failed cluster, it failed at step of moving messages to per-vhost message store: For the successfully upgrade one, it says no durable queue is found so it skips message store migration: Have done additional testing, when I tried to downgrade back to 3.9.29, all pods running again, but if re-upgrade pods then it will fail with the same error. From my understanding, RabbitMQ will take care of migrating durable queue when upgrading, does not require additional steps from users? Please let me know if require further information, super appreciate your help! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 10 replies
-
Somehow this node ended up without an index directory for one of its queues and a (3.7 era) migration function assumes that cannot be the case. We cannot tell why that happened. You can delete the directory in question to let the node proceed. RabbitMQ does not support downgrades. |
Beta Was this translation helpful? Give feedback.
Yes, I believe that's correct. You can follow the code here
https://github.com/rabbitmq/rabbitmq-server/blob/v3.10.x/deps/rabbit/src/rabbit_variable_queue.erl#L3398-L3444