Add quorum-based ClusterAvailableCondition for RabbitMQ availability#571
Add quorum-based ClusterAvailableCondition for RabbitMQ availability#571lmiccini wants to merge 1 commit into
Conversation
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: lmiccini The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Replace the raw ReadyCount > 0 check (checkClusterReadiness) with a quorum-aware ClusterAvailableCondition. The new condition is True when ReadyCount >= ceil(Replicas/2), ensuring the cluster has quorum before allowing TransportURL, Policy, Vhost, and User operations. ClusterAvailableCondition is a sub-condition of ReadyCondition but never blocks it: quorum is always satisfied before all replicas are ready. IsReady() still means "fully reconciled" while IsAvailable() means "can serve traffic". Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
d35b050 to
fff3bbf
Compare
|
recheck |
|
Build failed (check pipeline). Post ✔️ openstack-k8s-operators-content-provider SUCCESS in 15m 45s |
|
recheck |
|
PR needs rebase. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
Replace the raw ReadyCount > 0 check (checkClusterReadiness) with a quorum-aware ClusterAvailableCondition. The new condition is True when ReadyCount >= ceil(Replicas/2), ensuring the cluster has quorum before allowing TransportURL, Policy, Vhost, and User operations.
ClusterAvailableCondition is a sub-condition of ReadyCondition but never blocks it: quorum is always satisfied before all replicas are ready.
IsReady() still means "fully reconciled" while IsAvailable() means "can serve traffic".