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

Controller does not send the complete list of partitions to a newly started broker

    XMLWordPrintableJSON

Details

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

    Description

      On a new broker startup, the controller is supposed to send the entire list of partitions that the new broker is supposed to host in one leader and isr request. In this request, it specifies if the new broker is the leader or follower for each of those partitions. For most of the partitions, the new broker will be a follower. However, for some partitions that don't have any other broker alive, the new broker will be the leader. The bug is that the controller first elects the leaders for offline partitons to see if the new broker is the leader for any of those and sends only those partitions for which leader was elected in the first leader and isr request. Right after that, it does send a leader and isr request with all partitions, but that breaks the guarantee that the very first leader and isr request has all partitions. As a result of this bug, the high watermark checkpointing logic behaves incorrectly.

      Attachments

        1. kafka-831-v1.patch
          1 kB
          Neha Narkhede
        2. kafka-831-v2.patch
          4 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: