第5章 修正された問題
このセクションでは、AMQ Broker7.8 で修正された一連の主な問題について説明します。リリースで修正された問題の完全リストは、AMQ Broker 7.8.0 の修正済み問題 および AMQ 7 Broker - 7.8.x の解決済みの問題 を参照してください。
ENTMQBR-1815 - 自動更新での Hawtio ビューの変更
以前のバージョンでは、自動更新が有効な場合に Hawtio コンソールは 5 秒ごとに画面を更新していました。この動作により、ビューが Attributes タブに切り替わり、表示されていたその他のタブからフォーカスが失われました。この問題は解決されています。
ENTMQBR-2890 - サイズが n > 1 の CR インスタンスを作成すると、n 番目の ブローカー Pod が 1 度起動し、即座に再起動する
以前のバージョンでは、カスタムリソース (CR) インスタンスを使用して AMQ ブローカーオペレーターを使用してブローカークラスターをデプロイした場合、デプロイの最後のブローカー Pod (CR の
size
プロパティーによって決定される) が開始し、その後、すぐに一度再起動しないと使用可能になりませんでした。この問題は解決されています。デプロイメント内のブローカー Pod は、再起動する前に使用可能になります。
ENTMQBR-3059 - AMQ Broker Operator:Operator doesn't pick up CR name after restart / update(Operator が再起動/更新後に CR 名を選択しない)
以前のバージョンでは、永続性およびメッセージ移行を使用するように設定されている 2 つ以上のブローカーのクラスター化ブローカーデプロイメントを作成した場合、メッセージ移行用にスケールダウンコントローラーをインスタンス化する際に、AMQ Broker Operator は無効な名前を生成する可能性がありました。具体的には、Operator が再起動するか、またはそのイメージがブローカーデプロイメントのスケールダウン前に更新された場合に、この問題が発生します。この状況の結果、ブローカーデプロイメントを削除し、再作成する必要がありました。この問題は解決されています。
ENTMQBR-3514 - AMQ Broker Operator:ブローカーがインスタンス化された前にアドレス CR が送信される場合、アドレスは作成されません。
以前のバージョンでは、Operator ベースのブローカーのデプロイメントの場合、ブローカーがインスタンス化される前にアドレスのカスタムリソース (CR) インスタンスを作成している場合、Operator はアドレスの作成に失敗しました。この問題は解決されています。
ENTMQBR-3578 - AMQ Broker Operator:起動時に既存の CR インスタンスをベースラインとして使用して先に進むための Operator サポートはありません。
以前のバージョンでは、AMQ Broker Operator の起動時に、プロジェクトの既存のカスタムリソース (CR) インスタンスをチェックしませんでした。この動作は、Operator を再起動する必要がある場合に (新規 Operator イメージのバージョンを適用するなど)、Operator およびブローカーデプロイメントが同期されなくなったことを意味します。この場合は、ブローカーデプロイメントを削除し、再作成する必要があります。この問題は解決されています。
ENTMQBR-3587 - 重大な IO エラーでシャットダウン時に通知を回避する
以前のバージョンでは、重大な IO エラーが原因で自身をシャットダウンすると、ブローカーはディスク IO をトリガーする複数の通知を生成していました。これらの通知は、ブローカーのシャットダウンを遅らせたり、イベントが妨げたりする可能性があります。この問題は解決されています。
ENTMQBR-3617 - 永続性アドレスの hawtio コンソールのユーザー情報が null である
以前のバージョンでは、コンシューマーが共有の永続サブスクリプションを作成すると、AMQ 管理コンソールで、ブローカーによって自動作成されたサブスクリプションキューの
null
として関連付けられたユーザーが表示される可能性がありました。この問題は解決されています。
ENTMQBR-3692 - 永続性アドレスの hawtio コンソールのユーザー情報が null である
以前のバージョンでは、メッセージ駆動 Bean (MDB) が ActiveMQ Java Connector Architecture (JCA) リソースアダプターを使用して永続トピックサブスクリプションを作成すると、MDB はデプロイに失敗していました。この問題は解決されています。
ENTMQBR-3705 - LVQ で非破壊の場合、既存のコンシューマーにメッセージを配信しない
以前のバージョンでは、コンシューマーが共有の永続アドレスを作成すると、AMQ 管理コンソールは関連するユーザーを
null
と表示する可能性がありました。この問題は解決されています。
ENTMQBR-3710 - キュー再開時の不正な監査メッセージ
以前のバージョンでは、一時停止してキューを再開すると、監査ロガーに、再開イベントを別の一時停止イベントとして説明したテキストが誤って含まれていました。以下は例になります。
2020-07-09 11:18:00,352 [AUDIT](qtp795748540-39) AMQ601213: User amq(amq)@192.168.100.1:40858 is resuming on target resource: QueueImpl[name=helloworld, postOffice=PostOfficeImpl 2020-07-09 11:18:00,352 [AUDIT](qtp795748540-39) AMQ601721: User amq(amq)@192.168.100.1:40858 has paused queue helloworld
この問題は解決されています。
ENTMQBR-3719 - LegacyLDAPSecuritySettingPlugin により、新しいユーザーが新しく作成された宛先にアクセス可能になる
以前のバージョンでは、新しいパーミッションが LDAP に追加されると、
LegacyLDAPSecuritySettingPlugin
プラグインが、デフォルトのセキュリティー一致を変更するために新規のパーミッションを使用していました。これにより、既存のユーザーの認証が破損する可能性があります。この問題は解決されています。
ENTMQBR-3726 - JVM プロパティー hawtio.role が空白およびハイフンを含むロールを解析しない
以前のバージョンでは、
artemis.profile
ファイルが、空白またはハイフンを含むhawtio.role
プロパティーを定義すると、プロパティーが適切に機能しませんでした。この問題は解決されています。
ENTMQBR-3744 - デフォルト/ゼロ以外の consumer-window-size によるグループのリバランスを有効にすると、メッセージの消費が順不同になる可能性がある
以前のバージョンでは、接続しているコンシューマーがゼロよりも大きい
consumerWindowSize
の値を使用している場合 (つまり、メッセージがこれらのクライアント上でバッファーに事前フェッチされている)、および (group-rebalance
またはdefault-group-rebalance
をtrue
に設定することで) ブローカーがグループのリバランスを使用するように設定すると、メッセージの消費が順不同になる可能性がありました。この問題は解決されています。
ENTMQBR-3752 - バックアップブローカーがマスターとの接続を再確立できない
ネットワークが停止した場合に、ライブバックアップグループの両方のブローカーを同時に稼働させることができます (ネットワーク分離 または スプリットブレイン と呼ばれる状況)。以前のバージョンでは、このような状況が発生すると、接続済みの AMQ Core Protocol JMS クライアントは誤ったブローカートポロジー情報を受け取っていました。その結果、ネットワークおよびスプリットブレインの問題が解決すると、クライアントは適切なブローカーに再接続できませんでした。この問題を回避するには、クライアントを再起動する必要があります。この問題は解決されています。
ENTMQBR-3782 - page-max-concurrent-io を無効にすることができない
以前のバージョンでは、
page-max-concurrent-io
の値を-1
に設定して、ページングで許容される同時読み取り数の上限を削除することができませんでした。代わりに、ブローカーはデフォルト値の使用を継続し、デフォルトから変更している場合は、以前に設定した値を使用します。この問題は解決されています。
ENTMQBR-3797 - アクティベーションに失敗すると、ゾンビブローカーが発生する場合がある
以前のリリースでは、ライブバックアップブローカーグループが共有ストアの高可用性を使用するように設定されている場合、ライブブローカーは再起動後に適切にアクティブにならない可能性がありましたが、ジャーナルロックの保持を継続していました。たとえば、ライブバックアップグループがネットワークファイルシステム (NFS) を使用していて、NFS が予期せず停止または削除され、ライブブローカーが再起動すると、この問題が発生する可能性があります。この状況では、クライアントにサービスを提供できず、バックアップブローカーをアクティブ化できなかったブローカーが機能しなくなっていました。この問題は解決されています。
ENTMQBR-3798 - JDBC XML 構成はカスタムのパスワードコーデックを使用できない
以前のバージョンでは、
jdbc-password
パラメーターのマスクされたパスワードと、ブローカー設定のpassword-codec
パラメーターのカスタムコーディックを指定すると、ブローカーは常にデフォルトのorg.apache.activemq.artemis.utils.DefaultSensitiveStringCodec
コーディックを使用してパスワードをデコードしていました。この問題は解決されています。
ENTMQBR-3812 - キューを破棄し同時にデページングする際に発生する可能性のあるデッドロック
以前のバージョンでは、キューが破棄された (非永続コンシューマーがその接続を切断した場合など)、同時にデページングが行われると、デッドロック状態が発生する可能性がありました。この問題は解決されています。
ENTMQBR-3813 - キュー更新時の Null ポインター例外
以前のバージョンでは、フィルターなしで作成されたキューを更新しようとすると、ブローカーが null ポインター例外 (NPE) を表示する可能性がありました。この問題は解決されています。
ENTMQBR-3841 - 同時 Jolokia 操作により、artemis-roles.properties または artemis-users.properties が誤って更新される場合がある
以前のバージョンは、ユーザーおよびロールまたはパーミッションを操作する複数の同時 Jolokia 操作がブローカーで行われた場合、ブローカーが
artemis-roles.properties
またはartemis-users.properties
構成ファイルの一部のデータを誤って更新または削除する可能性がありました。この問題は解決されています。
ENTMQBR-3880 - ページング中にワイルドカードアドレスの Destination ヘッダーが置き換えられる
以前のバージョンでは、メッセージを保存する前に、ブローカーは、ページストア名を反映するようにメッセージの address フィールドを設定していました。メッセージが、ワイルドカードアドレス式を使用してサブスクライブしたコンシューマーに最初にページングされると、他のコンシューマーが処理できない誤った宛先名のヘッダーが作成されていました。この問題は解決されています。ブローカーが、メッセージをページストアに書き込む際にメッセージの内容を変更しなくなりました。これにより、元のターゲットアドレスはそのまま残ります。
ENTMQBR-4034 - 再起動後に LVQ が破損する
以前のバージョンでは、ブローカーの再起動後、last-value キューにある既存のメッセージは、同じ last-value キーを持つキューに送信される新しいメッセージに置き換えられませんでした。この問題は解決されています。
ENTMQBR-4143 - AMQ Broker Operator:CRD と Operator 間の
pageSizeBytes
プロパティーのタイプ不一致。以前のリリースでは、
addressSettings.addressSetting
セクションを追加することで、ブローカーデプロイメントのカスタムリソース (CR) インスタンスにアドレス設定を追加した場合に、pageSizeBytes
プロパティーを含めることができませんでした。このプロパティーを含めて値を指定すると、Operator が CR の処理に失敗したか、CR を処理したにもかかわらずブローカーを開始できた可能性があります。この問題は解決されています。
ENTMQBR-4144: AMQ Broker Operator:アドレス設定の
redeliveryCollisionAvoidanceFactor
を指定できない以前のリリースでは、(
addressSettings.addressSetting
セクションを追加することで) ブローカーデプロイメントのカスタムリソース (CR) インスタンスにアドレス設定を追加した場合に、redeliveryCollisionAvoidanceFactor
プロパティーを使用することができませんでした。このプロパティーを含めて値を指定すると、Operator は CR の処理に失敗しました。この問題は解決されています。
ENTMQBR-4145 - AMQ Broker Operator:アドレス設定
autoCreateJmsTopics
は指定できません以前のリリースでは、(
addressSettings.addressSetting
セクションを追加することで) ブローカーデプロイメントのカスタムリソース (CR) インスタンスにアドレス設定を追加した場合に、autoCreateJmsTopics
プロパティーを使用することができませんでした。このプロパティーを含めて値を指定すると、Operator は CR を処理しましたが、結果のブローカー構成にプロパティーを含めることができませんでした。この問題は解決されています。
ENTMQBR-4146 - アドレス設定で
default-group-rebalance-pause-dispatch
プロパティーが指定されていると、ブローカーの起動に失敗する以前のバージョンでは、
default-group rebalance-pause-dispatch
プロパティーの値をtrue
に設定するようにbroker.xml
設定ファイルのaddress-setting
要素を設定した場合は、ブローカーが起動できませんでした。この問題は、OpenShift Container Platform でのブローカーデプロイメントでも発生しました。具体的には、(
addressSettings.addressSetting
セクションを追加することで) ブローカーデプロイメントのカスタムリソース (CR) インスタンスにアドレス設定を追加した場合に、defaultGroupRebalancePauseDispatch
プロパティーの値をtrue
に設定すると、デプロイメントのブローカーを開始できませんでした。この問題は解決されています。
ENTMQBR-4159 - AMQ Broker Operator:STOMP プロトコル用にルートが作成されない
以前のリリースでは、アクセプターを定義して STOMP プロトコルを使用するものの、アクセプターが使用するポートを指定していない場合、Operator はアクセプターのサービスとルートを作成できませんでした。この問題は解決されています。
ENTMQBR-4195: AMQ ブローカー再起動後に、削除されているスケジュールされたメッセージが再表示される
以前のリリースでは、管理 API を使用してスケジュールされたメッセージを削除すると、メッセージはメモリーから削除されますが、ストレージからは削除されませんでした。これにより、ブローカーを再起動する際にメッセージが再表示されていました。この問題は解決されています。
ENTMQBR-4263 - DLQ がブローカーをシャットダウンするまでメッセージが大きくなる
以前のバージョンでは、特定のプロトコルのメッセージがそのプロトコルに構成された大きなメッセージサイズに近く、ブローカーがメッセージをデッドレターキューに配信しようとした場合に、ブローカーが予期せずシャットダウンする可能性がありました。この問題は解決されています。
関連情報
- AMQ Broker 7.8 リリースで修正された問題の完全リストは、AMQ Broker 7.8.0 の修正済み問題 を参照してください。