This is a very fair question.  I suspect the answer is that people feel that 
automatic offset commit is easier to get started with, even though it has the 
error handling shortcomings you mention.  It would be very hard to change the 
default now, since it would break such a huge amount of code.  Perhaps if we 
create a whole new consumer interface.

best.
Colin


On Tue, Jan 29, 2019, at 12:53, Adam Bellemare wrote:
> As the question indicates.
> 
> Should this not be default false? I think this is a bit nefarious to
> someone launching their application into production without testing it
> extensively around failure modes. I can see a scenario where a consumer
> polls for events, processes them, produces to output topic, and commits the
> offsets. Say it takes 30 seconds for a batch. If it fails halfway through,
> upon restarting it will skip everything that was unprocessed/unpublished up
> to the committed offset.
> 
> Is there a historic reason why it's set to default true? Is it because to
> change it to default false it could affect the upgrade path of previous
> implementations?
> 
> Adam
>

Reply via email to