EGL92: アプリケーションエンジン FS_ALLC のセクション FS_ALLC_CLOGuAdjAP uAcctPerD のSQLにおけるパフォーマンス問題
(Doc ID 2345300.1)
Last updated on NOVEMBER 17, 2019
適用範囲:
PeopleSoft Enterprise FIN General Ledger - バージョン 9.2 から 9.2 [リリース 9]この文書の内容はすべてのプラットフォームに適用されます。
現象
現在の動作
---------------
アプリケーションエンジン FS_ALLCがセクションSQL: FS_ALLC_CLOGuAdjAP uAcctPerDにて長時間実行している。
アプリケーションエンジンのセクション"FS_ALLC_CLOG.uAdjAP.uAcctPerD"には、特定のPROCESS_INSTANCEの値についてPS_ALC_CLOG_TAO4の一時テーブルにあるレコードの
ACCOUNTING_PERIODを抽出する"Do Select"のステップがあります。
同じアプリケーションエンジンのセクションのSQLアクションにおいて、それぞれのレコード行のACCOUNTING_PERIODに996を設定するか、
PROCESS_INSTANCEに現在のプロセスインスタンスと同じでACCOUNTING_PERIODが"Do Select"から抽出した会計期間と同じ他の値を設定する更新を行っています。
お客様のシナリオでは、特定のプロセスインスタンスに対して一時テーブルPS_ALC_CLOG_TAO4に892,438件のレコードが存在しそれら全てには同じ会計期間である12を保持しています。
"Do Select"のステップで"SELECT DISTINCT ACCOUNTING_PERIOD ..."を使用する場合、このアプリケーションエンジンのセクションにてUPDATEのSQLアクションが892,438回発生します。
それは1回ループしてUPDATEのSQLアクションを行います。(これは標準提供されたコードです)
期待される動作
-----------------------
FS_ALLCは20時間以上実行すべきではない。
再現手順
-----------------------
この問題は以下の手順により再現可能です。:
1. 配賦ステップを設定する。
2. 配賦グループを設定する。
3. 上記の配賦グループを使用して FS_ALLC プロセスを実行する。
変更点
原因
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
本書の内容
現象 |
変更点 |
原因 |
解決策 |
参照情報 |