ナビゲーションをスキップ

リリース ノート

  前 次 前/次ボタンと目次ボタンとの区切り線 目次  

BEA JRockit 1.4.2 SDK リリース ノート

バージョン 1.4.2_08 R24.5.0

このドキュメントには、このバージョンの BEA JRockit 1.4.2 SDK に関する重要な詳細情報が含まれています。内容は以下のとおりです。

 


ライセンス契約

BEA JRockit 1.4.2 SDK は BEA JRockit バイナリ ライセンス契約の条件に従っています。

 


プラットフォーム サポート

このリリースは「BEA JRockit でサポート対象のコンフィグレーション」に示されているプラットフォームで動作確認されています。

 


インストール

BEA JRockit 1.4.2 SDK は、WebLogic Platform 8.1 スイート (Service Pack 3 以上) の一部として使用することも、スタンドアロン アプリケーションとして使用することもできます。スタンドアロンの JRockit アプリケーションをインストールする手順については、『BEA JRockit 1.4.2 インストール ガイド』を参照してください。

 


BEA JRockit のバージョン番号

このバージョンの BEA JRockit SDK には、Java 2 Platform, Standard Edition, v 1.4.2_08 に準拠した BEA JRockit JVM Version R24.5.0 が含まれています。BEA JRockit のバージョン番号表記は 1.4.2_08 R24.5.0 です。

 


ドキュメント

このリリースの BEA JRockit SDK には、以下のドキュメントから成るドキュメント セットが含まれています。

また、以下のような Web のみのドキュメントもあります。

BEA JRockit 1.4.2 SDK のすべてのドキュメントは次の URL で参照できます。

http://edocs.beasys.co.jp/e-docs/wljrockit/docs142/index.html

 


新機能

これらの新機能とその他の機能の詳細については、『BEA JRockit 1.4.2 SDK の紹介』の「BEA JRockit 1.4.2 SDK の新機能」を参照してください。

1.4.2_08 R24.5.0 の新機能

新機能はありません。

1.4.2_05 R24.4.0 の新機能

1.4.2_04 R24.3.0 の新機能

 


最新の変更点

この節では、BEA JRockit の最新の変更点について説明します。

1.4.2_08 R24.5.0 での変更点

表 1 に、このリリースでの変更点を示します。

表 1 1.4.2_08 R24.5.0 での変更点

変更要求 ID

説明

CR188112、CR203172、CR210772、CR212228、CR223211

BEA JRockit と Sun Hotspot とのプロパティの違いがなくなりました。これらの変更の詳細については、「システム プロパティの変更点」を参照してください。

CR192114

BEA JRockit の以前のバージョンでは、起動パラメータとして複数の -Xmanagement:class オプションを使用することができませんでした。このサービス パックで、これが可能になるように機能強化が行われました。

CR193488

java.util.logging.LogManager のコンストラクタ内で java.util.TimeZone.getDefault() を呼び出すと、"java/lang/UnsatisfiedLinkError: getSystemTimeZoneID" を発生させる可能性があります。

CR195355

Red Hat Enterprise Linux 3.0 での mmap システム コールの実装は、仮想アドレス空間内の最下位ページ (0x00000000 から始まる) をマッピングし、このページへのアクセスが試みられると、それを遮断して、SIGSEGV を生成しました。たとえば、JRockit の Null ポインタ例外や強制ダンプ。この問題は、Null ポインタ メモリ領域をアクセス不能としてマークすることで解決されました。

CR196799

initialize を true に設定して Class.forName を呼び出した場合、前にこのパラメータが false に設定されていると、JRockit がクラッシュします。この問題は修正されています。

CR196953

32 ビット アーキテクチャにおいてコマンドラインで -Xmx4g を指定した場合、実際のヒープ サイズは指定したものより少し小さくなっていました。このリリースでは、そのような状況が起きたときは警告が出力されます。

CR199462

IA64 Linux 2.6 ベースのシステムで実行しているときに BEA JRockit がクラッシュした場合、クラッシュ ダンプに出力されるスタック トレースは不完全なものになっていました。スタック トレースが完全なものになるように、製品が修正されています。

CR201407

SIGBUS 状況でのダンプの処理が改善されました。

CR201837

OptimizeIt のコード カバレッジを使用して WLS 81 SP2 および JRockit を実行した場合、セキュリティ プロバイダで Null ポインタ例外が送出されました。この問題は修正されています。

CR204907

NIO ダイレクト バッファを過剰に割り当てる (たとえば、ByteBuffer.allocateDirect()) アプリケーションは、メモリ不足の状況下で偶発的なクラッシュを発生させていました。

