To all the in-sync replicas. You can set the minimum number of in-sync
replicas via the min.insync.replicas topic/broker config.

Ismael

On Tue, Jan 14, 2020 at 11:11 AM Anindya Haldar <anindya.hal...@oracle.com>
wrote:

> I have a question related to the semantics of a producer send and the get
> calls on the future returned by the send call.
>
> - It is a Java application, using the Kafka Java client library
> - The application is set up to use 3 replicas and using acks=all for the
> producer
> - the application is using a non-zero value for linger.ms and batch.size
> parameters
> - The application is using a single non-transactional Kafka producer
> instance, shared across a number of threads
>
> With that,
>
> - Any application thread makes a send() call on the producer.
> - Then the same thread calls get() on the future returned by the last
> send() call
> - The get() call on the future returns after it gets the acknowledgement
> from the system for the message send
>
> At this point, is it guaranteed that the message has actually been written
> (but may not be committed by calling fsync) to ALL of the replicas’
> filesystems?
>
> Sincerely,
> Anindya Haldar
> Oracle Responsys
>
>

Reply via email to