2026-03-12 20:23:15
This commit is contained in:
71
star/wrkasum.sql
Normal file
71
star/wrkasum.sql
Normal file
@@ -0,0 +1,71 @@
|
||||
-- Copyright 2018 Tanel Poder. All rights reserved. More info at http://tanelpoder.com
|
||||
-- Licensed under the Apache License, Version 2.0. See LICENSE.txt for terms & conditions.
|
||||
|
||||
-- Purpose: Show a summary of ACTIVE SQL workareas grouped by operation type (SORT, HASH, etc)
|
||||
-- Show both PGA workarea usage and TEMP usage by workareas (workareas don't include
|
||||
-- other PGA/TEMP use like PL/SQL arrays and global temporary tables)
|
||||
--
|
||||
-- Usage: @wrkasum 1=1
|
||||
-- @wrkasum username='APPUSER'
|
||||
-- @wrkasum "program LIKE '%BatchRunner.exe%' AND machine='host123'"
|
||||
|
||||
PROMPT Total PGA allocation from V$PROCESS (excluding MGA)
|
||||
|
||||
SELECT
|
||||
inst_id
|
||||
, ROUND(SUM(pga_alloc_mem)/1048576,1) total_alloc_pga
|
||||
, ROUND(SUM(pga_used_mem) /1048576,1) total_used_pga
|
||||
FROM
|
||||
gv$process
|
||||
GROUP BY
|
||||
inst_id
|
||||
ORDER BY
|
||||
inst_id
|
||||
/
|
||||
|
||||
PROMPT Top allocation reason by PGA memory usage
|
||||
|
||||
COL wrkasum_operation_type FOR A30
|
||||
|
||||
SELECT
|
||||
operation_type wrkasum_operation_type
|
||||
, policy
|
||||
, ROUND(SUM(actual_mem_used)/1048576) actual_pga_mb
|
||||
, ROUND(SUM(work_area_size)/1048576) allowed_pga_mb
|
||||
, ROUND(SUM(tempseg_size)/1048576) temp_mb
|
||||
, MAX(number_passes) num_passes
|
||||
, COUNT(DISTINCT qcinst_id||','||qcsid) num_qc
|
||||
, COUNT(DISTINCT inst_id||','||sid) num_sessions
|
||||
FROM
|
||||
gv$sql_workarea_active
|
||||
WHERE
|
||||
&1
|
||||
GROUP BY
|
||||
operation_type
|
||||
, policy
|
||||
ORDER BY
|
||||
actual_pga_mb DESC NULLS LAST
|
||||
/
|
||||
|
||||
PROMPT Top SQL_ID by TEMP usage...
|
||||
|
||||
SELECT
|
||||
sql_id
|
||||
, policy
|
||||
, ROUND(SUM(actual_mem_used)/1048576) actual_pga_mb
|
||||
, ROUND(SUM(work_area_size)/1048576) allowed_pga_mb
|
||||
, ROUND(SUM(tempseg_size)/1048576) temp_mb
|
||||
, MAX(number_passes) num_passes
|
||||
, COUNT(DISTINCT qcinst_id||','||qcsid) num_qc
|
||||
, COUNT(DISTINCT inst_id||','||sid) num_sessions
|
||||
FROM
|
||||
gv$sql_workarea_active
|
||||
WHERE
|
||||
&1
|
||||
GROUP BY
|
||||
sql_id
|
||||
, policy
|
||||
ORDER BY
|
||||
temp_mb DESC NULLS LAST
|
||||
/
|
||||
|
||||
Reference in New Issue
Block a user