hello Ewen,

so the flush() operation is already included in close() ? how about
implementation before 0.9.0 version?

Thank you,

On Wed, Dec 2, 2015 at 2:43 PM, Ewen Cheslack-Postava <e...@confluent.io>
wrote:

> Kashif,
>
> The difference is that close() will also shut down the producer such that
> it can no longer send any messages. flush(), in contrast, is useful if you
> want to make sure that all the messages enqueued so far have been sent and
> acked, but also want to send more messages after that.
>
> -Ewen
>
> On Wed, Nov 25, 2015 at 7:01 AM, Kashif Usmani <
> usmani.kashif9...@gmail.com>
> wrote:
>
> > Hello,
> >
> >
> > I notice that 0.9 Kafka release had a new flush() call added to the
> > producer API (See https://issues.apache.org/jira/browse/KAFKA-1865).
> >
> > I am trying to understand what is the difference between producer.flush()
> > and producer.close()? They seem to be doing pretty similar work. If not,
> > can someone please explain?
> >
> > KAFKA-1865 mentions that flush() would ensure “that any record enqueued
> > prior to flush() would have completed being sent (either successfully or
> > not).” and javadocs for close() say that “Close this producer. This
> > method blocks until al in-flight requests complete.” Does ‘in-flight
> > requests complete’ mean same as enqueued records are sent to Kafka?
> >
> >
> >
> > Kashif
> >
>
>
>
> --
> Thanks,
> Ewen
>



-- 
Muqtafi Akhmad
Software Engineer
Traveloka

Reply via email to