aio-libs / aio-libs/aiokafka

Stopping multiple consumers in a short window freezes on GroupCoordinator._heartbeat_routine()

オープン
#773 コメント 6 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Python
スター
1.4k
フォーク
269
平均マージ
1日 1時間
マージ済み PR(30日)
6

説明

**Describe the bug**
I have several hundred consumers all connected to the same singular topic with autocommit disabled. Each consumer is part of a unique individual group. When I call `AIOKafkaConsumer.stop()` on each of the consumers within a for loop the task doing the stopping eventually halts completely. When I probe into the task I find that it is stuck waiting on `GroupCoordinator._heartbeat_routine()` and it remains this way indefinitely.

```
wait_for=

# It also seems to happen with GroupCoordinator._commit_refresh_routine(), GroupCoordinator._commit_refresh_task and AIOKafkaClient._sync_task,
```

**Expected behaviour**
GroupCoordinator._heartbeat_routine() should not prevent `AIOKafkaConsumer.stop()` from completing.

**Environment (please complete the following information):**
- aiokafka version (`python -c "import aiokafka; print(aiokafka.__version__)"`): 0.7.1
- kafka-python version (`python -c "import kafka; print(kafka.__version__)"`): 2.0.2
- Kafka Broker version (`kafka-topics.sh --version`): 2.6.0
- Other information (Confluent Cloud version, etc.): Python 3.8.10

**Reproducible example**
```
```

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。