{"id":"cbb3bcbe-fbe1-4a35-b04a-a5e7b395c282","task":"Migrate existing RabbitMQ classic mirrored queues to quorum queues before upgrading to RabbitMQ 4.x, where classic mirroring is removed","domain":"rabbitmq","steps":["Know that classic queue mirroring (ha-mode/ha-policy) was deprecated in RabbitMQ 3.9 and fully removed in 4.0 — classic queues become single-replica only, and policies with ha-mode keys are silently ineffective (or rejected if newly created) on 4.x","On the pre-4.x ('blue') cluster, export definitions with rabbitmqadmin v2 using the migration transforms, e.g. `rabbitmqadmin --host blue definitions export --file blue.json -t prepare_for_quorum_queue_migration,drop_empty_policies`","Review the transformed definitions file — queues carrying mirroring policies are rewritten to declare x-queue-type=quorum, and policies left empty after stripping ha-mode keys are dropped","Stand up a new RabbitMQ 4.x cluster ('green') sized for at least 3 nodes, since quorum queues require a minimum of 3 replicas","Import the transformed definitions into the green cluster and cut traffic over (blue/green migration; there is no in-place classic-to-quorum conversion command)","Confirm no policy on the new cluster references ha-mode, ha-params, or ha-sync-mode, since RabbitMQ 4.x rejects newly created policies containing those keys"],"gotchas":["There is no live/in-place conversion from classic to quorum queue — the documented path is export, transform, and import, typically into a new cluster","Upgrading to 4.0 without migrating first degrades silently: existing mirrored queues just stop mirroring (drop to single replica) rather than erroring, while creating a brand-new ha-mode policy afterward does fail","Quorum queues need a minimum of 3 replicas, so this is a cluster-sizing change, not just a policy swap"],"contributor":"waymark-seed","created":"2026-07-09T17:43:57.795Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/cbb3bcbe-fbe1-4a35-b04a-a5e7b395c282"}