ダイレクト過剰割り当てを防止するために -XXMaxDirectMemorySize = <bytes> という新しいオプションが追加されました。これで、より整然とした java.lang.OutOfMemoryError: Direct buffer memory が与えられるようになります。-XXMaxDirectMemorySize 限界に到達すると、パフォーマンスに悪影響があります。

CR204924

FileChannel.read(ByteBuffer dst, long position) はファイルの終わりで -1 を返しません。この問題は修正されています。

CR205415

gencon ガベージ コレクタでの変数メモリ リークが修正されています。

CR206249

FileInputStream.skip での負の相対オフセットが有効になりました。

CR206352

-Xmanagement を指定して実行した場合、SLES9 でスレッド単位の CPU 使用率を測定するという問題がありました。この問題は修正されています。

CR206974

Linux 2.6 ベースのシステムで実行しているときに BEA JRockit がクラッシュした場合、クラッシュ ダンプ コードが読み取り禁止メモリから読み取ろうとしたかどうかに関係なくクラッシュ ダンプが打ち切られていました。クラッシュ ダンプ コードが読み取り禁止メモリを処理できるようになったので、完全なクラッシュ ダンプを生成できる可能性が高くなりました。

CR207466

空の jar ファイルを持つ WLS に war をデプロイした場合、OutOfMemoryError が送出されていました。空の zip ファイルを開こうとすると、IOException: Zip file is empty が送出されるようになりました。

CR207941

WLS 8.1 SP3 - socket.setNetworkInterface(netInterface) を呼び出すと、JRockit がクラッシュします。この問題は修正されています。

CR208575

Itanium 上の Windows Server 2003 SP1 で BEA JRockit が起動に失敗することはなくなりました。

CR208909

MulticastSocket.joinGroup(SocketAddress, NetworkInterface) が機能するようになりました。

CR209140

一部の顧客から、サーバを起動しようとすると、起動時のコード生成段階でサーバがハングすることがあるという報告がありました。再処理を使ってコード生成の前にクラスを事前解決することで、この問題は解決されています。

CR211041

メモリ リーク ツールを実行しても、singlecon ガベージ コレクタを使用していると、「points-to」情報が表示されませんでした。この問題は修正されています。

CR211941

オブジェクトを返すか同期化されるメソッドについては、JNI フレームに欠陥がありました。この問題は修正されています。

CR212375

ガベージ コレクタ (mmGetObjectSize) でのクラッシュが修正されています。

CR214100

16Mb を超える byteArray が与えられた String への変換は java.nio.BufferOverflowException を引き起こします。この問題は修正されています。

CR214493、
CR216259

ObjectMonitor で検出された Java リークが修正されています。

CR214904

一部の顧客から、Linux AS 3.0 上で負荷の高い状態で BEA JRockit 1.4.2_04 を実行して、ネイティブ スレッドとパラレル ガベージ コレクタを使用しているとき、ソケット例外が発生するという報告がありました。このサービス パックで、ソケット読み取りおよび書き込みへの同期化を追加することで、これらの例外は修正されています。

CR215827

Xusage.txt-X オプションがさらに追加されました (java -X 出力)。

CR215830

-Xrs オプションが追加されており、-Xnohup として解釈されます。

CR216628

BEA JRockit 上で WebLogic Server と 15,000 jsp ページを実行しようとしたときにネイティブ メモリが不足していました。この問題は解決されています。

CR220413

JRockit は java.lang.ClassLoader 内の親フィールドが変更されるのを防ぐようになりました (ネイティブ構造リサイクルのために、JRockit はこれに依存しているからです)。

CR223299

内部 ZipFileP が zip クローズ時に解放されるにもかかわらず、まだ ZipInputStream によって参照されていて使用されていると、BEA JRockit がクラッシュしていました。この問題は、入力ストリームにネイティブ データが入っていないようにすることで解決されています。

CR223967

アプリケーション プログラムが高い同時実行レベルにおいて Thread.wait()NullPointerException を受け取らなくなりました。

CR224233

ダンプ動作が改善され、クラッシュ時に確実にクラッシュ ファイルが生成されるようになりました。

CR224673

BEA WebLogic JRockit(R) から BEA JRockit(R) にすべての参照が変更されました (「システム プロパティの変更点」も参照してください)。

CR224844

インデックス値 0 で Java の非 NULL 配列にアクセスしても、NullPointerException が送出されることはなくなりました。

CR225142

java.vendor* システム プロパティへの変更が元に戻されています (「システム プロパティの変更点」も参照してください)。

CR225405

JRockit はコマンドライン スイッチの短縮形を受け付けなくなりました。

CR228112

Linux 環境における caFPUPushExtendedDouble でのクラッシュが修正されています。

CR229176

apache-xalan xml/xslt 変換を使用したとき希に起こるエラーが修正されています。Xalan は BEA JRockit 内で不適切な動作をトリガしたスワップ バイトコード (javac ではめったに使われない) を使用します。

この問題は次の URL でも追跡されていました。http://issues.apache.org/jira/browse/XALANJ-1778

CR229549

JRockit は異常な追加データのある zip ファイルでクラッシュしなくなりました。

CR229722

Itanium 上の Windows Server 2003 SP1 でスタック オーバーフロー時に JRockit はコア ダンプを行わなくなりました。

CR231193

最適化再帰問題によってスタック オーバーフローが発生することがありました (たとえば、computeDomFrontiers における再帰的呼び出しスタックでのクラッシュ ダンプ)。この問題は修正されています。

CR232187

クラスでシリアル バージョン UID を静的フィールド内で定義し、シリアル バージョン UID を静的イニシャライザでも参照した場合は、ObjectStreamClass.lookup() がハングすることがありました。SUN バグ 4803747 は修正されています。

CR234462

JRockit Runtime Analyzer をサポートしていた旧バージョンの BEA JRockit では、期限切れの jrockit.license ファイルがあって、JRA 記録を開始しようとした場合、何の通知もなく JRA 記録が失敗していました。このような状況では、新たに情報エラーメッセージが出力されるようになりました。

CR234711

JRockit は pthread_create も利用している C プログラムとリンクできるようになりました。

CR235032

BEA JRockit 1.4.1 にあった一部のオプションが、BEA JRockit 1.4.2 では利用できなくなりました。これらのオプションについては、「BEA JRockit 1.4.1 と 1.4.2 の間での変更点」を参照してください。

CR235315

スレッドで同期化し、System.exit を実行しようとすると、システムがハングすることがありました。停止シーケンス時の不必要なロックを取り除き、正常に停止を行えるようにしました。

CR235819

ある種の境界チェックの後、ソース配列からデスティネーション配列への memmove() が発生します。その memmove() が、ガベージ コレクタまたはヒープ圧縮でオブジェクトを移動しているときに発生した場合、BEA JRockit はポイントしているオブジェクトを移動した後、ポインタの更新前に、ポインタをコピーすることがありました。その場合、誤ったポインタがコピーされることになり、VM クラッシュを引き起こします。この問題は修正されています。

CR236917

getMethod()getMethods() の Sun JDK での実装と JRockit での実装の違いが解消されました。


 

システム プロパティの変更点

この節では、このサービス パックでシステム プロパティに行われた変更を、関連するプラットフォームと変更要求別に説明します。これらの変更の目的は、BEA JRockit のシステム プロパティと Sun の JDK で使われているシステム プロパティとの間の相違点を解消することにありました。

すべてのプラットフォーム (Windows 32 ビットおよび 64 ビット、Linux 32 ビットおよび 64 ビット)

この節では、すべてのプラットフォームで有効なシステム プロパティへの変更を説明します。

CR203172 に基づいた変更

CR224673 に基づいた変更

CR223211 および CR203172 に基づいた変更

Windows プラットフォーム (Windows 32 ビットおよび 64 ビット)

この節では、Windows 32 ビットおよび 64 ビット プラットフォームでのみ利用できるシステム プロパティへの変更を説明します。

CR203172 に基づいた変更

CR203172 に基づいた変更

Linux プラットフォーム (linux32、linux64)

このバージョンの BEA JRockit には、Linux 固有のシステム プロパティへの変更は含まれていません。

1.4.2_05 R24.4.0 での変更点

表 2 に、BEA JRockit 1.4.2_05 R24.4.0 の変更点を示します。

表 2 1.4.2_05 R24.4.0 での変更点

変更要求 ID

説明

N/A

ファット ロックの待機を無効にする非標準のチューニング オプションが -XXdisableFatSpin に変更されています。

CR125647

ブラウザ内から Java Plug-in を通じてスレッド リストをダンプしても、ブラウザが停止しません。

CR128853

システム プロパティが Hotspot とは異なります。

CR129229

Netscape 7.1 および Mozilla 1.5 での Java Plug-in には libgcc_so.1.so が必要です。

CR131705

Windows 上で BEA インストーラが起動時に十分な起動条件があるかチェックできません。

CR134874

PortalFramework ブックをページ配列に追加するときの ArrayStoreException。配列格納チェックで < を > に変更することで修正されています。

CR172057

hprof とサンプリングを有効にして実行している場合、デッドロックによりアサートします。

CR172574

欠けていた JNI サポート (jawt および jvm のインクルードとライブラリ) を含めました。

CR173561

ナーサリ内の空きメモリ量が正しく報告されないことがあり、JRA 記録が解析の時点で失敗しました。

CR174135

Windows 上で、Win32 pipe.readv/writev が、IOVEC のエントリ n が完全に空または一杯になっていない場合はエントリ n+1 の読み書きを行わないという取り決めに違反したときに発生する IOException

