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

OffsetCommitRequest API - timestamp field is not versioned

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 0.8.2.0
    • Fix Version/s: 0.8.2.0
    • Component/s: core
    • Labels:
      None
    • Environment:
      wire-protocol

      Description

      Timestamp field was added to the OffsetCommitRequest wire protocol api for 0.8.2 by KAFKA-1012 . The 0.8.1.1 server does not support the timestamp field, so I think the api version of OffsetCommitRequest should be incremented and checked by the 0.8.2 kafka server before attempting to read a timestamp from the network buffer in OffsetCommitRequest.readFrom (core/src/main/scala/kafka/api/OffsetCommitRequest.scala)

      It looks like a subsequent patch (KAFKA-1462) added another api change to support a new constructor w/ params generationId and consumerId, calling that version 1, and a pending patch (KAFKA-1634) adds retentionMs as another field, while possibly removing timestamp altogether, calling this version 2. So the fix here is not straightforward enough for me to submit a patch.

      This could possibly be merged into KAFKA-1634, but opening as a separate Issue because I believe the lack of versioning in the current trunk should block 0.8.2 release.

        Attachments

        1. kafka-1841_2015-01-08_15:07:57.patch
          25 kB
          Jun Rao
        2. kafka-1841_2015-01-09_14:36:50.patch
          24 kB
          Jun Rao
        3. kafka-1841_2015-01-12_14:30:24.patch
          29 kB
          Jun Rao
        4. kafka-1841.patch
          14 kB
          Jun Rao

          Issue Links

            Activity

              People

              • Assignee:
                junrao Jun Rao
                Reporter:
                dana.powers Dana Powers
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: