Uploaded image for project: 'Kafka'
  1. Kafka
  2. KAFKA-364 Consumer re-design
  3. KAFKA-183

Expose offset vector to the consumer

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • None
    • None
    • None

    Description

      We should enable consumers to save their position themselves. This would be useful for consumers that need to store consumed data so they can store the data and the position together, this gives a poor man's "transactionality" since any data loss on the consumer will also rewind the position to the previous position so the two are always in sync.

      Two ways to do this:
      1. Add an OffsetStorage interface and have the zk storage implement this. The user can override this by providing an OffsetStorage implementation of their own to change how values are stored.
      2. Make commit() return the position offset vector and add a setPosition(List<Long>) method to initialize the position.

      Let's figure out any potential problems with this, and work out the best approach.

      Attachments

        Activity

          People

            jkreps Jay Kreps
            jkreps Jay Kreps
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: