dajac commented on code in PR #13961:
URL: https://github.com/apache/kafka/pull/13961#discussion_r1254819460


##########
group-coordinator/src/main/java/org/apache/kafka/coordinator/group/runtime/CoordinatorRuntime.java:
##########
@@ -190,6 +216,118 @@ boolean canTransitionFrom(CoordinatorState state) {
         abstract boolean canTransitionFrom(CoordinatorState state);
     }
 
+    /**
+     * Implements the CoordinatorTimer interface. This class keeps track of 
all the
+     * schedule timers for a coordinator/partition.
+     *
+     * When a timer is cancelled or overridden, the previous timer is 
guaranteed to
+     * not be executed even if it already expired and got push to the event 
processor.
+     *
+     * When a timer fails with an unexpected exception, the timer is 
reschedule with
+     * a backoff.
+     */
+    class InternalCoordinatorTimer implements CoordinatorTimer<U> {
+        /**
+         * The logger.
+         */
+        final Logger log;
+
+        /**
+         * The topic partition.
+         */
+        final TopicPartition tp;
+
+        /**
+         * The scheduled timers keyed by their key.
+         */
+        final Map<String, TimerTask> tasks = new HashMap<>();

Review Comment:
   Updated the javadoc. Let me know if it makes things clearer.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: jira-unsubscr...@kafka.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to