You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@kafka.apache.org by tao xiao <xi...@gmail.com> on 2016/01/29 12:08:43 UTC

Meaning of request.timeout.ms

Hi team,

I want to understanding the meaning of request.timeout.ms that is used in
producer. As per the doc this property is used to expire records that have
been waiting for response from server for more than request.timeout.ms
which also means the records have been sitting in InFlightRequests for more
than request.timeout.ms.

But look at the codebase I discovered that request.timeout.ms is used for
another purpose: to expire records that sit in accumulator for more than
request.timeout.ms. I believe records that are in accumulator should not be
in InFlightRequests therefore request.timeout.ms is used to expire two
types of records: Records that sit in InFlightRequests for more than
request.timeout.ms and records that sit in accumulator for  more than
request.timeout.ms. Is this understanding correct?

Re: Meaning of request.timeout.ms

Posted by Jason Gustafson <ja...@confluent.io>.
That is correct. KIP-19 has the details:
https://cwiki.apache.org/confluence/display/KAFKA/KIP-19+-+Add+a+request+timeout+to+NetworkClient
.

-Jason

On Fri, Jan 29, 2016 at 3:08 AM, tao xiao <xi...@gmail.com> wrote:

> Hi team,
>
> I want to understanding the meaning of request.timeout.ms that is used in
> producer. As per the doc this property is used to expire records that have
> been waiting for response from server for more than request.timeout.ms
> which also means the records have been sitting in InFlightRequests for more
> than request.timeout.ms.
>
> But look at the codebase I discovered that request.timeout.ms is used for
> another purpose: to expire records that sit in accumulator for more than
> request.timeout.ms. I believe records that are in accumulator should not
> be
> in InFlightRequests therefore request.timeout.ms is used to expire two
> types of records: Records that sit in InFlightRequests for more than
> request.timeout.ms and records that sit in accumulator for  more than
> request.timeout.ms. Is this understanding correct?
>