You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Colin McCabe (Jira)" <ji...@apache.org> on 2021/07/21 17:08:00 UTC

[jira] [Resolved] (KAFKA-13104) Controller should notify the RaftClient when it resigns

     [ https://issues.apache.org/jira/browse/KAFKA-13104?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Colin McCabe resolved KAFKA-13104.
----------------------------------
    Resolution: Fixed

Fixed

> Controller should notify the RaftClient when it resigns
> -------------------------------------------------------
>
>                 Key: KAFKA-13104
>                 URL: https://issues.apache.org/jira/browse/KAFKA-13104
>             Project: Kafka
>          Issue Type: Bug
>          Components: controller, kraft
>            Reporter: Jose Armando Garcia Sancio
>            Assignee: Ryan Dielhenn
>            Priority: Blocker
>              Labels: kip-500
>             Fix For: 3.0.0
>
>
> {code:java}
>       private Throwable handleEventException(String name,
>                                              Optional<Long> startProcessingTimeNs,
>                                              Throwable exception) {
>           ...
>           renounce();
>           return new UnknownServerException(exception);
>       }
>  {code}
> When the active controller encounters an event exception it attempts to renounce leadership. Unfortunately, this doesn't tell the {{RaftClient}} that it should attempt to give up leadership. This will result in inconsistent state with the {{RaftClient}} as leader but with the controller as inactive.
> We should change this implementation so that the active controller asks the {{RaftClient}} to resign. The active controller waits until {{handleLeaderChange}} before calling {{renounce()}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)