ソフトウェア構成管理チームに所属しています。私はPL/SQLでメモリリークを見つけるのがとても奇妙です。私たちには特定のツールがありますか、それを見つけるための他の方法がありますか?もしそうなら、私はチェックインした後、メモリリークのユーザーに親密なプロセスの中に置くことができます。PL/SQLコードでメモリー・リークを見つける方法
ありがとうございます!
ソフトウェア構成管理チームに所属しています。私はPL/SQLでメモリリークを見つけるのがとても奇妙です。私たちには特定のツールがありますか、それを見つけるための他の方法がありますか?もしそうなら、私はチェックインした後、メモリリークのユーザーに親密なプロセスの中に置くことができます。PL/SQLコードでメモリー・リークを見つける方法
ありがとうございます!
五$ sessmetricは、各セッションが使用しているリソースを確認する簡単な方法です - 以下のクエリは、セッションが使用しているオブジェクトを何与える
CPU、physical_reads、logical_reads、pga_memoryを、など:
SELECT v$sessmetric.*, sql_text, sql_fulltext
FROM v$sessmetric
LEFT OUTER JOIN (SELECT *
FROM v$sql
WHERE users_executing > 0) queries_running
ON v$sessmetric.session_id = queries_running.parsing_schema_id;
ありがとうございます。これを行うには、アプリをすぐに起動する必要がありますか?私はソースコードツール(Say SVNまたはClearcase)でチェックインされた各ファイル(パッケージ)をチェックしようとしていました。 – John
PL/SQLは、開発者に内部ガベージコレクションを多くの制御を与えることのない、かなり高水準な言語です。そのため、どのようなタイプのコード構造があるかわかりません。おそらくグローバルコレクションで、 'bulk collect'によって 'limit'は設定されていませんが、照会されたテーブルのサイズによっては合理的かもしれません。あなたは何の問題を見ていますか? –