You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Dong Lin (JIRA)" <ji...@apache.org> on 2017/11/07 19:41:00 UTC

[jira] [Created] (KAFKA-6183) Broker should send OffsetCommitResponse only after it has written offset to cache

Dong Lin created KAFKA-6183:
-------------------------------

             Summary: Broker should send OffsetCommitResponse only after it has written offset to cache
                 Key: KAFKA-6183
                 URL: https://issues.apache.org/jira/browse/KAFKA-6183
             Project: Kafka
          Issue Type: Bug
            Reporter: Dong Lin
            Assignee: Dong Lin


Currently broker sends OffsetCommitResponse to client before it writes committed offset to disk and cache. Thus client does not have read-after-write semantics when committing and reading offset. The following sequence of events may happen:

- Client sends offset commit request to broker.
- Broker sends offset commit response back.
- Client sends offset fetch request to broker.
- Broker returns an empty offset fetch response to client.
- Broker writes the committed offset to disk and cache.

Broker should return OffsetCommitResponse after it has written committed offset to disk and memory, similar to the approach that broker returns ProduceResponse after it has written data to disk. Note that the data does not have to be flushed to disk. This change makes offset commit semantics easier to use without incurring cost on the broker.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)