【发布时间】:2018-12-21 19:58:15
【问题描述】:
我是 Kafka 新手,正在尝试使用 AdminClient API 来管理在我的本地计算机上运行的 Kafka 服务器。我的设置与 Kafka 文档的 quick start 部分完全相同。唯一的区别是我没有创建任何主题。
我在此设置中运行任何 shell 脚本都没有问题,但是当我尝试运行以下 java 代码时:
public class ProducerMain{
public static void main(String[] args) {
Properties props = new Properties();
props.setProperty(AdminClientConfig.BOOTSTRAP_SERVERS_CONFIG,
"localhost:9092");
try(final AdminClient adminClient =
KafkaAdminClient.create(props)){
try {
final NewTopic newTopic = new NewTopic("test", 1,
(short)1);
final CreateTopicsResult createTopicsResult =
adminClient.createTopics(
Collections.singleton(newTopic));
createTopicsResult.all().get();
}catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
}
}
}
}
错误:TimeoutException: Timed out waiting for a node assignment
Exception in thread "main" java.lang.RuntimeException: org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment.
at ProducerMain.main(ProducerMain.java:41)
<br>Caused by: java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment.
at org.apache.kafka.common.internals.KafkaFutureImpl.wrapAndThrow(KafkaFutureImpl.java:45)
at org.apache.kafka.common.internals.KafkaFutureImpl.access$000(KafkaFutureImpl.java:32)
at org.apache.kafka.common.internals.KafkaFutureImpl$SingleWaiter.await(KafkaFutureImpl.java:89)
at org.apache.kafka.common.internals.KafkaFutureImpl.get(KafkaFutureImpl.java:258)
at ProducerMain.main(ProducerMain.java:38)
<br>Caused by: org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment.
我已经在网上搜索了有关问题可能是什么的迹象,但到目前为止一无所获。欢迎任何建议,因为我已经走到了尽头。
【问题讨论】:
-
您找到解决问题的方法了吗?当我对已部署的集群代理运行 KafkaReadyCommand 时,我遇到了同样的错误,并且无法弄清楚会发生什么。
-
@Gaetan 系统重启最终解决了我的问题,因为我在本地机器上运行 Kafka。但是,我仍然不知道问题的根源是什么。抱歉,我不能提供更多帮助。
标签: java apache-kafka runtimeexception