CR174583

オプティマイザが空のループを誤って削除します。

CR175303

コンソールにおけるユーザビリティの問題。Notification Rule Wizard の [Select Trigger] ページで、複数のトリガの制限を表す単位が明瞭でありません。また、[Memory] タブでは、ヒープ サイズを表すテキストのフォントがこのページの他の部分のテキストと異なっています。

CR175304

元のストリームで IOException が発生すると、PipeLeftOverInputStream でデータが失われます。

CR175608

非同期の例外により浮動小数が影響を受けます。

CR175612

win64 上で Ctrlhandler memdump が誤った結果を報告します。

CR175773

Linux ビルド用 Xusage.txt での不可解なホワイトスペースの相違。

CR175779

パラレル コレクタの場合、JRA は GC-backtrace を表示しません。

CR176464

クラッシュ ダンプで、コンテキスト構造体のアドレスを出力します。

CR176476

-Xgc:gencon を指定した suse64 上で、ガベージ コレクション テスト中の OOME。

CR176729

クライアント モードのデフォルト ナーサリ サイズが、ドキュメントとコードの実装とで異なっています。

CR176741

java.io.FileNotFoundException メッセージでマルチバイト文字が誤って表示されます。

CR177194

Linux 用の BEA インストーラでは、インストール中止後にすべてのファイルを消去しません。

CR177326

ディレクトリに対して FileNativeIO.open を実行するとファイル ハンドル リークが引き起こされます。

CR177515

JCK テストの実行時にエラー コードがないとアサーションが失敗します。

CR178207

SysconfCrash: ダンプ中、linux 上の CPU 数を出力するときにクラッシュします。

CR178359

依存関係チェックが足りないために、スタックの依存に関する問題が発生します。

CR178567

/proc にアクセスできないときに JRockit がクラッシュします。

CR178772

BEA jre インストーラ (サイレント モード) は、パスにスペースが含まれているとインストールに失敗します。

CR178774

win2003_ia64 上で BEA sdk インストーラが jar ファイルを開けません。

CR178796

Management Console で、[Processor] チャートに 100% の CPU 負荷が表示されません。

CR179005

浮動小数点の変数が溢れた場合に上書きします。

CR179100

Xusage.txt には 80 文字より長い行があります。

CR179217

複数のスレッドがクラッシュ時に abort() を呼び出せるため、ダンプが不完全になります。

CR179223

8k のナーサリを指定して起動できるようになりました。

CR179435

パラレルのマーキング中に、無理に回避すると不正なクラス ブロック上でクラッシュします。

CR180681

アンチ エイリアシングのグラフは、リモート X 接続を介して使用できません。

CR180864

スレッド スタックが使用できなくなった場合、スレッド スタックから保護ページがリークすると、OutofMemoryException を送出しようとします。例外送出用のコードを生成しようとすると、クラッシュします。クラッシュの種類はいくつかありますが、すべてのクラッシュは、JVM で malloc を行うためのメモリが不足した結果発生したものと考えられます。

CR181302

呼び出されたメソッドで、スタックの浮動小数パラメータが壊れていると、矛盾が発生します。

CR181771

Class.getMethod は、インタフェースに関する例外を誤って送出することがあります。インタフェース内の重複メソッドを検索する際の問題。

CR182008

SMP マシンでのロックの競合に関する java ロック コードが書き直されて、ロックが激しく競合する場合のパフォーマンスが改善されました。サポートされていない -XX ロック フラグが変更されたことに注意してください。

CR182014

JNI - FindClass(NULL) によりダンプが発生します。

CR182214

環境変数 _JAVA_OPTIONS は Sun の JVM では機能しますが、BEA の JVM では機能しません。

CR182835

ビット セット外の書き込みが原因で発生する、ネイティブ コードでの Null ポインタ例外。

CR183047

POSIX 上でコードキャッシュが誤った idx-file を読み込むために、データをまったくロードしません。

CR183981

JRockit がソケットの接続タイムアウト値を無視します。

CR184314

-Xmanagement は Resin 3.0.7 では機能しません。

CR184513

致命的な終了時に表示される便利な情報の追加。

CR185170

-Djava.util.prefs.SystemRoot.location=system を設定して BEA インストーラを使用しても、.systemPrefs ディレクトリがまだ JAVAHOME に置かれています。

CR185273

非仮想化を取り消すコードパッチは安全ではありません。

CR186166

保護された JRockit 機能 (JRA やメモリ リークなど) に対するライセンス システム。

CR187216

Direct-X-Buffer.put(..) でのタイプミス。

CR187927

JRockit 81SPx - JRockit での JNI コードのエラー。

CR188046

JRockit のコンソールと JRA の JFree ライブラリを置き換えました。

CR188132

