Cognos BIのレポートでグラフに大量のデータをレンダリングしていると、Graphics ServiceのJVMメモリーのOut Of Memoryエラーが発生して、レポートが実行できない事が良く発生します。
たとえば、折れ線グラフのX軸を最大個数表示、カテゴリも最大種類数表示、プロンプト等でパラメーターを保持しているのであれば、パラメーター文字数も最大になるようプロンプトを選択して、グラフの表示が問題なくできるか、テストで確認しておく必要があります。
エラーになる場合、以下を参考にして、チューニングを行ってください。
WindowsとLinuxでチューニング方法が異なりますが、こちらのTechnoteにまとまっています。
Java Heap Space Error When Running Report with a Chart
http://www-01.ibm.com/support/docview.wss?uid=swg21695636
<抜粋>
For Windows 64-bit environment:
- Ensure you make a back up of \webapps\p2pd\WEB-INF\services\cgsService.xml
- Using a text editor edit cgsService.xml
- Locate the first instance of
- Change
<child-proc-cmd>Xmx1g</child-proc-cmd>
to
<child-proc-cmd>Xmx4g</child-proc-cmd>
- Add the following after the above line:
<child-proc-cmd>Xms4g</child-proc-cmd>
<child-proc-cmd>Xmn2g</child-proc-cmd>
On UNIX/Linux 64-bit
-
Make a back up of cgsServer.sh located in both /bin64 and /bin
-
Modify cgsServer.sh in both places as such:
Replace:
$JAVA_CMD $JAVA_OPTS -Xmx1g $USE_NON_ASYNC -classpath $CLASS_PATH com.ibm.cgsBus.CGSServer
with
$JAVA_CMD $JAVA_OPTS -Xmx4g -Xms4g -Xmn2g -Xcompressedrefs $USE_NON_ASYNC -classpath $CLASS_PATH com.ibm.cgsBus.CGSServer