You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Guozhang Wang (JIRA)" <ji...@apache.org> on 2017/02/08 19:34:41 UTC
[jira] [Commented] (KAFKA-4716) Fix logic for re-checking if
internal topic is ready
[ https://issues.apache.org/jira/browse/KAFKA-4716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15858439#comment-15858439 ]
Guozhang Wang commented on KAFKA-4716:
--------------------------------------
Coming from this commit: https://github.com/apache/kafka/pull/2478/commits/7d1968cce975d07c760b2248c6578e5841f5cece
Seems scale = 2 will doom to fail because of this issue?
> Fix logic for re-checking if internal topic is ready
> ----------------------------------------------------
>
> Key: KAFKA-4716
> URL: https://issues.apache.org/jira/browse/KAFKA-4716
> Project: Kafka
> Issue Type: Bug
> Components: streams
> Affects Versions: 0.10.2.0
> Reporter: Eno Thereska
> Labels: architecture
> Fix For: 0.10.3.0
>
>
> In InternalTopicManager, we have a hardcoded constant MAX_TOPIC_READY_TRY that is set to 5. We shouldn't hardcode the retry time and it should be based on a timeout, not on a number of retries.
> There are cases when the code in makeReady tries to create a topic but then fails because the controller is currently in transition and we get a warning: " Could not create internal topics: Could not create topic: <topic name> due to This is not the correct controller for this cluster." The code proceeds to retry MAX_TOPIC_READY_TRY times in a tight loop, and eventually fails. We should have a retry backoff (perhaps just use retry.backoff.ms) and a timeout (perhaps just use request.timeout.ms) instead of a number of retries.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)