ガベージ コレクションにおけるスレッド スタックでのランダムなハング。ガベージ コレクション中に送出された例外をクリアしないために発生します。

CR188225

JRockit のテキスト ダンプで glibc の ID 情報を出力します。

CR188226

Windows 上で Xusage.txt 内に削除されていない空白行が見つかりました。

CR188272

JVM が codegen コードでクラッシュします。メソッドが生成されて、同時に例外構造体を再割り当てする必要がある場合、他のスレッドが古い例外ポインタにアクセスすると、空きメモリから読み込む際に 2 番目のスレッドがクラッシュする可能性があります。

CR188932

コンソールの comm プロトコルのサーバサイドを更新して、memleak をサポートするようにしました。

CR189369

1.4.2_05-fcs へのアップグレード。

CR189490

JRockit: Windows サービス停止中のエラー。JRockit は「beasvc.exe で問題が発生したため閉じる必要がある」という意味の NT ダイアログを返します。コンソール ウィンドウには「System error 109 has occurred. The pipe has been ended」というエラーが出力されますが、ダイアログがハングします。

CR189969

IA64 上で Method.invoke() を使用するときに 8 個を超える引数を指定すると、誤った引数値がいくつか引き渡されることがあります。もっと正確に言うと、基本型で 64 ビット未満のサイズの 9 個以上の引数。

CR190677

スレッドの競合が原因でプロセスに割り込みが入ったことを見逃す場合があります。

CR190791

JRA GC グラフではほとんどのチャート領域が表示されます。

CR190877

Hotspot では beanshell を併用できますが、JRockit ではできません。

CR190946

Codehaus Groovy スクリプトを実行しようとすると、org.codehaus.groovy.classgen.RuntimeIncompleteClass-
Exception
が発生します。

CR191000

ia32 での lir2native に関する複数の問題。

CR191750

HIR2MIR 値のナンバリングでバッファ オーバーランが発生し、誤った結果になる可能性があります。

CR191917

rhs が長すぎるときに数値の右シフトで -XXpreopt が失敗します。

CR192446

NewStringUTF() は UTF8 文字の配列から java.lang.String オブジェクトを生成します。0x7f (0x80 - 0xff) 以降のエンコーディングで記述された拡張の処理方法は指定されていません。これらの文字は、latin-1 と同時に発生しますが、見過ごされます。

CR192918

Management Console の永続性はヘッドレス モードでは機能しませんでした。データを記録し、後でグラフィカルなコンソールを実行しないで参照できるように、現在は機能します。

CR193722

メモリ リーク検出システムの設定と競合するため、oomdiagnostics=true の場合にダンプが発生します。

CR193894

ディスプレイのないシステムで Management Console をヘッドレス モードで実行する場合は -Djava.awt.headless=true と設定する必要もありました。ヘッドレス モードで実行する場合の AWT への依存がなくなりました。

CR194163

Management Console を使用するときに java.util.Properties でランダムなデッドロックが発生します。

CR194182

デバッグ中に NPE が送出されると JRockit がクラッシュします。

CR194298

IA-32 Windows では java ヒープ サイズを 1574304KB より大きくすることができません。java.dll および verify.dll ファイルはそれぞれ 1.4.1 と 1.4.2 に基づいており、別々にロードされたものです。ヒープ サイズには連続したメモリが必要なため、プロセス メモリ内のこれらのファイルの位置によってヒープ サイズが制約されていました。ファイルは、ヒープの割り当てとヒープ サイズへの影響が最小限になる場所に再配置されました。

CR194539

RHEL 3.0 では、hugemem カーネルで 2.9GB より大きな Java ヒープを確保できません。

CR194953

以前のリリースの JRockit には使用可能な jvm.lib が付属していませんでした。

CR195293

jchars_eq_istr のネイティブ コードでの Null ポインタ例外。

CR195903

コード生成時のメモリ割り当てに時間がかかります。

CR195905

Red Hat AS3.0 (アップグレード 2) での JRockit のダンプ。-Xdebug モードで、ArrayOutOfBoundsException を送出する場合、java の最初の有効な場所を指すように eip を設定します。

注意 : プロダクション環境では -Xdebug オプションを使用しないでください。

CR196789

JNI_OnUnload からの (*env)->FindClass() でクラスが見つかりません。

CR197011

hir2mir in で有効な範囲を拡張できないことを確認すること。

CR197200

値のナンバリングでのバグにより Management Console を実行できません。

CR197368

クラッシュ ダンプが makecontext を使用します。makecontext は int 型の引数のみ設定できます。

CR197592

RH3.0 (アップグレード 2) /IA64 における統合 bvt テストでの JRockit コア ダンプ。

CR198330

JRockit Management Console で「Time in GC」が正しく登録されません。

