Advertisement
tmmdv

unshared.sql

Apr 25th, 2022
4,739
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 3.37 KB | None | 0 0
  1. SET termout off
  2.  
  3. var sql_id varchar2(30)
  4. EXEC :sql_id := '&1'
  5.  
  6. SET termout ON
  7.  
  8. SELECT * FROM
  9. (SELECT sql_id, nonshared_reason, COUNT(*) cnt FROM v$sql_shared_cursor
  10. unpivot
  11. (nonshared_value FOR nonshared_reason IN (
  12.   UNBOUND_CURSOR AS 'UNBOUND_CURSOR',
  13.   SQL_TYPE_MISMATCH AS 'SQL_TYPE_MISMATCH',
  14.   OPTIMIZER_MISMATCH AS 'OPTIMIZER_MISMATCH',
  15.   OUTLINE_MISMATCH AS 'OUTLINE_MISMATCH',
  16.   STATS_ROW_MISMATCH AS 'STATS_ROW_MISMATCH',
  17.   LITERAL_MISMATCH AS 'LITERAL_MISMATCH',
  18.   FORCE_HARD_PARSE AS 'FORCE_HARD_PARSE',
  19.   EXPLAIN_PLAN_CURSOR AS 'EXPLAIN_PLAN_CURSOR',
  20.   BUFFERED_DML_MISMATCH AS 'BUFFERED_DML_MISMATCH',
  21.   PDML_ENV_MISMATCH AS 'PDML_ENV_MISMATCH',
  22.   INST_DRTLD_MISMATCH AS 'INST_DRTLD_MISMATCH',
  23.   SLAVE_QC_MISMATCH AS 'SLAVE_QC_MISMATCH',
  24.   TYPECHECK_MISMATCH AS 'TYPECHECK_MISMATCH',
  25.   AUTH_CHECK_MISMATCH AS 'AUTH_CHECK_MISMATCH',
  26.   BIND_MISMATCH AS 'BIND_MISMATCH',
  27.   DESCRIBE_MISMATCH AS 'DESCRIBE_MISMATCH',
  28.   LANGUAGE_MISMATCH AS 'LANGUAGE_MISMATCH',
  29.   TRANSLATION_MISMATCH AS 'TRANSLATION_MISMATCH',
  30.   BIND_EQUIV_FAILURE AS 'BIND_EQUIV_FAILURE',
  31.   INSUFF_PRIVS AS 'INSUFF_PRIVS',
  32.   INSUFF_PRIVS_REM AS 'INSUFF_PRIVS_REM',
  33.   REMOTE_TRANS_MISMATCH AS 'REMOTE_TRANS_MISMATCH',
  34.   LOGMINER_SESSION_MISMATCH AS 'LOGMINER_SESSION_MISMATCH',
  35.   INCOMP_LTRL_MISMATCH AS 'INCOMP_LTRL_MISMATCH',
  36.   OVERLAP_TIME_MISMATCH AS 'OVERLAP_TIME_MISMATCH',
  37.   EDITION_MISMATCH AS 'EDITION_MISMATCH',
  38.   MV_QUERY_GEN_MISMATCH AS 'MV_QUERY_GEN_MISMATCH',
  39.   USER_BIND_PEEK_MISMATCH AS 'USER_BIND_PEEK_MISMATCH',
  40.   TYPCHK_DEP_MISMATCH AS 'TYPCHK_DEP_MISMATCH',
  41.   NO_TRIGGER_MISMATCH AS 'NO_TRIGGER_MISMATCH',
  42.   FLASHBACK_CURSOR AS 'FLASHBACK_CURSOR',
  43.   ANYDATA_TRANSFORMATION AS 'ANYDATA_TRANSFORMATION',
  44.   PDDL_ENV_MISMATCH AS 'PDDL_ENV_MISMATCH',
  45.   TOP_LEVEL_RPI_CURSOR AS 'TOP_LEVEL_RPI_CURSOR',
  46.   DIFFERENT_LONG_LENGTH AS 'DIFFERENT_LONG_LENGTH',
  47.   LOGICAL_STANDBY_APPLY AS 'LOGICAL_STANDBY_APPLY',
  48.   DIFF_CALL_DURN AS 'DIFF_CALL_DURN',
  49.   BIND_UACS_DIFF AS 'BIND_UACS_DIFF',
  50.   PLSQL_CMP_SWITCHS_DIFF AS 'PLSQL_CMP_SWITCHS_DIFF',
  51.   CURSOR_PARTS_MISMATCH AS 'CURSOR_PARTS_MISMATCH',
  52.   STB_OBJECT_MISMATCH AS 'STB_OBJECT_MISMATCH',
  53.   CROSSEDITION_TRIGGER_MISMATCH AS 'CROSSEDITION_TRIGGER_MISMATCH',
  54.   PQ_SLAVE_MISMATCH AS 'PQ_SLAVE_MISMATCH',
  55.   TOP_LEVEL_DDL_MISMATCH AS 'TOP_LEVEL_DDL_MISMATCH',
  56.   MULTI_PX_MISMATCH AS 'MULTI_PX_MISMATCH',
  57.   BIND_PEEKED_PQ_MISMATCH AS 'BIND_PEEKED_PQ_MISMATCH',
  58.   MV_REWRITE_MISMATCH AS 'MV_REWRITE_MISMATCH',
  59.   ROLL_INVALID_MISMATCH AS 'ROLL_INVALID_MISMATCH',
  60.   OPTIMIZER_MODE_MISMATCH AS 'OPTIMIZER_MODE_MISMATCH',
  61.   PX_MISMATCH AS 'PX_MISMATCH',
  62.   MV_STALEOBJ_MISMATCH AS 'MV_STALEOBJ_MISMATCH',
  63.   FLASHBACK_TABLE_MISMATCH AS 'FLASHBACK_TABLE_MISMATCH',
  64.   LITREP_COMP_MISMATCH AS 'LITREP_COMP_MISMATCH',
  65.   PLSQL_DEBUG AS 'PLSQL_DEBUG',
  66.   LOAD_OPTIMIZER_STATS AS 'LOAD_OPTIMIZER_STATS',
  67.   ACL_MISMATCH AS 'ACL_MISMATCH',
  68.   FLASHBACK_ARCHIVE_MISMATCH AS 'FLASHBACK_ARCHIVE_MISMATCH',
  69.   LOCK_USER_SCHEMA_FAILED AS 'LOCK_USER_SCHEMA_FAILED',
  70.   REMOTE_MAPPING_MISMATCH AS 'REMOTE_MAPPING_MISMATCH',
  71.   LOAD_RUNTIME_HEAP_FAILED AS 'LOAD_RUNTIME_HEAP_FAILED',
  72.   HASH_MATCH_FAILED AS 'HASH_MATCH_FAILED',
  73.   PURGED_CURSOR AS 'PURGED_CURSOR',
  74.   BIND_LENGTH_UPGRADEABLE AS 'BIND_LENGTH_UPGRADEABLE',
  75.   USE_FEEDBACK_STATS AS 'USE_FEEDBACK_STATS'
  76. ))
  77. WHERE nonshared_value = 'Y' AND sql_id = :sql_id
  78. GROUP BY sql_id, nonshared_reason
  79. )
  80. ORDER BY cnt;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement