If the producer is async, the send(requests) function call would not
necessarily trigger the real sending action. The sending action is
triggered either if enough time has elapsed or enough messages have been
batched on the client side. One batch of messages to each broker will be
either send successfully or not at all (in this sense "atomic"), and if
failed the whole batch will be re-tried to that broker again.
As for consumers (I am assuming high-level consumers here), since the
consumers themselves will need to remember the offsets still which they
have consumed, if the consume request fails the consumers will just
re-issue the request starting with the previous offsets again.
On Wed, Oct 16, 2013 at 8:56 AM, Kane Kane <[EMAIL PROTECTED]> wrote: