kafka/checkstyle
Konstantine Karantasis 1c6f117b4a KAFKA-9848: Avoid triggering scheduled rebalance delay when task assignment fails but Connect workers remain in the group (#8805)
In the first version of the incremental cooperative protocol, in the presence of a failed sync request by the leader, the assignor was designed to treat the unapplied assignments as lost and trigger a rebalance delay.

This commit applies optimizations in these cases to avoid the unnecessary activation of the rebalancing delay. First, if the worker that loses the sync group request or response is the leader, then it detects this failure by checking the what is the expected generation when it performs task assignments. If it's not the expected one, it resets its view of the previous assignment because it wasn't successfully applied and it doesn't represent a correct state. Furthermore, if the worker that has missed the assignment sync is an ordinary worker, then the leader is able to detect that there are lost assignments and instead of triggering a rebalance delay among the same members of the group, it treats the lost tasks as new tasks and reassigns them immediately. If the lost assignment included revocations that were not applied, the leader reapplies these revocations again.

Existing unit tests and integration tests are adapted to test the proposed optimizations.

Reviewers: Randall Hauch <rhauch@gmail.com>
2020-06-09 23:52:22 -07:00
..
.scalafmt.conf MINOR: Add Scalafmt to Streams Scala API (#4965) 2018-07-09 16:48:34 -07:00
checkstyle.xml KAFKA-7308: Fix rat and checkstyle config for Java 11 support (#5529) 2018-08-18 08:18:28 -07:00
import-control-core.xml MINOR: Update usage of deprecated API (#6146) 2019-01-29 11:15:43 -08:00
import-control.xml KAFKA-8340, KAFKA-8819: Use PluginClassLoader while statically initializing plugins (#7315) 2019-10-16 20:45:50 -05:00
java.header MINOR: improve license header check by providing head file instead of (prefix) header regex 2017-02-28 12:35:04 -08:00
suppressions.xml KAFKA-9848: Avoid triggering scheduled rebalance delay when task assignment fails but Connect workers remain in the group (#8805) 2020-06-09 23:52:22 -07:00