[
https://issues.apache.org/jira/browse/TWILL-139?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14600185#comment-14600185
]
ASF GitHub Bot commented on TWILL-139:
--------------------------------------
GitHub user chtyim opened a pull request:
https://github.com/apache/incubator-twill/pull/51
(TWILL-139) Added workaround to retry starting Kafka multiple times
- In case race condition happened, the startup will fail with a
ZkTimeoutException
- Retry upon catching the timeout exception
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/chtyim/incubator-twill feature/TWILL-139
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-twill/pull/51.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #51
----
commit b9b08999fda30f239f8121efe67badfea3298edd
Author: Terence Yim <[email protected]>
Date: 2015-06-24T21:30:28Z
(TWILL-139) Added workaround to retry starting Kafka multiple times
- In case race condition happened, the startup will fail with a
ZkTimeoutException
- Retry upon catching the timeout exception
----
> ApplicationMaster hangs during start when ZooKeeper SASL authentication is
> turned on
> ------------------------------------------------------------------------------------
>
> Key: TWILL-139
> URL: https://issues.apache.org/jira/browse/TWILL-139
> Project: Apache Twill
> Issue Type: Bug
> Components: core, yarn
> Affects Versions: 0.5.0-incubating, 0.4.1-incubating
> Reporter: Terence Yim
> Assignee: Terence Yim
> Priority: Blocker
> Fix For: 0.6.0-incubating
>
>
> It is caused by a race condition when one {{ZKClient}} instance is performing
> the authentication while the {{EmbeddedKafkaServer}} is trying to start and
> connect to zookeeper.
> Here is the main method to reproduce the issue:
> {noformat}
> public static void main(String[] args) throws Exception {
> String zkStr = args[0];
> ZKClientService zkClient = ZKClientService.Builder.of(zkStr).build();
> EmbeddedKafkaServer kafka = new
> EmbeddedKafkaServer(generateKafkaConfig(zkStr));
> zkClient.startAndWait(); // <-- This returns when SyncConnected
> kafka.startAndWait(); // <-- This call hangs and never return
> }
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)