CR198550

新しくロードされたクラスが、共通のスーパー クラスからロードされた他のクラスのメソッドを再実装する場合、メソッド呼び出しを再仮想化するとクラッシュが発生します。

CR199161

GNU Lesser General Public License の条件で配布され、JRockit Management Console で使用された 2 つのグラフィック ライブラリ (JCommon と JFreeChart) は、GreyChart で置き換えられています。GreyChart は、BSD スタイル ライセンスの条件で配布されたオープン ソースのグラフィック ライブラリです。

CR199200

ライセンス システムがライセンス ファイルを見つけられません。

CR199650

JRockit がメモリをさらに (Java ヒープの外で) 割り当てようとして失敗したためにメモリ メッセージが出力された場合、JRockit の動作について報告して適切な対応を提案します。

CR199651

JMAPI が GC イベント通知の配信に失敗します。

CR199682

Sun JDK から直接コピーされないペイロード ファイルに対するファイル パーミッションを明示的に設定します。

CR200247

JRockit プロセスが JVMPI プロファイラ (optimizeit および jprobe) でクラッシュします。

CR200303

国際文字名のフィールドを持つクラスの場合、SerialVersionUID が正しくありません。

CR200313

Linux 64 上でクラッシュします。可能な場合は mmap/munmap の代わりに mprotect を使用すると、クラッシュしなくなり、保護ページのリークを防ぐことができます。

CR200320

Win64 は、コンパイラの変更またはコンパイラの設定変更が原因で、javax/imageio/stream/MemoryCache.disposeBefore でクラッシュします。一部のネイティブ (vm) コードでは、従来は扱っていなかった NAT ビットを使用するようになりました。

CR200475

誤って含まれていた man ページ (man/man1/javaws.1) を linux64 から削除。

CR200484

JRA の暗号化を削除。

CR200487

「console」の他に、Management Console のランチャ「jrcc」を追加。

CR200703

javaws、zh_CN.GB2312 および Red Flag でのインターナショナライゼーションの問題 (たとえば、フォントの問題が原因で Red Flag ではアジアの文字が正しく表示されません)。正しいフォント ファイルを追加して問題を修正しました。

CR200727

単発のパッチを作成 : 国際文字名のフィールドを持つクラスの場合、SerialVersionUID が正しくありません。

CR200731

libnative_chmod.so を実行可能にする必要があります (755)。

CR200746

SUSE LINUX における、200703 と同様の問題。

CR201175

ガベージ コレクションのマーク フェーズ中に行われるオブジェクトのスキャニングでは、初期化されていないクラスを扱えません。

CR201418

古くなった RPM バージョン 3.0.6 を使用する SUSE LINUX ES8 上で、JRockit がビルドまたはインストールを適切に行いません。

CR202425

メソッドのコード最適化中、ロック領域の削除が完了していない場合にクラッシュします。

CR203604

新しい Java ロック コードにおけるリグレッション エラー。

CR205071

インストーラで表示される JRockit EULA (エンド ユーザ ライセンス契約) を変更。再配布を可能にするために JRockit EULA を変更しました。

CR205354

複数の古い領域のコレクションを連続して行うと、ガベージ コレクションの理由として「promotion failed」と表示されました。これは表示されるべきではありません。「promotion failed」というシグナルを設定からはずしそこねました。

1.4.2_04 R24.3.0 での変更点

表 3 に、BEA JRockit 1.4.2_04 R24.3.0 の変更点を示します。

表 3 1.4.2_04 R24.3.0 での変更点

変更要求 ID

説明

CR121049

java.lang.LinkageError の送出時、JRockit が状況によってはクラッシュすることがあります。

CR124597

NullPointer、Arithmetic (ゼロによる除算) および ArrayIndexOutOfBounds で Exception.printStackTrace() がスタック トレース情報を生成しません。

CR125239

JRockit による net.dl のロード失敗。

javax.naming.directory API が失敗して java.lang.UnsatisfiedLinkError: no net in java.library.path を返すことがあります。

CR125387

ブロッキングのコンフィグレーションが DatagramChannel.configureBlocking(true) となっているのに java.nio.channels.DatagramChannel.receive(ByteBuffer) を呼び出してもブロックしません。

CR129563

難読化されたバイトコードに関してネイティブ コードを生成するとき JRockit がクラッシュすることがあります。

CR132438

Linux におけるプロセス取得の中断 (Sun Bug 4482614)。

CR137057

最適化のために大量のメソッドを HotSpot サンプリングすると JRockit がクラッシュすることがあります。

CR136236

大量の JSP をコンパイルしているとき JRockit がクラッシュすることがあります。

CR136462、
CR173177、
CR180853

オブジェクト パラメータを持つ JNI 関数から復帰途中のスレッドについてガベージ コレクタがそのスタックを検査しているとき JRockit がクラッシュすることがあります。

