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

Mirrormaker 2 offset sync is incorrect if the target partition is empty

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.7.0
    • 3.3.0
    • mirrormaker
    • None

    Description

      This bug occurs when using Mirrormaker with "sync.group.offsets.enabled = true".

      If a source partition is empty, but the source consumer group's offset for that partition is non-zero, then Mirrormaker sets the target consumer group's offset for that partition to the literal, not translated, offset of the source consumer group. This state can be reached if the source consumer group consumed some records that were now deleted (like by a retention policy), or if Mirrormaker replication is set to start at "latest". This bug causes the target consumer group's lag for that partition to be negative and breaks offset sync for that partition until lag is positive.

      The correct behavior when the source partition is empty would be to set the target offset to the translated offset, not literal offset, which in this case would always be 0. 

      Original email thread on this issue: https://lists.apache.org/thread.html/r7c54ee5f57227367b911d4abffa72781772d8dd3b72d75eb65ee19f7%40%3Cusers.kafka.apache.org%3E

      Attachments

        1. image-2022-11-02-11-53-33-329.png
          272 kB
          Chetan
        2. screenshot-1.png
          214 kB
          Chetan
        3. image-2022-11-02-11-56-34-994.png
          214 kB
          Chetan

        Issue Links

          Activity

            People

              mimaison Mickael Maison
              fyi Frank Yi
              Ning Zhang Ning Zhang
              Votes:
              3 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: