Closed cwilso03 closed 1 year ago
Since you didn't share the files you're using, I'm guessing at how to reproduce this issue. Please see this repository:
https://github.com/lukebakken/docker-library_rabbitmq-601
I can do an upgrade from 3.10 to 3.11 without the issue you report. If you would like further assistance, you'll have to provide all of the necessary information to reproduce this issue.
Hi @lukebakken, thanks for taking the time to create a test scenario (definitely above-and-beyond!). After seeing that, I tried creating a test project to isolate the RabbitMQ portion from the rest of my project, and found that it, too, upgraded just fine.
Ultimately, I resolved the problem in my main project by deleting the Docker volume I had attached (via compose) to /var/lib/rabbitmq
. After doing that and restarting 3.10, then changing the version to 3.11, the upgrade worked. Not sure what 3.11 didn't like about that volume, but the issue is resolved, from my perspective.
Thanks again!
disabled_required_feature_flag
means that the original data directory did not have some or any feature flags that 3.11.x
requires enabled.
By wiping the data directory you've made the node automatically enable all feature flags on first boot. For existing installation that's not done and is up to you to make sure all feature flags are enabled before the upgrade to 3.11.
@michaelklishin beat me to it
By wiping the data directory you've made the node automatically enable all feature flags on first boot. For existing installation that's not done and is up to you to make sure all feature flags are enabled before the upgrade to 3.11.
Understood. So, why didn't enabling the maintenance_mode_status
flag via the RABBITMQ_FEATURE_FLAGS
environment variable work?
Indeed, RABBITMQ_FEATURE_FLAGS
does not allow to active maintenance_mode_status
(RabbitMQ 3.8.10):
$ env
[...]
RABBITMQ_FEATURE_FLAGS=maintenance_mode_status
[...]
And RabbitMQ logs :
2023-01-27 18:07:34.864 [info] <0.272.0> Feature flags: list of feature flags found:
2023-01-27 18:07:34.865 [info] <0.272.0> Feature flags: [x] drop_unroutable_metric
2023-01-27 18:07:34.865 [info] <0.272.0> Feature flags: [x] empty_basic_get_metric
2023-01-27 18:07:34.865 [info] <0.272.0> Feature flags: [x] implicit_default_bindings
2023-01-27 18:07:34.865 [info] <0.272.0> Feature flags: [ ] maintenance_mode_status
2023-01-27 18:07:34.865 [info] <0.272.0> Feature flags: [x] quorum_queue
2023-01-27 18:07:34.865 [info] <0.272.0> Feature flags: [ ] user_limits
2023-01-27 18:07:34.865 [info] <0.272.0> Feature flags: [x] virtual_host_metadata
I have an existing Docker-based single-node RabbitMQ cluster, which I'm trying to upgrade from version
3.10-management-alpine
to3.11-management-alpine
. When I spin up the new container (using adocker-compose.yml
), I get the following error:I've read about the 3.11 change of requiring previously optional feature flags. While I don't understand why a single-node cluster would need to enable
maintenance_mode_status
(as a rolling upgrade would never be possible), I nonetheless added an environment variableRABBITMQ_FEATURE_FLAGS
and set it tomaintenance_mode_status
. I still get the above error.