第7章 既知の問題
ENTMQBR-17 - AMQ222117: クラスター接続を開始できない
IPv6 をサポートする環境では、ブローカークラスターが適切に初期化に失敗することがあります。この失敗は、ログメッセージ
Can’t assign requested address
で示されるSocketException
が原因となります。この問題を回避するには、java.net.preferIPv4Stack
システムプロパティーをtrue
に設定します。
ENTMQBR-463 - クラスタリング設定の属性に順序の制約がある。エラーメッセージを改善するか、単に順序を無視した方がいい
現時点で、クラスター接続設定の要素の順序は特定の順序で行う必要があります。回避策は、設定スキーマの順序に従うことです。
ENTMQBR-520: 別のアドレスにバインドされたキューと同じ名前のアドレスからの受信は許可されるべきではない
アドレスと同じ名前のキューは、アドレスにのみ割り当てる必要があります。既存のアドレスと同じ名前で、異なる名前のアドレスにバインドされるキューを作成することは、無効な構成です。これを実行すると、誤ったメッセージがキューにルーティングされる可能性があります。
ENTMQBR-522 - シャットダウン時に一時ファイルを削除する際のウィンドウ書き込みの問題で実行されているブローカー
Windows では、ブローカーはシャットダウン時に一時ファイルを正常にクリーンアップしません。この問題により、シャットダウンプロセスが遅くなりました。さらに、ブローカーによって削除されない一時ファイルが、時間の経過と共に累積されます。
ENTMQBR-569 - ID を OpenWire から AMQP へ変換すると、ID をバイナリーとして送信する
A-MQ 6 OpenWire クライアントから AMQP クライアントに相互プロトコルを通信する場合、追加の情報はアプリケーションメッセージプロパティーにエンコードされます。これは、ブローカーによって内部で使用される無害な情報であり、無視することができます。
ENTMQBR-599 - Artemis cli によるトラストストアおよびキーストアを定義する
--ssl-key
、--ssl-key-password
、--ssl-trust
、および--ssl-trust-password
パラメーターを使用したブローカーインスタンスの作成は機能しません。この問題を回避するには、ブローカーの作成後にbootstrap.xml
で対応するプロパティーを手動で設定します。
ENTMQBR-617 - 証明書ベースの認証が AMQP および OpenWire クライアントで動作しない
SSL 証明書に基づく認証は AMQP および OpenWire クライアントではサポートされません。
ENTMQBR-636 - perf load (mpt) の下で、ジャーナルが破損し、
JavaNullPointerException
が発生するブローカーが高負荷を管理しているときに IO 関連の問題が発生しないようにするには、JVM に十分なメモリーとヒープ領域が割り当てられていることを確認してください。ActiveMQ Artemis ドキュメントの「Performance Tuning」章の「Tuning the VM」項を参照してください。
ENTMQBR-648 - JMS Openwire クライアントは、定義された
purgeOnNoConsumer
またはキューfilter
を持つキューにメッセージを送信できないA-MQ 6 JMS クライアントを使用して、
purgeOnNoConsumer
を持つキューがtrue
に設定されたアドレスにメッセージを送信します。キューにコンシューマーがない場合は失敗します。A-MQ 6 JMS クライアントを使用する場合は、purgeOnNoConsumer
オプションを設定しないことが推奨されます。
ENTMQBR-652 - 既知の
amq-jon-plugin
のバグの一覧amq-jon-plugin
のこのバージョンでは、ブローカーおよびキューの MBean の既知の問題があります。ブローカーの MBean の問題:
-
接続を閉じると
java.net.SocketTimeoutException
例外が発生する -
listSessions()
がjava.lang.ClassCastException
を出力する -
アドレス設定を追加すると
java.lang.IllegalArgumentException
が発生する -
getConnectorServices()
操作が見つからない -
listConsumersAsJSON()
操作が見つからない -
getDivertNames()
操作が見つからない -
ネットワークトポロジーの一覧表示で
IllegalArgumentException
が発生する - 削除アドレス設定で、パラメーター名が間違っている
キュー MBean の問題:
-
expireMessage()
で引数型の不一致例外が発生する -
listDeliveringMessages()
がIllegalArgumentException
を出力する -
listMessages()
がjava.lang.Exception
を出力する -
エラーメッセージの引数型不一致で
moveMessages()
がIllegalArgumentException
を出力する -
エラーメッセージの引数型不一致で
removeMessage()
がIllegalArgumentException
を出力する -
removeMessages()
が、Can’t find operation removeMessage with 2 arguments の例外を出力する -
retryMessage()
が引数型の不一致IllegalArgumentException
を出力する
-
接続を閉じると
ENTMQBR-655 - [AMQP]
populate-validated-user
が有効になっているとメッセージを送信できない設定オプション
populate-validated-user
は、AMQP プロトコルを使用して生成されたメッセージではサポートされません。
ENTMQBR-738: 提供されるオフラインリポジトリーで AMQ 7 のサンプルをオフラインでビルドできない
オフライン環境で、AMQ Broker に含まれる例をビルドできません。この問題は、提供されたオフラインの Maven リポジトリーに依存関係がないために発生します。
ENTMQBR-897 - 宛先名の特殊文字による Openwire クライアント/プロトコルの問題
現在、AMQ OpenWire JMS クライアントは、その名前にコンマ (',')、ハッシュ ('#')、および空白を含むキューおよびアドレスにアクセスできません。
ENTMQBR-944 - [A-MQ7, Hawtio, RBAC] ユーザーは RBAC によって拒否された場合にフィードバックを取得しない
コンソールで、許可されていないユーザーが試行した操作が成功しなかったのに成功したことを示すことがあります。
ENTMQBR-1498 - HA (レプリケーション、共有ストア) の管理コンソールのダイアグラムが実際のトポロジーを反映しない
余分なパッシブスレーブを使用してブローカークラスターを設定すると、Web コンソールのクラスターダイアグラムにはこのようなパッシブスレーブは表示されません。
ENTMQBR-1815 - 自動更新での Hawtio ビューの変更
自動更新が有効な場合には、Hawtio コンソールは 5 秒ごとに画面を更新します。また、自動更新はビューを Attributes 画面に変更すると、表示している他の画面からフォーカスが消えてしまいます。この問題を回避するには、コンソールの右上隅にある Preferences を選択します。Update rate ドロップダウンリストで、
No refreshes
を選択します。
ENTMQBR-1848 - 「javax.jms.JMSException: Incorrect Routing Type for queue, expecting: ANYCAST」は、qpid-jms クライアントがマルチキャストキューからのメッセージを、FQQN 使用した
javax.jms.Queue
オブジェクトとして消費するときに発生する現在、Qpid JMS クライアントを使用して、複数のキューが設定されているアドレスに FQQN (完全修飾キュー名) を使用してマルチキャストキューにメッセージを送信すると、クライアントにエラーメッセージが表示され、メッセージを送信することができません。この問題を回避するには、ブローカー設定を変更してエラーを解決し、クライアントのブロックを解除します。
ENTMQBR-1875 - [AMQ 7, ha, replicated store] バックアップブローカーが「ライブ」にならない、または ActiveMQIllegalStateException errorType=ILLEGAL_STATE message=AMQ119026: Backup Server was not yet in sync with live の後にシャットダウンしているようにみえる
バックアップブローカーがマスターブローカーと同期しようとしている間に、マスターブローカーのページングディスクを削除すると、マスターが失敗します。さらに、バックアップブローカーはマスターとの同期を試みるため、ライブになりません。
ENTMQBR-1942 - [AMQ 7.2、共有ストア、スケールダウン] スレーブをアクティベートしてスケールダウンしようとすると NullPointer 例外が発生する
共有ストアを使用してクラスターでスケールダウンするようにスレーブブローカーを設定すると、マスターブローカーがオフラインになるとスレーブで例外が発生する可能性があります。
ENTMQBR-2068 - 一部のメッセージが、HA フェイルオーバー、フェイルバックのシナリオでは受信されるものの、配信されない
現在、OpenWire クライアントがメッセージを送信している間にブローカーがスレーブにフェールオーバーすると、フェイルオーバー時にブローカーへ配信されるメッセージが失われる可能性があります。この問題を回避するには、承認する前にブローカーがメッセージを永続化していることを確認します。
ENTMQBR-2452 - Windows の AMQ 7.2.4 からアップグレードしたブローカー AMQ 7.3.0 がログに記録できない
Broker インスタンスを Windows の 7.2.4 から 7.3.0 にアップグレードする予定の場合は、アップグレードプロセス時に正しいログマネージャーバージョンを指定しない限り、ロギングは機能しません。詳細は、Windows での 7.2.x から 7.3.0 へのアップグレードに ついて参照してください。
ENTMQBR-2470 - [AMQ7, openwire,redelivery] メッセージを消費せずにコンシューマーが閉じられた場合の、増加するメッセージの再配信カウンター
ブローカーがメッセージを Openwire コンシューマーに送信し、コンシューマーがメッセージを使用する前に閉じられると、ブローカーは保留中のメッセージの再配信数を誤って増やします。この動作の数が
max-delivery-attempts
設定パラメーターの値を超える場合、ブローカーは、設定に基づいて、メッセージをデッドレターキュー (DLQ) に送信するか、メッセージを破棄します。この問題は Core プロトコルなどの他のプロトコルには影響しません。
ENTMQBR-2593 - ブローカーはクロスプロトコルの消費時にメッセージ ID ヘッダーを設定しない
Qpid JMS クライアントは、別の Qpid JMS クライアントによってメッセージが生成された場合にのみメッセージ ID が正常に取得します。メッセージが Core JMS または OpenWire クライアントによって生成された場合、Qpid JMS クライアントはメッセージ ID を読み取ることができません。
ENTMQBR-2678 - 分離されたマスターが再び稼働した後、クラスターに接続できない
レプリケーション高可用性 (HA) ポリシーを使用する 3 つ以上のライブバックアップグループのクラスターでは、レプリケーション接続の失敗時にライブブローカーがシャットダウンします。ただし、レプリケーション接続が復元され、元のライブブローカーが再起動すると、ブローカーはブローカークラスターに再度参加できないことがあります。元のライブブローカーがクラスターに再参加できるようにするには、まず新しいライブ (元のバックアップ) ブローカーを停止し、元のライブブローカーを再起動してから、元のバックアップブローカーを再起動します。
ENTMQBR-2681 - Operator は、サイズ >= 2 時に外部サービスとルートのみを作成する
AMQ Broker Operator を使用して単一のブローカーをデプロイする場合、Operator はサービスを作成しず、ポート 8161(Web コンソール/Jolokia ポート)および 61616(複数のプロトコルポート)で必要なルートを作成し、OpenShift 内部ネットワーク外からブローカー Pod にアクセスします。OpenShift 内の他の Pod は予想通りにブローカー Pod にアクセスできます。この問題を回避するには、ブローカーデプロイメントを最大 2 つ以上のブローカーに拡張し、1 つのブローカーに戻します。これには、ブローカーカスタムリソースファイルの
spec.size
パラメーターの値を変更します。デプロイメントを複数のブローカーにスケールアップしてから 1 つに戻すと、Operator は外部ブローカーへのアクセスに必要なサービスと一致するルートを作成します。spec.size
パラメーターの使用および Operator ベースのブローカーデプロイメントのネットワークサービスに関する詳細は、「 基本的なブローカーのデプロイ」を 参照してください。