On Thu, Feb 18, 2016 at 4:26 PM, Jay Kreps <j...@confluent.io> wrote: > The default semantics of the new consumer with auto commit are > at-least-once-delivery. Basically during the poll() call the commit will be > triggered and will commit the offset for the messages consumed during the > previous poll call. This is an advantage over the older scala consumer > where the consumer did not have this guarantee because the commit happened > asynchronously in a separate thread and hence could end up preceeding or > succeeding the actual processing of data. > > For streams this is exactly the same, and the guarantee is also > at-least-once-delivery (we will work on strengthening this in the future).
Thank you for the rapid, clear, thorough, and satisfying answer!