CR172229

Eclipse スクラップブックのコードを実行できません。

CR177403

デバッグ インタフェース JVMDI の実装が改良されました。

N/A

-Xdebug 指定時の起動時間が短縮されました。

N/A

ユーザ およびシステム プリファレンスに対応する Windows レジストリの userRoot および systemRoot の場所が、Sun SDK/JRE で使われているものと同じになりました。java.util.prefs.Preferences API で中間 XML ファイルを介してエクスポート/インポートすれば、JRockit 1.4.2_03 で作成した既存のユーザ プリファレンスやシステム プリファレンスを共通の Sun/BEA JRockit userRoot および systemRoot に移動することができます。

N/A

JMAPI (JRockit Monitoring and Management API) で指定すれば、コード生成時の最適化を無効にできます。

N/A

gencopy (-Xgc:gencopy option) ガベージ コレクション アルゴリズムが廃止されました。代わりのガベージ コレクションの方式については、『BEA JRockit 1.4.2 SDK ユーザーズ ガイド』を参照してください。

N/A

クライアント モード (-client) で 64MB は最大ヒープサイズ (-Xmx) の上限でなくなり、サーバ モード (-server) に適用されるのと同じルールが -client にも適用されるようになりました。詳細については、「最大ヒープ サイズの設定」を参照してください。

 


BEA JRockit 1.4.1 と 1.4.2 の間での変更点

BEA JRockit 1.4.1 では以下のオプションがサポートされていましたが、BEA JRockit 1.4.2 ではもうサポートされていません。

 


確認済みの問題

リリース 1.4.2_05 ~ 1.4.2_08 には次の問題があることがわかっています。

変更要求 ID

説明

CR129229

Linux の Netscape 7.1 と Mozilla 1.5 の Java Plug-in では、別の libgcc ファイルが必要です。Netscape 6 用の Java Plug-in ライブラリには「標準版」のほかに、gcc 3.2 でコンパイルされたものがあります。以下の Sun Java Plug-in インストール ガイド (Linux 用) の注には、こう記されています。

http://java.sun.com/j2se/1.4.2/manual_install_linux.html#note

新しいブラウザ (Mozilla 1.5、Netscape 7.1) では gcc 3.2 でコンパイルした libjavaplugin.so が <JRE>/plugin/i386/ns610-gcc32/libjavaplugin_oji.so に存在する必要があるのに対し、以前のブラウザ (Netscape 7.02) では「標準版」が <JRE>/plugin/i386/ns610/libjavaplugin_oji.so に存在する必要があります。

新しい ns610-gcc32 版で必要なライブラリ libgcc_s.1.so は Red Hat Linux Advanced Server 2.1 にデフォルトではインストールされません。したがって、これらのブラウザを Red Hat Linux Advanced Server 2.1 で使用する場合は、libgcc-3.2-7.i386.rpm をインストールしてこの問題を回避することをお勧めします。

注意 : これは標準外のライブラリであるため、リモートから意に沿わぬ影響を受ける可能性を排除することはできません。

CR135725

JRockit はフォーク時にデッドロックすることがあります。これは JSP をコンパイルするときに発生することがあります。Red Hat Advanced Server 2.1 には、ある確認済みの問題が存在します。詳細は、以下を参照してください。

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=115429

CR175446

ハイパー スレッディングに対応した Intel プロセッサで Linux を使用している場合は、次のことに注意してください。

  • ハイパー スレッディングが有効であることを JRockit が検出できるようにするため、/dev/cpu/X/cpuid (X は CPU 番号) 内のすべてのデバイスをどのプロセスでも読めるようにする必要があります。この情報はほとんどが /proc/cpuinfo から手に入るものばかりなので、これがセキュリティ上の問題になることはありません。

  • デバイスを自動的にロードするためには、/etc/modules.conf ファイルに alias char-major-203 cpuid 行を追加する必要もあります。

ハイパー スレッディングが有効であることを検出しなくても JRockit はハイパー スレッディング対応システムで動作しますが、ハイパー スレッディングに固有の最適化は実行されません。

CR185163

送出された java.lang.ClassCastException のスタック トレースでは状況によって行番号が正しく報告されないことがあります。しかし、例外がどのメソッドから送出されたかは正しく報告されます。

CR199664

SUSE で JRockit は 2GB を超えてマップすることはできません。

SUSE LINUX 8 および 9 で Java ヒープは約 2GB に制限されます。JRockit では Java ヒープの仮想メモリが連続していることが必要です。これらのオペレーティング システムはライブラリを 1GB 境界でロードします。

CR213685

Java スタック トレースは 32 フレームに制限されます。そのため java.lang.StackOverflowError の原因特定が困難になることがあります。

