Uploaded image for project: 'Kafka'
  1. Kafka
  2. KAFKA-849

Bug in controller's startup/failover logic fails to update in memory leader and isr cache causing other state changes to work incorrectly

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 0.8.0
    • None
    • controller

    Description

      partitionLeadershipInfo is the in memory cache of the controller that keeps track of every partition's "last elected" leader and isr. On controller startup/failover, this cache is bootstrapped only with those partitions whose leader is alive. This causes the leader and isr cache to be initialized incorrectly causing other state transitions related to new broker startup, existing broker failure to not work correctly. For instance, it does not allow the controller to send the list of all replicas that exist on a broker to it during startup.

      Another bug during controller startup is that it invokes OnlinePartition state change before OnlineReplica state change. This also breaks the guarantee that the controller sends a full list of replicas to a broker on startup

      Attachments

        1. kafka-849-v1.patch
          17 kB
          Neha Narkhede

        Activity

          People

            nehanarkhede Neha Narkhede
            nehanarkhede Neha Narkhede
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: