Skip to content

EMQX 5.9 の既知の問題 ​

e5.9.0 ​

バージョン問題回避策ステータス
5.0.0クラスターにおけるルートおよびセッションレジストリの不整合
ネットワークパーティションの復旧、ノードの突然のシャットダウン、クリーンアップ中のRPCタイムアウトなどのクラスターイベント後に、ルートテーブルおよびグローバルセッション(チャネル)レジストリに古いまたは欠落したエントリが残る複数の関連問題があります。具体的な症状は以下の通りです。
- レプリカントノード上のサブスクライバーのルートがネットワークパーティション復旧後に完全に再同期されないことがあり、影響を受けたノードが再起動するまで一部のサブスクリプションがメッセージを受信しなくなることがあります。
- レプリカントノードが所有するチャネルがパーティション復旧後にグローバルレジストリから削除されることがあり、不正確なセッションテイクオーバー(再接続したクライアントが古いセッションを置き換えられない)やダッシュボードのクライアント数の誤表示を引き起こします。
- セッションの所有プロセスがクリーンな登録解除なしに終了した場合(例えば、登録解除の複製が妨げられた短時間のネットワーク分断後や、ダウンイベントのクリーンアップ中にコアのコンセンサスチェックがタイムアウトした場合)、グローバルセッションレジストリの行が無期限にリークすることがあります。同じクライアントIDが再接続しない限り、これらの死んだ行が時間とともに蓄積されます。
これらの修正は新しいリリースラインに含まれていますが、5.9にはバックポートされません。詳細は emqx/emqx のPR #17076、#17257、#17522 を参照してください。
-5.10.4以降、6.1.2以降、または6.2.1以降にアップグレードしてください
5.0.0Linuxの単調クロックが逆戻りした場合のノードクラッシュ
特定の仮想Linux環境では、OSがクロックを単調に保てず、Erlang VMが OS monotonic time stepped backwards! というメッセージとともに終了することがあります。
そのような環境では、etc/vm.args 内で +c フラグを false に設定してください。
5.3.0SAMLベースのSSOの制限
EMQXダッシュボードは、Security Assertion Markup Language(SAML)2.0標準に基づくシングルサインオンをサポートし、OktaおよびOneLoginをアイデンティティプロバイダーとして統合しています。しかし、SAMLベースのSSOは現在、証明書署名検証メカニズムをサポートしておらず、その複雑さのためAzure Entra IDとは互換性がありません。
-
5.1.0クラスターに新しいコアノードが追加された際にレプリカントノードが起動時にハングする可能性
新しいコアノードの追加を伴うクラスター変更時に、追加されたコアがレプリカントノードに必要なレプリケーション関連プロセスの起動に失敗することがあります。これにより、アップグレードまたは新規追加されたレプリカントノードが起動時にハングする事象が発生しました。
Kubernetes環境では、レプリカントポッドのレディネスプローブが失敗し、コントローラーがポッドを繰り返し再起動する原因となりました。
この問題は、例えば既存の2コア+2レプリカントクラスターを拡張して新たに2つのコアノードと2つの新しいレプリカントをEMQXの新バージョンで追加するアップグレードロールアウト時に典型的に発生します。
1つ以上のレプリカントノードが(再)デプロイ後に起動時にハングする場合は、追加されたコアノードを1台ずつ強制的に再起動し、レプリカントがブロック解除されて起動を完了するまで繰り返してください。5.10.3、6.0.1で修正済み
5.7.0クラスターリンクのガベージコレクションがアクティブルートを削除する可能性
複数の独立したクラスターリンクが設定され、一部のリンクが比較的長期間ダウンしたままの場合、ガベージコレクションプロセスが誤って内部ルーティングテーブルからアクティブルートを削除することがあります。これにより、影響を受けたクラスターリンクがメッセージの一部のみを転送するか、メッセージ転送を完全に停止する可能性があります。
-5.10.3、6.1.0で修正済み