Reauth issue with more than 4 running containers
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 25/100
- issue の種類
- バグ
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 技術スタック
- azure, docker, python
- 領域
- cloud, embedded-iot
調査の方向性
まず、指定された Debian 11、Docker、Azure IoT の構成で、4 番目のコンテナーの再認証失敗を再現します。次に、pipeline_stages_base.py の retry_reauthorize と、pipeline_thread.py の _reauthorize パスおよびパイプラインスレッドのアサーションを調査します。完了条件は、トランスポートのタイムアウトの原因を特定し、回帰テストまたは文書化された再現によって動作を確認することです。
索引モデルが issue の本文から書いたものです。
説明
I have this strange issue, which I only encounter when I have a certain number of running processes.
The setup is VMware ESXi virtual machine running Debian 11 with Docker on top. I am now running devices in docker containers, which basically contains a Azure IoT Device client per container together with a bunch of logic. Three of these containers works fine, but when I startup the fourth container, it connects fine, but after 1 hour when it tries to re-auth it fails (only happens on the last started container):
22-11-22 10:30:02[ERROR] Exception caught in background thread. Unable to handle.
22-11-22 10:30:02[ERROR] ["azure.iot.device.common.pipeline.pipeline_exceptions.OperationCancelled: OperationCancelled('Transport timeout on connection operation')\n"]
Exception in thread Thread-410:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/threading.py", line 980, in _bootstrap_inner
self.run()
File "/usr/local/lib/python3.9/threading.py", line 1306, in run
self.function(*self.args, **self.kwargs)
File "/usr/local/lib/python3.9/site-packages/azure/iot/device/common/pipeline/pipeline_stages_base.py", line 466, in retry_reauthorize
this._reauthorize()
File "/usr/local/lib/python3.9/site-packages/azure/iot/device/common/pipeline/pipeline_thread.py", line 192, in wrapper
assert (
AssertionError:
Function _reauthorize is not running inside pipeline thread.
It should be. You should use invoke_on_pipeline_thread(_nowait) to enter the
pipeline thread before calling this function. If you're hitting this from
inside a test function, you may need to add the fake_pipeline_thread fixture to
your test. (generally applied on the global pytestmark in a module)
22-11-22 10:31:02[DEBUG] OperationCancelled('Could not complete operation') caused by OperationCancelled('Transport timeout on connection operation')
I am running:
azure-iot-device==2.8.0(Tried version 2.9.0, doesn't help)- Docker:
Docker version 20.10.21, build baeda1f
- 主要言語
- Python
- スター
- 18
- フォーク
- 24
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
Azure/azure-iot-hub-python のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
Azure/azure-iot-hub-python#15 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
Azure/azure-iot-hub-python#14 · コメント 13 件 · リアクション 13 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 25/100
Azure/azure-iot-hub-python#13 · コメント 2 件 · リアクション 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 25/100
-
AsyncIO supportオープン
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
Azure/azure-iot-hub-python#4 · コメント 2 件 · リアクション 7 件 ·
Azure/azure-iot-hub-python の issue をすべて見る
似ている issue
-
approved Good First Issue scope: docs
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
hiero-ledger/hiero-sdk-python#2730 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
wemake-services/wemake-django-template#3178 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
md/asciidoc/csv: an explicit `encoding="utf-8"` keeps a leading BOM, the auto-detect path drops itオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
docling-project/docling#4846 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
neurostuff/NiMARE#1181 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
pytest-dev/pytest#15180 ·
メンテナーはふだん 1 日以内に返信