Sherman,
I found the following SQL from Tim Gorman's site... this will create a file , which can be run to pin the objects, It Pins CURSORS as well as the other objects ( not the tables ). set tab off echo off feedback off timing off trimout on pause off set trimspool on pages 0 lines 500 verify off col instance new_value V_INSTANCE noprint select lower(replace(t.instance,chr(0),'')) instance from sys.v$thread t, sys.v$parameter p where p.name = 'thread' and t.thread# = to_number(decode(p.value,'0','1',p.value)); col sort0 noprint col sort1 noprint col sort2 noprint col sort3 noprint spool run_pin_&&V_INSTANCE..sql prompt whenever sqlerror exit failure prompt set echo on feedback on timing on pagesize 100 prompt spool run_pin_&&V_INSTANCE select decode(kept, 'YES', 'unkeep', 'keep') sort0, type sort1, owner sort2, name sort3, 'exec dbms_shared_pool.' || decode(kept, 'YES', 'unkeep', 'keep') || '(''' || owner || '.' || name || ''',''' || decode(type, 'TYPE', 'T', 'TRIGGER', 'R', 'SEQUENCE', 'Q', 'P') || ''');' text from sys.v$db_object_cache where ((executions >= 100 and kept = 'NO') or (executions < 100 and kept = 'YES')) and type in ('PACKAGE','PACKAGE BODY','PROCEDURE','FUNCTION','TYPE', 'TRIGGER','SEQUENCE') union select distinct decode(o.kept, 'YES', 'unkeep', 'keep') sort0, o.type sort1, o.owner sort2, o.name sort3, 'exec dbms_shared_pool.' || decode(o.kept, 'YES', 'unkeep', 'keep') || '(''' || a.address || ', ' || a.hash_value || ''');' text from sys.v$db_object_cache o, sys.v$sqlarea a where ((o.executions >= 100 and o.kept = 'NO') or (o.executions < 100 and o.kept = 'YES')) and o.type in ('CURSOR', 'INVALID TYPE') and a.sql_text = o.name order by 1 desc, 2 asc, 3 asc, 4 asc; prompt spool off spool off --/*REM start run_pin_&&V_INSTANCE*/ Thanks, Madhu -----Original Message----- Sent: Wednesday, May 22, 2002 9:34 AM To: Multiple recipients of list ORACLE-L Rafiq, I ran your query as we have been in the process of tuning our shared pool, and I have a question. When you see many more loads than executions for a given table, is it a safe bet that the application in question is executing queries that have that table in the from clause, but it is not being used by that query ? For example, a table has 33 loads and 5 executions. Could I say that 28 loads were caused by a query that had that table referenced, but not used (and causing a full table scan, because that's what Oracle does when you reference, but do not use, a table (in the from clause) ? Thank you, Paul Sherman DBA Elcom, Inc. email - [EMAIL PROTECTED] -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Sherman, Paul R. INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Reddy, Madhusudana INET: [EMAIL PROTECTED] Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).