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

Compare exact member of ISR with RS when deciding whether the partition is URP

Open CCisGG opened this issue 3 years ago • 0 comments

Today, the way we determine a partition is an URP (Under Replicated Partition) based on the size of ISR and RS. E.g. if ISR = [A, B], and RS = [A, B, C], then the partition is treated as URP by CC.

However, in certain cases (usually because kafka is in a bad/inconsistent state), the ISR can be diverged from RS. E.g. ISR = [A, B, B], while RS = [D, E, F]. In this case, we still want CC to report this replica as URP, since the partition is not in a good state.

The proposal is, instead of comparing the size of ISR and RS, we should comparing the members in ISR and RS. If ISR != RS, CC should report it as URP.

CCisGG avatar Sep 15 '22 19:09 CCisGG