cruise-control icon indicating copy to clipboard operation
cruise-control copied to clipboard

Cruise-control falsely report OVER_PROVISIONED when the cluster is right_sized

Open CCisGG opened this issue 3 years ago • 0 comments

There are multiple goals in cruise-control that could provide OVER_PROVISIONED as the ProvisionStatus. After all goals are optimized, there will be an aggregated ProvisionStatus.

It is expected that the aggregated ProvisionStatus is OVER_PROVISIONED if and only if ALL relative goals provide OVER_PROVISIONED status.

Today there is a bug in cruise-control that violates the above rule. For example:

For ReplicaDistributionGoal, even if this goal decides the cluster is NOT OVER_PROVISIONED, the final aggregated provision response could still be OVER_PROVISIONED. This happens when ReplicaDistributionGoal fails and returns an UNDECIDED provision status.

As a fix, we should make sure that all the goals that can possibly returns OVER_PROVISIONED, will never returns UNDECIDED as provision status. These goals include:

  • BrokerSetAwareGoal
  • RackAwareDistributionGoal
  • RackAwareGoal
  • ReplicaDistributionGoal
  • ResourceDistributionGoal

CCisGG avatar Aug 08 '22 21:08 CCisGG