CA APMテクニカルアドバイザリ:-javaaventを使用した際のIBM Java 1.6におけるネイティブ メモリ リーク

Document created by Takeshi_Matsushima Employee on Jun 30, 2015
Version 1Show Document
  • View in full screen mode
文書番号JTEC001347
製品名Introscope Agent
バージョンALL
OSALL

 


 

◆ 概要

IBM Java 1.6において、管理下のアプリケーションで深刻なネイティブメモリオーバヘッドが発生するという潜在的な問題が見つかりました。本テクニカルアドバイザリでは、影響を受けるバージョンとプラットフォームについて詳しくお伝えするとともに、推奨する対応策についてご説明いたします。

 

◆ 障害概要

CA Introscopeエージェントが推奨する-javaagentオプションを使って監視を行うと、IBMのJava 1.6を実行しているアプリケーションで深刻なメモリオーバヘッドが発生します。これはJVMで発生するメモリリークによるもので、最終的にアプリケーションはメモリを使い果たします。メモリリークは最大ヒープサイズ(-Xmx)の設定に関係なく発生します。この問題はまた、-javaagentを使用している最中にAutoprobeインスツルメンテーションが無効化された場合にも発生します。

これはIBM JVMでのオブジェクトのファイナライズ機能に特有の問題です。この問題についての詳細は、IBMのウェブサイト(http://www-01.ibm.com/support/docview.wss?uid=swg1IZ99243)でご確認いただけます。


◆ 影響範囲

  • これはベースとなっているJVMの問題に起因するものであり、そのためIntrosopeエージェントの全バージョンが影響を受けます。
  • IBM JDK 1.6 SR9以前のバージョンをお使いで-javaagentオプションを使用されているお客様に影響があります。


以下の場合、本問題は発生しません。

  • IBMのJVM以外のプラットフォームでIntrosopeエージェントを使用している場合
  • 使用しているIBM JDKが1.6 SR10以降の場合
  • エージェントの展開に、-javaagentではなくAutoProbeコネクタ(-Xbootclasspath)を使用している場合

 

◆ 回避策

  • IBM社より、JDKのパッチが提供されています。
    http://www-01.ibm.com/support/docview.wss?uid=swg1IZ99243
  • 一時的な回避策として、AutoProbeコネクタ(-Xbootclasspath オプション)を使用してブートストラップクラスパスに展開するようにしてください。この回避策はあくまで暫定的な対応であり、本問題を解決するためには、IBMの公式パッチを入手されることを推奨いたします。

Attachments

    Outcomes