CR244389

RHEL 2.1 は、たとえプロセス サイズが 3GB まで可能であっても、2GB を超えるコア ファイルを生成することができません。JRockit またはサードパーティの JNI コードにおけるバグにより JRockit がダンプを行う際、コア ファイルは OS によって作成されます。コア ファイルは、BEA のサポートとエンジニアリングでクラッシュの原因を突き止めるのに使用されます。したがって、BEA は JRockit プロセスのサイズが 2GB を超えているユーザをサポートすることはできません。

RHEL を新しいバージョンにアップグレードするようお勧めします。

CR248558

Windows Service として WebLogic Server 8.1 SP5 (BEA JRockit 1.4.2_08 (R24.5.0) がバンドルされている) を起動すると、JRockit が起動時にクラッシュします。BEA サポートに連絡してパッチを入手してください。

CR250588

このバージョンの JRockit には、最適化がオン (デフォルト) でアプリケーションが例外を送出した場合にデッドロックを引き起こす可能性のある競合状態が存在します。多数の例外を送出すると、この問題が発生する可能性が高くなります。BEA サポートに連絡してパッチを入手するか、回避策として -Xnoopt を使用してください。

CR252208

BEA JRockit JDK または JRE を Red Flag Linux システムにインストールし、そこにファイル /etc/redhat-release も含まれていて、ロケールが中国語 zh_CN に設定されている場合、BEA JRockit はデフォルトの font.properties.zh_CN ファイルの代わりに Red Hat 固有の font.properties.zh_CN.Redhat ファイルをロードします。そのため、JVM が誤ったパスのフォントをロードしようとしたときに失敗し、予期せぬ動作をする可能性があります。この問題を回避するには、次のいずれかを行ってください。

  • RPM パッケージ redhat-release をアンインストールします。

または

  • font.properties.zh_CN.Redhat の内容を手動で font.properties.zh_CN の内容に置き換えます。

CR261931

JRockit R24 には、シャットダウン時のクラッシュに関していくつかの問題があります。JRockit R26 ではシャットダウンの動作が改善され、これらの問題が修正されました。

CR268423

このリリースは、2006 年のオーストラリアのサマータイム変更に対応していません。BEA サポートに連絡してパッチを入手してください。

N/A

JVM のオプションの中には大文字と小文字が区別されるものがあります。-XXdisableFatSpin など、新しい形式で記述される標準外のオプションがあるので、この点は特に注意が必要です。

N/A

Red Hat Enterprise Linux 4.0 x86_64 の JRockit 1.4.2_05 R24.4.1 は Red Hat Enterprise Linux 4.0 カーネルのバグの影響を受けています。Red Hat Enterprise Linux 4.0 Update 1 を使用しなければなりません。

N/A

Linux で JRockit 1.4.2 を使用している場合は、環境変数 'LD_ASSUME_KERNEL' を定義していないことをまず確認してください。'LD_ASSUME_KERNEL' を定義すると JRockit で以前の低速のスレッド実装が使われるのでメリットがありません。

N/A

JRockit でクラッシュまたはハングがランダムに起こるので、Red Hat または SUSE LINUX に i386 版の glibc をインストールしないでください。JRockit は Red Hat IA-32 の i686 アーキテクチャ用にビルドされた glibc だけをサポートしています。

N/A

リモート X 接続で Java BEA JRockit Management Console を実行している場合は、アンチエイリアス オプションをオフにしないと、コンソールの速度が極端に低下します。

N/A

BEA JRockit の起動時に -Xverbose:memory オプションを指定すると、-Xmx で設定した最大ヒープ サイズのみがシステム メッセージに表示されるようになります。

N/A

以前の 2.6 ベース kernel の Linux/Itanium で BEA JRockit を実行すると、BEA JRockit がハングまたはクラッシュすることがあります。これは、シグナルが間違ったスレッドに送信されることがあるという、sigprocmask() システム コールの深刻なバグが原因です。

この影響を受ける Linux バージョンは、Red Hat Enterprise Linux 4 Update 1 以前、SuSE Linux Enterprise Server 9 SP1 以前、および 2.6.11 kernel ベースのその他のディストリビューションです。Itanium ベースのシステムだけが影響を受けます。

Linux/Itanium で JRockit を使用している場合は、Red Hat Enterprise Linux 4 Update 2 以降または SuSE Linux Enterprise Server 9 SP2 以降にアップグレードしてください。他の Linux ディストリビューションを使用している場合は、kernel 2.6.12 以降にアップグレードしてください。

詳細については、「Red Hat bugzilla #74397」、「SuSE bugzille #78084、または次のリンクを参照してください。

http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a2a64769d0d3cc0380b4b6ecdcb781a2f790a69e


 

 

ページの先頭 前 次