Kafka
  1. Kafka
  2. KAFKA-110

Bug in the collate logic of the DefaultEventHandler dispatches empty list of messages using the producer

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.7
    • Fix Version/s: 0.7
    • Component/s: None
    • Labels:
      None

      Description

      The collate logic in the DefaultEventHandler is designed to batch together requests for a single topic and partition in order to send it to the server in a single request. In this collate logic, the use of the partition API might give back an empty sequence of data for a particular topic,partition pair. It is useless to add it to the list of data to be sent, and it should avoid making network requests.

      1. KAFKA-110.patch
        2 kB
        Neha Narkhede

        Activity

        Hide
        Neha Narkhede added a comment -

        This patch corrects the behavior of the collate API to avoid adding empty sequences of data to the list of events to be sent using the producer.

        Also, it modifies the ProducerSendThread so that it never dispatches an empty list of events to the event handler.

        Show
        Neha Narkhede added a comment - This patch corrects the behavior of the collate API to avoid adding empty sequences of data to the list of events to be sent using the producer. Also, it modifies the ProducerSendThread so that it never dispatches an empty list of events to the event handler.
        Hide
        Jun Rao added a comment -

        +1 (please remove unreferenced imports before checking in)

        Show
        Jun Rao added a comment - +1 (please remove unreferenced imports before checking in)

          People

          • Assignee:
            Unassigned
            Reporter:
            Neha Narkhede
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development