XComp commented on code in PR #22380: URL: https://github.com/apache/flink/pull/22380#discussion_r1169862792
########## flink-runtime/src/main/java/org/apache/flink/runtime/leaderelection/DefaultLeaderElectionService.java: ########## @@ -37,35 +37,58 @@ * Default implementation for leader election service. Composed with different {@link * LeaderElectionDriver}, we could perform a leader election for the contender, and then persist the * leader information to various storage. + * + * <p>{@code DefaultLeaderElectionService} handles a single {@link LeaderContender}. */ public class DefaultLeaderElectionService - implements LeaderElectionService, LeaderElectionEventHandler { + implements LeaderElectionService, LeaderElectionEventHandler, AutoCloseable { private static final Logger LOG = LoggerFactory.getLogger(DefaultLeaderElectionService.class); private final Object lock = new Object(); private final LeaderElectionDriverFactory leaderElectionDriverFactory; - /** The leader contender which applies for leadership. */ + /** + * {@code leaderContender} being {@code null} indicates that no {@link LeaderContender} is + * registered that participates in the leader election, yet. See {@link #start(LeaderContender)} + * and {@link #stop()} for lifecycle management. + * + * <p>{@code @Nullable} isn't used here to avoid having multiple warnings spread over this class + * in a supporting IDE. + */ @GuardedBy("lock") - // @Nullable is commented-out to avoid having multiple warnings spread over this class - // this.running=true ensures that leaderContender != null - private volatile LeaderContender leaderContender; + private LeaderContender leaderContender; + /** + * Saves the session ID which was issued by the {@link LeaderElectionDriver} iff the leadership Review Comment: Now I get you initial statement :bulb: -- 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: issues-unsubscr...@flink.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org