[ 
https://issues.apache.org/jira/browse/KAFKA-2123?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ewen Cheslack-Postava updated KAFKA-2123:
-----------------------------------------
    Attachment: KAFKA-2123_2015-05-29_11:11:05.patch

> Make new consumer offset commit API use callback + future
> ---------------------------------------------------------
>
>                 Key: KAFKA-2123
>                 URL: https://issues.apache.org/jira/browse/KAFKA-2123
>             Project: Kafka
>          Issue Type: Improvement
>          Components: clients, consumer
>            Reporter: Ewen Cheslack-Postava
>            Assignee: Ewen Cheslack-Postava
>             Fix For: 0.8.3
>
>         Attachments: KAFKA-2123.patch, KAFKA-2123_2015-04-30_11:23:05.patch, 
> KAFKA-2123_2015-05-01_19:33:19.patch, KAFKA-2123_2015-05-04_09:39:50.patch, 
> KAFKA-2123_2015-05-04_22:51:48.patch, KAFKA-2123_2015-05-29_11:11:05.patch
>
>
> The current version of the offset commit API in the new consumer is
> void commit(offsets, commit type)
> where the commit type is either sync or async. This means you need to use 
> sync if you ever want confirmation that the commit succeeded. Some 
> applications will want to use asynchronous offset commit, but be able to tell 
> when the commit completes.
> This is basically the same problem that had to be fixed going from old 
> consumer -> new consumer and I'd suggest the same fix using a callback + 
> future combination. The new API would be
> Future<Void> commit(Map<TopicPartition, Long> offsets, ConsumerCommitCallback 
> callback);
> where ConsumerCommitCallback contains a single method:
> public void onCompletion(Exception exception);
> We can provide shorthand variants of commit() for eliding the different 
> arguments.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to