ウイングアーク テクノロジーズ

2007年9月 RDE重要なお知らせの件

対象製品

Report Director Enterprise Ver.3.2 初期版、P1、P2、P3を含む
Report Director Enterprise Ver.3.1
(対象プラットフォーム: Windows版、UNIX版全て)

発生条件と障害内容

Report Director Enterprise(以下RDE)からプレビューまたは印刷を行う時、帳票の様式ファイルと画像イメージファイルの一時ファイルを作成しますが、作成した一時ファイルのファイルディスクリプタが解放されない場合があります。
更にWindows版の場合は、RDEの作業ディレクトリ(※1)に処理対象の様式ファイル( XML ファイル)と画像イメージファイルが残る場合があります。

※1 RDE サーバの作業ディレクトリ
Windows 版: %FIT_PRODUCTS_BASE%\rdjava\data

画像イメージファイルのファイルディスクリプタとRDE作業ディレクトリに一時ファイルが残る件について

発生条件

・RDE Ver.3.2 初期版、P1、P2、P3を含む(svf.jar Ver7.1 Build No. 2006/05/08 以降 ※2)
・RDE Ver.3.1(svf.jar Ver7.0 Build No. 2006/05/08 以降 ※2)
・様式ファイル(.frm または .xml)の設計時に画像イメージファイル(※3)を貼り付けている
  (設計時の下地イメージファイルはプレビュー、印刷には利用されませんので本件とは無関係です。 )
・プラットフォーム、及びJavaバージョンに依存しません。

上記3点の条件を満たした状態でRDEプレビュー、または印刷を行った時に発生します。

※2 svf.jar build 確認方法
Windows版 コマンドプロンプト: java -jar %FIT_PRODUCTS_BASE%\svfjpd\lib\svf.jar
UNIX版 シェル: java -jar $FIT_PRODUCTS_BASE/svfjpd/lib/svf.jar
※3 画像イメージファイルの形式やページ記述言語(プリンタコマンド、機種別言語)には依存しません。

障害内容

帳票データのプレビューまた印刷処理を行う際に際に様式ファイルに貼り付けた画像イメージファイルを一時ファイルとして作業ディレクトリに作成しています。
この時、一時ファイル作成時にファイルを二重にオープンしているため、最初にオープンしたストリームの参照が残ってしまいます。

残ってしまったストリームの参照は Javaガベージコレクションのファイナライザ処理により削除されますが、ファイナライザ処理の実行されるタイミングに依存するため、ストリーム参照が解放されない可能性があります。

更にWindowsで、このケースに該当する現象が発生した場合はRDE作業ディレクトリに画像イメージファイルが残ります。

様式ファイル(XML ファイル)のファイルディスクリプタとRDE作業ディレクトリに一時ファイルが残る件について

発生条件

・RDE Ver.3.1以上RDE Ver 3.2 P3までの全てのバージョン
・Sun Microsystems社Java5.0以降 (Windows、Linux、Solaris ※4)
・様式ファイルがXMLファイル

上記3点の条件を満たした状態でRDEプレビュー、または印刷を行った時に発生します。

障害内容

RDEにて様式ファイル( XML ファイル)を読み込む時、Java 5.0に付属のJAXPを利用しております。
現在 Sun Java 5.0のJAXPによって読み込んだファイルストリームは正しくクローズされない現象が確認されております。

クローズされていないストリームの参照はJavaガベージコレクションのファイナライザ処理により削除されますが、ファイナライザ処理の実行されるタイミングに依存するため、ストリーム参照が解放されない可能性があります。
またWindowsで、このケースに該当する現象が発生した場合はRDE作業ディレクトリに様式ファイル(XMLファイル)が残ります。

※4 Sun Bug Database
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6216226
に該当します。
上記ページでは Closed, fixed のステータスとなっております。
しかし弊社では、最新バージョンのSun JDK5.0 Update12においても現象が再現する事を確認しています。 (2007/09/12 現在)

Java 5.0実装クラス
com.sun.org.apache.xalan.processor.TransformerFactoryImpl
com.sun.org.apache.xalan.transformer.TransformerIdentityImpl
が本件に該当します。

HP社 HP-UX用 Java、及びIBM社 AIX 用 Javaのデフォルト設定では
com.sun.org.apache.xalan.processor.TransformerFactoryImpl
com.sun.org.apache.xalan.transformer.TransformerIdentityImpl
は使用されず
org.apache.xalan.processor.TransformerFactoryImpl
org.apache.xalan.transformer.TransformerIdentityImpl
が使用されておりますので、本件には該当しません。

しかしなんらかの設定等により (HP Javaの場合 $JAVA_HOME/jre/lib/ext よりxalan.jarが削除されているなどの理由で)
com.sun.org.apache.xalan.processor.TransformerFactoryImpl
com.sun.org.apache.xalan.transformer.TransformerIdentityImpl
が使用された場合は、Sun社 Javaと同様の現象が発生します。

対処方法

上記の発生条件を回避する、あるいは弊社提供の修正モジュールの適用が必要です。

提供時期・提供予定

2008/3/24 「RDE重要なお知らせについてのP4パッチの提供について」 ページにてご案内しております。
http://www.wingarc-support.com/support_info/0803-rde0709p4patch/

お問合せ窓口

保守ユーザ様向け専用サイト:http://www.wingarc-support.com
(保守ユーザ様向け専用サイトにログイン後、上部メニューの「お問い合わせ」からご連絡ください)
瑕疵の問題に対するお問い合わせ:https://www.wingarc-support.com/user/defect/index.html
入力フォーム「製品の現象」の初めに「<RDE重要なお知らせの件>」と入力ください。

ページ最終更新日:2007/9/14
9/14 ページ公開
※本ページは予告なく変更することがあります。

[ 閉じる ]
Copyright(C) 2004-2008 WingArc Technologies, Inc. All rights reserved