This means the write occurred on the leader but the followers couldn't
acknowledge in the time bound specified by the user. The write will likely
complete but is not guaranteed to (the leader could immediately crash after
the response is sent). So if you retry you will potentially (likely) have
duplicate write.

-Jay

On Saturday, January 31, 2015, DeJiang Zhu <doujian...@gmail.com> wrote:

> Hi all,
>
> I'm working on implementing a lua kafka client [1], but I'm getting
> confused: what does `RequestTimedOut` exactly mean.
>
> At first, from The Kafka Protocal [2], I thought producer should retry when
> received `RequestTimedOut`.
>
> But later, I found sometimes the messages may have `commited` as well even
> I got `RequestTimedOut`, while sometimes not
>
> Also, in sarama[3], retry happens only on `UnknownTopicOrPartition,
> NotLeaderForPartition, LeaderNotAvailable` error code;only
> `LeaderNotAvailableException` and `NotLeaderForPartitionException` extends
> `RetryAbleException` in kafka[4]
>
> I wonder did I misunderstood The Kafka Protocal or was I wrong on something
> else I haven't realized.
>
> Looking forward to a reply. Thank you guys in advance. :)
>
>
> [1] https://github.com/doujiang24/lua-resty-kafka
> [2]
>
> https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol
> [3] https://github.com/Shopify/sarama
> [4] https://github.com/apache/kafka
>

Reply via email to