[ 
https://issues.apache.org/jira/browse/KAFKA-2389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14708480#comment-14708480
 ] 

Jay Kreps commented on KAFKA-2389:
----------------------------------

Why would not passing in a callback imply that you want the call to be 
synchronous? Not passing in a callback just implies you don't have an action to 
carry out after the commit is completed. Since we in any case only guarantee 
at-least once delivery doing commit async with no callback is totally valid (if 
the commit fails you basically get dups which you could in any case get). I 
actually think it is helpful to have a visual thing that tells you if the call 
is sync or not so if we have some problem with the CommitType flag then we can 
split the method into commitSync(...) and commitAsync(...) the challenge with 
this is that if there are multiple variants on arguments you have to do them 
all twice which is annoying for the user to troll through.

> CommitType seems not necessary in commit().
> -------------------------------------------
>
>                 Key: KAFKA-2389
>                 URL: https://issues.apache.org/jira/browse/KAFKA-2389
>             Project: Kafka
>          Issue Type: Sub-task
>            Reporter: Jiangjie Qin
>            Assignee: Jiangjie Qin
>
> The CommitType does not seem to be necessary in for commit(), it can be 
> inferred from whether user passed in a callback or not.



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

Reply via email to