didi / didi/KnowStreaming

查看consumer group详情时timeout错误

Open
#1,096 17 comments 0 reactions 0 assignees View on GitHub
dev: backend type: enhancement
Dominant language
Java
Stars
7.2k
Forks
1.3k
PR merge metrics
No merged PRs in 30d

Description

- [x] 我已经在 [issues](https://github.com/didi/KnowStreaming/issues) 搜索过相关问题了,并没有重复的。

你是否希望来认领这个Bug。

「 Y / N 」

### 环境信息

* KnowStreaming version : 3.3.0
* Operating System version : centos8.4
* Java version : 11.0.2

### 重现该问题的步骤

1. 查看consumer group详情
knowstreaming里添加了两个kafka集群,一个是2.2.0, 一个是2.4.1
2.2.0集群查看Consumer Group详情时,可以查看到topic下的partition详情
如图
![image](https://github.com/didi/KnowStreaming/assets/11244921/c3a04da1-fce2-4ac7-84ff-a09d9e59337a)
2.4.1集群查看Consumer Group详情时,总是报超时错误
![image](https://github.com/didi/KnowStreaming/assets/11244921/6f4ce652-38e2-4451-8855-a94fc5224824)


### 预期结果

应该显示出topic先partition列表

### 实际结果

显示超时错误,然而这个集群的topic列表,统计信息等等基本都正常显示,只有consumer group详情出错,
网络问题排除掉,使用kafkactl都可以正常获取到信息,而且很快
然后KnowStreaming里的request timeout ,socket timeout 都设置到了30s,但是页面内那个超时错误每次都是瞬间弹出来

以下是异常信息,很多类似的 timeout

---

如果有异常,请附上异常Trace:

```
com.xiaojukeji.know.streaming.km.common.exception.AdminOperateException: org.apache.kafka.common.errors.TimeoutException: Call(callName=findCoordinator, deadlineMs=1689749980884, tries=1, nextAllowedTryMs=-9223372036854775709) timed out at 9223372036854775807 after 1 attempt(s)
at com.xiaojukeji.know.streaming.km.core.service.group.impl.GroupServiceImpl.getGroupOffsetFromKafka(GroupServiceImpl.java:167)
at com.xiaojukeji.know.streaming.km.core.service.group.impl.GroupMetricServiceImpl.getLagRelevantFromAdminClient(GroupMetricServiceImpl.java:196)
at com.xiaojukeji.know.streaming.km.core.service.version.impl.VersionControlServiceImpl.doHandler(VersionControlServiceImpl.java:93)
at com.xiaojukeji.know.streaming.km.core.service.version.BaseVersionControlService.doVCHandler(BaseVersionControlService.java:62)
at com.xiaojukeji.know.streaming.km.core.service.version.BaseKafkaVersionControlService.doVCHandler(BaseKafkaVersionControlService.java:29)
at com.xiaojukeji.know.streaming.km.core.service.group.impl.GroupMetricServiceImpl.collectGroupMetricsFromKafka(GroupMetricServiceImpl.java:83)
at com.xiaojukeji.know.streaming.km.collector.metric.kafka.GroupMetricCollector.collectMetrics(GroupMetricCollector.java:96)
at com.xiaojukeji.know.streaming.km.collector.metric.kafka.GroupMetricCollector.lambda$collectKafkaMetrics$0(GroupMetricCollector.java:66)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Call(callName=findCoordinator, deadlineMs=1689749980884, tries=1, nextAllowedTryMs=-9223372036854775709) timed out at 9223372036854775807 after 1 attempt(s)
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:260)
at com.xiaojukeji.know.streaming.km.core.service.group.impl.GroupServiceImpl.getGroupOffsetFromKafka(GroupServiceImpl.java:158)
... 12 common frames omitted

2023-07-19 14:58:40.883 [MetricCollect-Shard-1-9-thread-79] ERROR class=c.x.k.s.k.core.service.group.impl.GroupServiceImpl||method=getGroupOffset||clusterPh
yId=1|groupName=wangyou_transport||errMsg=exception!
java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Call(callName=findCoordinator, deadlineMs=1689749980882, tries=1,
nextAllowedTryMs=-9223372036854775709) timed out at 9223372036854775807 after 1 attempt(s)
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:260)
at com.xiaojukeji.know.streaming.km.core.service.group.impl.GroupServiceImpl.getGroupOffsetFromKafka(GroupServiceImpl.java:158)
at com.xiaojukeji.know.streaming.km.core.service.group.impl.GroupMetricServiceImpl.getLagRelevantFromAdminClient(GroupMetricServiceImpl.java:196)
at com.xiaojukeji.know.streaming.km.core.service.version.impl.VersionControlServiceImpl.doHandler(VersionControlServiceImpl.java:93)
at com.xiaojukeji.know.streaming.km.core.service.version.BaseVersionControlService.doVCHandler(BaseVersionControlService.java:62)
at com.xiaojukeji.know.streaming.km.core.service.version.BaseKafkaVersionControlService.doVCHandler(BaseKafkaVersionControlService.java:29)
at com.xiaojukeji.know.streaming.km.core.service.group.impl.GroupMetricServiceImpl.collectGroupMetricsFromKafka(GroupMetricServiceImpl.java:83)
at com.xiaojukeji.know.streaming.km.collector.metric.kafka.GroupMetricCollector.collectMetrics(GroupMetricCollector.java:96)
at com.xiaojukeji.know.streaming.km.collector.metric.kafka.GroupMetricCollector.lambda$collectKafkaMetrics$0(GroupMetricCollector.java:66)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: org.apache.kafka.common.errors.TimeoutException: Call(callName=findCoordinator, deadlineMs=1689749980882, tries=1, nextAllowedTryMs=-922337203685
4775709) timed out at 9223372036854775807 after 1 attempt(s)
Caused by: org.apache.kafka.common.errors.TimeoutException: The AdminClient thread has exited.
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.