Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

uncommittedOffsets : Clarification and Alternatives #351

Open
Labels
questionA question is asked
@vikas-goswami

Description

Hi Team,

We are migrating to Javascript client from KafkaJS and using APIs under:
const { Kafka } = require("@confluentinc/kafka-javascript").KafkaJS;

We would like to get clarification on uncommittedOffsets support in the migration documentation present here:
Within the eachBatch callback, use of uncommittedOffsets is unsupported
Link to documentation

Is there any alternative provided to track and commit offsets with a similar fine-tuned control? I am attaching some example usages below.

Example Usage 1:

await resolveOffsets(batch.messages, resolveOffset)
await commitOffsetsIfNecessary(uncommittedOffsets())

Usage 2: Where we track and update uncommittedOffsets

const uncommittedOffsets = []
....
consumer.uncommittedOffsets = consumer.uncommittedOffsets.concat(uncommittedOffsets)
....
 if (consumer.uncommittedOffsets.length === 0) {
 return done(null, false)
 }
 consumer.commitOffsetsIfNecessary(consumer.uncommittedOffsets)
 .then(() => {
 consumer.uncommittedOffsets = []
 return done(null, true)
 })
 .catch(err => {
 return done(err, false)
 })
}

We do not want to use autocommit :true since, it does not provide the finer-grained control over when and how offsets are committed. So, please let us know if there's any alternative.

Thanks in advance.

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionA question is asked

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /