Sun GlassFish Message Queue 4.4 リリースノート

メッセージキュー 4.4 で修正されたバグおよび最近のリリース

メッセージキュー 4.4 には、新しいバグの修正と、メッセージキュー 4.x ファミリのこれまでのリリースで解決されたバグの修正が含まれます。

次の各節では、それぞれのリリースで修正されたバグの一覧を示します。

メッセージキュー 4.4 で修正されたバグ

次の表に、メッセージキュー 4.4 で修正されたバグを示します。

表 1–7 メッセージキュー 4.4 で修正されたバグ

バグ 

説明 

6242247 

2 つのブローカが同じマシン上にあり、同じ名前である場合、マスターブローカを持つ MQ クラスタが起動後にハングアップします。 

6760937 

再起動されたブローカが DB に再接続しません。 

6765410 

マスターブローカがローカルの配信対象に 2 回送信を行うと、スレーブで「永続サブスクリプションがすでにアクティブである」という例外が発生します。 

6796506 

リモートの PREPARE 応答の受信中にタイムアウトが発生した場合、リモートの PREPARED メッセージがロールバック後に再配信されません。 

6821639 

MQRA-DIRECT モードで AS 回復中に、rollback/commitTransaction で NPE が発生します。 

6836364 

トピックがサブスクライバより前に作成されている場合、ワイルドカードサブスクライバがリモートメッセージを受信しません。 

6836749 

HA(JCAPS): 永続サブスクリプションの 1 つでメッセージをロールバックしてコミットしたあと、受信時に「ストアに確認応答が存在する」という例外が発生します。 

6858905 

Consumer.destroyConsumer で ConcurrentModificationException が発生します。 

メッセージキュー 4.3 で修正されたバグ

次の表に、メッセージキュー 4.3 で修正されたバグを示します。

表 1–8 Message Queue 4 で修正されたバグ3

バグ 

説明 

6634033 

クライアントが作成されたときに、クラスタプロトコルが imqConsumerFlowLimit の値をリモートブローカに伝達しません。

6713012 

リモートブローカの再起動と同時に、クラスタ内のブローカでコンシューマを破棄すると、一部のメッセージが配信されない場合があります。 

6727555 

ブローカのログメッセージ「Max bytes per msg exceeded」が実際のメッセージサイズを表し、max bytes per message の値と入れ替わっています。

6737404 

JMX メトリックは、送信先 (トピックおよびキュー) からディスパッチされているが、まだコンシューマに配信されていないメッセージの数を示す必要があります。 

6740568 

単一のトランザクションで消費されたメッセージが多すぎると、ブローカが例外をスローします。 

6758524 

永続サブスクリプションを一覧表示するコマンド (imqcmd list dur -d "foo.*") で、送信先名にワイルドカード文字を使用できません。

6758952 

imq.portmapper.hostname=localhost を設定すると、ブローカがクラスタ内に接続できなくなります。

6758817 

imq.cluster.hostname=localhost (非推奨) を設定すると、別のマシンのブローカがクラスタ内に接続できなくなります。

メッセージキュー 4.2 で修正されたバグ

次の表に、メッセージキュー 4.2 で修正されたバグを示します。

表 1–9 Message Queue 4.2 で修正されたバグ

バグ 

説明 

6581592 

インストーラまたはアンインストーラがテキストモード (installer –t ) で実行されているときは、「概要」画面にログファイルまたは概要ファイルを含むディレクトリが表示されますが、これらのファイルの名前のリストは表示されません。

6585911 

インストーラにバンドルされている、インストーラの実行に使用する JRE が、インストーラの「JDK の選択」画面に正しく表示されません。 

6587112 

複数バイトロケールで、インストーラの「概要」画面に無意味な文字が表示されます。 

6587127 

回答ファイルを参照して (installer -a filename -s) インストーラを実行するときに、回答ファイルが存在しない場合、矛盾した不明瞭なエラーメッセージが表示されます。

6590969 

クライアント接続認証で、DN ユーザー名形式が許可されます。 

6594381 

Message Queue 4.1 ローカリゼーション RPM のインストール (「多言語パッケージ」画面で「Message Queue 多言語パッケージのインストール」チェックボックスにチェックマークを付けた場合に実行される) は、古いバージョンの Message Queue ローカリゼーション RPM がシステムに存在すると、異常終了します。 

6599144 

Message Queue 4.2 のアンインストール時に、Java SE 6 ではスプラッシュ画面とアンインストーラがハングアップして空のグレー画面になりますが、Java SE 5 では正しく動作します。  

6615741 

ロールバックの前に元のコンシューマが閉じられると、ロールバックされたトランザクションコンシューマセッションで配信されたメッセージは再配信されません。 

6629922 

分散トランザクションハンドラは、非アクティブなコンシューマ に正しい順序でメッセージを再配信しません。 

6635130 

送信先のメモリー制限またはメッセージ制限に達したために一時停止された後、ブローカは、非持続メッセージのプロデューサに 生成を再開するように通知できません。 

6641117 

ロールバックの後に元のコンシューマが閉じられると、ロールバックされたトランザクションコンシューマセッションで配信されたメッセージは再配信されません。 

6683897 

設定が正常に完了したように見える場合でも、Message Queue インストーラの概要画面に設定エラーが報告されます。インストーラは、一部のコンピュータの /dev/sterr に書き込むことができません。

6684069 

コンシューマトランザクションで多数のメッセージがリモートクライアントに配信されるブローカクラスタで、トランザクションのコミットに障害が発生します。 

6688935 

Portmapper の読み取りのタイムアウトが短すぎます。 

6695238 

C クライアントアプリケーションは、パスにスペースが含まれている場所にインストールされたブローカに接続できません。 

6710168 

送信先が再開されないまま 2 回続けて一時停止されると、コンシューマはメッセージを消費しなくなります。 

6710169 

JMX 操作 ConsumerManagerMonitor.getConsumerInfo は、通知モードでは常に SESSION_TRANSACTED を返します。

メッセージキュー 4.1 で修正されたバグ

次の表に、メッセージキュー 4.1 で修正されたバグを示します。

表 1–10 Message Queue 4.1 で修正されたバグ

バグ 

説明 

6381703 

処理されたリモートメッセージが、そのメッセージの発信元のブローカが再起動された場合に、2 回コミットされることがあります。 

6388049 

未完了の分散トランザクションをクリーンアップできません。 

6401169 

imqcmd のコミットおよびロールバックオプションで、確認のプロンプトが表示されません。 

6473052 

自動作成されたキューのデフォルトはラウンドロビンであるべきです。(MaxNumberConsumers = -1)。

6474990 

ブローカのログに、imqcmd list dst コマンドに対して ConcurrentModificationException が示されます。

6487413 

LimitBehavior が REMOVE_OLDEST または REMOVE_LOWER_PRIORITY のときに、メモリーがリークします。

6488340 

ブローカがスピンし、クライアントは確認に対する応答を待機します。 

6502744 

ブローカが、デッドメッセージキューのデフォルト制限 (1000 のメッセージ) を尊重しません。 

6517341 

クライアントが拡張ブローカクラスタへ接続している際の、再接続ロジックを、imqReconnectEnabled プロパティーの値に関係なく再接続を可能にするように改善すべきです。

6528736 

起動時に Windows 自動起動サービス (imqbrokersvc) に障害が発生します。

6561494 

両者が 1 つのセッションを共有していると、メッセージが間違ったコンシューマに配信されます。 

6567439 

PREPARED トランザクションの生成メッセージがブローカの再起動後にコミットされた場合、それらのメッセージは順序どおりに配信されません。

メッセージキュー 4.0 で修正されたバグ

次の表に、メッセージキュー 4.0 で修正されたバグを示します。

表 1–11 メッセージキュー 4.0 で修正されたバグ

バグ番号 

説明 

4986481 

メッセージキュー 3.5 では、自動再接続モードでの Session.recover の呼び出しがハングすることがありました。

4987325 

Session.recover の呼び出し後に、再配信されたフラグは再配信されたメッセージに対して false に設定されました。

6157073 

新しく接続メッセージが変更され、接続の合計数のほかにサービス上の接続数も表示されるようになりました。 

6193884 

メッセージキュー は、メッセージに非アスキー文字を使用するロケールで文字化けメッセージを syslog に出力します。 

6196233 

JMSMessageID を使用したメッセージ選択が機能しません。

6251450 

クラスタのシャットダウン時、 connectList に ConcurrentModificationException が発生します。

6252763 

java.nio.HeapByteBuffer.putLong/Int に java.nio.BufferOverflowException が発生します。

6260076 

Oracle ストレージを使用すると、起動後に発行される最初のメッセージが遅くなります。  

6260814 

JMSXUserID 上のセレクタ処理が、常に false と評価されてしまいます。

6264003 

キューブラウザにコミットされていないメッセージが表示されます。 

6271876 

消費されていないメッセージを含むコンシューマを閉じようとすると、接続フロー制御が正しく動作しなくなります。 

6279833 

メッセージキュー では、2 つのブローカが同じ JDBC テーブルを使用することはできません。 

6293053 

システム IP アドレスが変更された場合、—reset store を使用してストアをクリアしていないと、マスターブローカが正しく起動しません。

6294767 

メッセージキュー ブローカがネットワークソケットを開く場合、そのネットワークソケット上に SO_REUSEADDR を設定する必要があります。

6304949 

TopicConnectionFactory に ClientID プロパティーを設定することができません。

6307056 

txn ログがパフォーマンス上のボトルネックになっています。

6320138 

メッセージキュー C API では reply-to ヘッダーからキューの名前を決定することができません。  

6320325 

Solaris 上に JDK 1.4 と JDK 1.5 の両方がインストールされている場合、ブローカが JDK 1.5 より前に JDK 1.4 を検出してしまうことがあります。  

6321117 

マルチブローカクラスタの初期化で java.lang.NullPointerException が発生します。

6330053 

サブスクライバからトランザクションをコミットしている場合、JMS クライアントで java.lang.NoClassDefFoundError が発生します。

6340250 

C-API で MESSAGE タイプをサポート。

6351293 

Apache Derby データベースへのサポートを追加。