SQL_TYPE_MISMATCH
hai ,
SELECT * FROM V$SQL_SHARED_CURSOR WHERE KGLHDPAR='00000005A6710DD0';
ADDRESS KGLHDPAR U S O O S L S E B P I S T A B D L T R I I R L I O S M U T N F L
00000005A67105B8 00000005A6710DD0 N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N
00000005B0113270 00000005A6710DD0 N Y N N N N N N N N N N N N N N N N N N N N N N N N N N N N N NAs value y suggest that the child cursor is not shared due to mismatch in sql_type
i want to know what is sql_type_mismatch .
Regards,
Meeran
Meeran wrote:
hai ,
As value y suggest that the child cursor is not shared due to mismatch in sql_type
i want to know what is sql_type_mismatch .
Regards,
MeeranIt appears that SQL_TYPE_MISMATCH is set to Y in V$SQL_SHARED_CURSOR to indicate that the SQLTYPE in V$SQL changed. For example (note that this SQL statement specifiies a specific SQL_ID):
SELECT
SS1.SQL_TEXT,
SS1.SQL_ID,
SS1.CHILD_NUMBER,
SS1.SQLTYPE,
SS2.CHILD_NUMBER,
SS2.SQLTYPE
FROM
V$SQL SS1,
V$SQL SS2
WHERE
SS1.SQL_ID=SS2.SQL_ID
AND SS1.SQLTYPE< SS2.SQLTYPE
AND SS1.SQL_ID='39tw34mramfdv'
ORDER BY
SS1.SQL_TEXT,
SS1.CHILD_NUMBER;
SQL_TEXT SQL_ID CHILD_NUMBER SQLTYPE CHILD_NUMBER SQLTYPE
SELECT BANNER FROM V$VERSION 39tw34mramfdv 0 2 1 6Now to check V$SQL_SHARED_CURSOR:
SELECT
FROM
V$SQL_SHARED_CURSOR
WHERE
SQL_ID='39tw34mramfdv'
ORDER BY
CHILD_NUMBER;
SQL_ID CHILD_NUMBER U S O O S L S E B P I S T A B D L T R I I R L I O S M U T N F A I T D L D B P C S R P T M B M R O P M F L
39tw34mramfdv 0 N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N
39tw34mramfdv 1 N Y N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N N NThe documentation is not very clear regardiing the SQLTYPE column in V$SQL:
http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/dynviews_2113.htm
"SQLTYPE: Denotes the version of the SQL language used for this statement"
I have not been able to find additional clarity what the various SQLTYPE values indicate - the column was added in Oracle Database 9i R2 (edit: column exists in 9i R1 based on output that appears in the book "Optimizing Oracle Performance", it appears that I misread the "What's New Documentation"). I see values of 0, 2, and 6 for the SQLTYPE of the same query. I would be interested to know what causes the different values to appear (with and without ANSI support?).
Charles Hooper
Co-author of "Expert Oracle Practices: Oracle Database Administration from the Oak Table"
http://hoopercharles.wordpress.com/
IT Manager/Oracle DBA
K&M Machine-Fabricating, Inc.
Edited by: Charles Hooper on Jul 20, 2010 3:37 PM
"Optimizing Oracle Performance": http://books.google.com/books?id=mvJW6t7mYU0C&pg=PT214
"What's New Documentation": http://download.oracle.com/docs/cd/B10500_01/server.920/a96536/whatsnew.htm
Similar Messages
-
Gather_Plan_Statistics + DBMS_XPLAN A-rows for parallel queries
Looks like gather_plan_statistics + dbms_xplan displays incorrect A-rows for parallel queries. Is there any way to get the correct A-rows for a parallel query?
Version details:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi on HPUX
Create test tables:
-- Account table
create table test_tacprof
parallel (degree 2) as
select object_id ac_nr,
object_name ac_na
from all_objects;
alter table test_tacprof add constraint test_tacprof_pk primary key (ac_nr);
-- Account revenue table
create table test_taccrev
parallel (degree 2) as
select apf.ac_nr ac_nr,
fiv.r tm_prd,
apf.ac_nr * fiv.r ac_rev
from (select rownum r from all_objects where rownum <= 5) fiv,
test_tacprof apf;
alter table test_taccrev add constraint test_taccrev_pk primary key (ac_nr, tm_prd);
-- Table to hold query results
create table test_4accrev as
select apf.ac_nr, apf.ac_na, rev.tm_prd, rev.ac_rev
from test_taccrev rev,
test_tacprof apf
where 1=2;
Run query with parallel dml/query disabled:
ALTER SESSION DISABLE PARALLEL QUERY;
ALTER SESSION DISABLE PARALLEL DML;
INSERT INTO test_4accrev
SELECT /*+ gather_plan_statistics */
apf.ac_nr,
apf.ac_na,
rev.tm_prd,
rev.ac_rev
FROM test_taccrev rev, test_tacprof apf
WHERE apf.ac_nr = rev.ac_nr AND tm_prd = 4;
SELECT *
FROM TABLE (DBMS_XPLAN.display_cursor (NULL, NULL, 'ALLSTATS LAST'));
| Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | OMem | 1Mem | Use
|* 1 | HASH JOIN | | 1 | 30442 | 23412 |00:00:00.27 | 772 | 1810K| 1380K| 2949K (0)|
| 2 | TABLE ACCESS FULL| TEST_TACPROF | 1 | 26050 | 23412 |00:00:00.01 | 258 | | |
|* 3 | TABLE ACCESS FULL| TEST_TACCREV | 1 | 30441 | 23412 |00:00:00.03 | 514 | | |
ROLLBACK ;
A-rows are correctly reported with no parallel.
Run query with parallel dml/query enabled:
ALTER SESSION enable PARALLEL QUERY;
alter session enable parallel dml;
insert into test_4accrev
select /*+ gather_plan_statistics */ apf.ac_nr, apf.ac_na, rev.tm_prd, rev.ac_rev
from test_taccrev rev,
test_tacprof apf
where apf.ac_nr = rev.ac_nr
and tm_prd = 4;
select * from table(dbms_xplan.display_cursor(null,null,'ALLSTATS LAST'));
| Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | OMem | 1Mem | Used-M
| 1 | PX COORDINATOR | | 1 | | 23412 |00:00:00.79 | 6 | | | |
| 2 | PX SEND QC (RANDOM) | :TQ10001 | 0 | 30442 | 0 |00:00:00.01 | 0 | | | |
|* 3 | HASH JOIN | | 0 | 30442 | 0 |00:00:00.01 | 0 | 2825K| 1131K| |
| 4 | PX BLOCK ITERATOR | | 0 | 30441 | 0 |00:00:00.01 | 0 | | | |
|* 5 | TABLE ACCESS FULL | TEST_TACCREV | 0 | 30441 | 0 |00:00:00.01 | 0 | | |
| 6 | BUFFER SORT | | 0 | | 0 |00:00:00.01 | 0 | 73728 | 73728 | |
| 7 | PX RECEIVE | | 0 | 26050 | 0 |00:00:00.01 | 0 | | | |
| 8 | PX SEND BROADCAST | :TQ10000 | 0 | 26050 | 0 |00:00:00.01 | 0 | | | |
| 9 | PX BLOCK ITERATOR | | 0 | 26050 | 0 |00:00:00.01 | 0 | | | |
|* 10 | TABLE ACCESS FULL| TEST_TACPROF | 0 | 26050 | 0 |00:00:00.01 | 0 | | | |
rollback;
A-rows are zero execpt for final step.I'm sorry for posting following long test case.
But it's the most convenient way to explain something. :-)
Here is my test case, which is quite similar to yours.
Note on the difference between "parallel select" and "parallel dml(insert here)".
(I know that Oracle implemented psc(parallel single cursor) model in 10g, but the details of the implementation is quite in mystery as Jonathan said... )
SQL> select * from v$version;
BANNER
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
SQL>
SQL> alter system flush shared_pool;
System altered.
SQL>
SQL> alter table t parallel 4;
Table altered.
SQL>
SQL> select /*+ gather_plan_statistics */ count(*) from t t1, t t2
2 where t1.c1 = t2.c1 and rownum <= 1000
3 order by t1.c2;
COUNT(*)
1000
SQL>
SQL> select sql_id from v$sqlarea
where sql_text like 'select /*+ gather_plan_statistics */ count(*) from t t1, t t2%';
SQL_ID
bx61bkyh9ffb6
SQL>
SQL> select * from table(dbms_xplan.display_cursor('&sql_id',null,'allstats last'));
Enter value for sql_id: bx61bkyh9ffb6
PLAN_TABLE_OUTPUT
SQL_ID bx61bkyh9ffb6, child number 0 <-- Cooridnator and slaves shared the cursor
select /*+ gather_plan_statistics */ count(*) from t t1, t t2 where t1.c1 = t2.c
1 and rownum <= 1000 order by t1.c2
Plan hash value: 3015647771
PLAN_TABLE_OUTPUT
| Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | OMem | 1Mem | Used-Mem |
| 1 | SORT AGGREGATE | | 1 | 1 | 1 |00:00:00.62 | 6 | | | |
|* 2 | COUNT STOPKEY | | 1 | | 1000 |00:00:00.62 | 6 | | | |
| 3 | PX COORDINATOR | | 1 | | 1000 |00:00:00.50 | 6 | | | |
| 4 | PX SEND QC (RANDOM) | :TQ10002 | 0 | 16M| 0 |00:00:00.01 | 0 | | | |
|* 5 | COUNT STOPKEY | | 0 | | 0 |00:00:00.01 | 0 | | | |
|* 6 | HASH JOIN BUFFERED | | 0 | 16M| 0 |00:00:00.01 | 0 | 1285K| 1285K| 717K (0)|
| 7 | PX RECEIVE | | 0 | 10000 | 0 |00:00:00.01 | 0 | | | |
| 8 | PX SEND HASH | :TQ10000 | 0 | 10000 | 0 |00:00:00.01 | 0 | | | |
| 9 | PX BLOCK ITERATOR | | 0 | 10000 | 0 |00:00:00.01 | 0 | | | |
|* 10 | TABLE ACCESS FULL| T | 0 | 10000 | 0 |00:00:00.01 | 0 | | | |
| 11 | PX RECEIVE | | 0 | 10000 | 0 |00:00:00.01 | 0 | | | |
| 12 | PX SEND HASH | :TQ10001 | 0 | 10000 | 0 |00:00:00.01 | 0 | | | |
| 13 | PX BLOCK ITERATOR | | 0 | 10000 | 0 |00:00:00.01 | 0 | | | |
|* 14 | TABLE ACCESS FULL| T | 0 | 10000 | 0 |00:00:00.01 | 0 | | | |
38 rows selected.
SQL>
SQL> select sql_id, child_number, executions, px_servers_executions
2 from v$sql where sql_id = '&sql_id';
SQL_ID CHILD_NUMBER EXECUTIONS
PX_SERVERS_EXECUTIONS
bx61bkyh9ffb6 0 1
8
SQL>
SQL> insert /*+ gather_plan_statistics */ into t select * from t;
10000 rows created.
SQL>
SQL> select sql_id from v$sqlarea
where sql_text like 'insert /*+ gather_plan_statistics */ into t select * from t%';
SQL_ID
9dkmu9bdhg5h0
SQL>
SQL> select * from table(dbms_xplan.display_cursor('&sql_id', null, 'allstats last'));
Enter value for sql_id: 9dkmu9bdhg5h0
PLAN_TABLE_OUTPUT
SQL_ID 9dkmu9bdhg5h0, child number 0 <-- Coordinator Cursor
insert /*+ gather_plan_statistics */ into t select * from t
Plan hash value: 3050126167
| Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers |
| 1 | PX COORDINATOR | | 1 | | 10000 |00:00:00.20 | 3 |
| 2 | PX SEND QC (RANDOM)| :TQ10000 | 0 | 10000 | 0 |00:00:00.01 | 0 |
| 3 | PX BLOCK ITERATOR | | 0 | 10000 | 0 |00:00:00.01 | 0 |
|* 4 | TABLE ACCESS FULL| T | 0 | 10000 | 0 |00:00:00.01 | 0 |
SQL_ID 9dkmu9bdhg5h0, child number 1 <-- Slave(s)
insert /*+ gather_plan_statistics */ into t select * from t
PLAN_TABLE_OUTPUT
Plan hash value: 3050126167
| Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers |
| 1 | PX COORDINATOR | | 0 | | 0 |00:00:00.01 | 0 |
| 2 | PX SEND QC (RANDOM)| :TQ10000 | 0 | 10000 | 0 |00:00:00.01 | 0 |
| 3 | PX BLOCK ITERATOR | | 1 | 10000 | 2628 |00:00:00.20 | 16 |
|* 4 | TABLE ACCESS FULL| T | 4 | 10000 | 2628 |00:00:00.02 | 16 |
SQL>
SQL> select sql_id, child_number, executions, px_servers_executions
2 from v$sql where sql_id = '&sql_id'; <-- 2 child cursors here
SQL_ID CHILD_NUMBER EXECUTIONS
PX_SERVERS_EXECUTIONS
9dkmu9bdhg5h0 0 1
0
9dkmu9bdhg5h0 1 0
4
SQL>
SQL> set serveroutput on
-- check mismatch
SQL> exec print_table('select * from v$sql_shared_cursor where sql_id = ''&sql_id''');
Enter value for sql_id: 9dkmu9bdhg5h0
SQL_ID : 9dkmu9bdhg5h0
ADDRESS : 6AD85A70
CHILD_ADDRESS : 6BA596A8
CHILD_NUMBER : 0
UNBOUND_CURSOR : N
SQL_TYPE_MISMATCH : N
OPTIMIZER_MISMATCH : N
OUTLINE_MISMATCH : N
STATS_ROW_MISMATCH : N
LITERAL_MISMATCH : N
SEC_DEPTH_MISMATCH : N
EXPLAIN_PLAN_CURSOR : N
BUFFERED_DML_MISMATCH : N
PDML_ENV_MISMATCH : N
INST_DRTLD_MISMATCH : N
SLAVE_QC_MISMATCH : N
TYPECHECK_MISMATCH : N
AUTH_CHECK_MISMATCH : N
BIND_MISMATCH : N
DESCRIBE_MISMATCH : N
LANGUAGE_MISMATCH : N
TRANSLATION_MISMATCH : N
ROW_LEVEL_SEC_MISMATCH : N
INSUFF_PRIVS : N
INSUFF_PRIVS_REM : N
REMOTE_TRANS_MISMATCH : N
LOGMINER_SESSION_MISMATCH : N
INCOMP_LTRL_MISMATCH : N
OVERLAP_TIME_MISMATCH : N
SQL_REDIRECT_MISMATCH : N
MV_QUERY_GEN_MISMATCH : N
USER_BIND_PEEK_MISMATCH : N
TYPCHK_DEP_MISMATCH : N
NO_TRIGGER_MISMATCH : N
FLASHBACK_CURSOR : N
ANYDATA_TRANSFORMATION : N
INCOMPLETE_CURSOR : N
TOP_LEVEL_RPI_CURSOR : N
DIFFERENT_LONG_LENGTH : N
LOGICAL_STANDBY_APPLY : N
DIFF_CALL_DURN : N
BIND_UACS_DIFF : N
PLSQL_CMP_SWITCHS_DIFF : N
CURSOR_PARTS_MISMATCH : N
STB_OBJECT_MISMATCH : N
ROW_SHIP_MISMATCH : N
PQ_SLAVE_MISMATCH : N
TOP_LEVEL_DDL_MISMATCH : N
MULTI_PX_MISMATCH : N
BIND_PEEKED_PQ_MISMATCH : N
MV_REWRITE_MISMATCH : N
ROLL_INVALID_MISMATCH : N
OPTIMIZER_MODE_MISMATCH : N
PX_MISMATCH : N
MV_STALEOBJ_MISMATCH : N
FLASHBACK_TABLE_MISMATCH : N
LITREP_COMP_MISMATCH : N
SQL_ID : 9dkmu9bdhg5h0
ADDRESS : 6AD85A70
CHILD_ADDRESS : 6B10AA00
CHILD_NUMBER : 1
UNBOUND_CURSOR : N
SQL_TYPE_MISMATCH : N
OPTIMIZER_MISMATCH : N
OUTLINE_MISMATCH : N
STATS_ROW_MISMATCH : N
LITERAL_MISMATCH : N
SEC_DEPTH_MISMATCH : N
EXPLAIN_PLAN_CURSOR : N
BUFFERED_DML_MISMATCH : N
PDML_ENV_MISMATCH : N
INST_DRTLD_MISMATCH : N
SLAVE_QC_MISMATCH : N
TYPECHECK_MISMATCH : N
AUTH_CHECK_MISMATCH : N
BIND_MISMATCH : N
DESCRIBE_MISMATCH : N
LANGUAGE_MISMATCH : N
TRANSLATION_MISMATCH : N
ROW_LEVEL_SEC_MISMATCH : N
INSUFF_PRIVS : N
INSUFF_PRIVS_REM : N
REMOTE_TRANS_MISMATCH : N
LOGMINER_SESSION_MISMATCH : N
INCOMP_LTRL_MISMATCH : N
OVERLAP_TIME_MISMATCH : N
SQL_REDIRECT_MISMATCH : N
MV_QUERY_GEN_MISMATCH : N
USER_BIND_PEEK_MISMATCH : N
TYPCHK_DEP_MISMATCH : N
NO_TRIGGER_MISMATCH : N
FLASHBACK_CURSOR : N
ANYDATA_TRANSFORMATION : N
INCOMPLETE_CURSOR : N
TOP_LEVEL_RPI_CURSOR : N
DIFFERENT_LONG_LENGTH : N
LOGICAL_STANDBY_APPLY : N
DIFF_CALL_DURN : Y <-- Mismatch here. diff_call_durn
BIND_UACS_DIFF : N
PLSQL_CMP_SWITCHS_DIFF : N
CURSOR_PARTS_MISMATCH : N
STB_OBJECT_MISMATCH : N
ROW_SHIP_MISMATCH : N
PQ_SLAVE_MISMATCH : N
TOP_LEVEL_DDL_MISMATCH : N
MULTI_PX_MISMATCH : N
BIND_PEEKED_PQ_MISMATCH : N
MV_REWRITE_MISMATCH : N
ROLL_INVALID_MISMATCH : N
OPTIMIZER_MODE_MISMATCH : N
PX_MISMATCH : N
MV_STALEOBJ_MISMATCH : N
FLASHBACK_TABLE_MISMATCH : N
LITREP_COMP_MISMATCH : N
PL/SQL procedure successfully completed. -
BUG 11930680 & APEX_040100
I am finding this bug 11930680 is affecting my APEX 4.1.1 install.. I am Running 11.2.0.1 on Redhat linux
eg
I get 21 versions of this SQL in APEX_040100 in v$sql_shared_cursor, with reasons AUTH_CHECK_MISMATCH LANGUAGE_MISMATCH
SELECT SHORTCUT_NAME, ID
FROM WWV_FLOW_SHORTCUTS
WHERE FLOW_ID = :B3 AND (BUILD_OPTION IS NULL OR (BUILD_OPTION > 0 AND (:B2 IS NULL OR INSTR(:B2 ,':'||BUILD_OPTION||':') = 0) ) OR (BUILD_OPTION < 0 AND (:B1 IS NOT NULL AND INSTR(:B1 ,':'||(0-BUILD_OPTION)||':') = 0) ) )
ORDER BY SHORTCUT_NAMEAny many, many other APEX_040100 SQLs having same issue, which I think is slowing down APEX
Should I
- Grant MERGE ANY VIEW to SYS (as per http://magnusjohanssontuning.wordpress.com/2012/08/01/cursor-not-shared-for-different-users/)
- set optimizer_secure_view_merging=false (as per oracle Workaround)
Anyone have similar problems?
This is My SQL to find problem SQLs.. try it on your apex system
select version_count,address,hash_value,parsing_schema_name,reason,sql_text from (
select
address,''
||decode(max( UNBOUND_CURSOR),'Y', ' UNBOUND_CURSOR')
||decode(max( SQL_TYPE_MISMATCH),'Y', ' SQL_TYPE_MISMATCH')
||decode(max( OPTIMIZER_MISMATCH),'Y', ' OPTIMIZER_MISMATCH')
||decode(max( OUTLINE_MISMATCH),'Y', ' OUTLINE_MISMATCH')
||decode(max( STATS_ROW_MISMATCH),'Y', ' STATS_ROW_MISMATCH')
||decode(max( LITERAL_MISMATCH),'Y', ' LITERAL_MISMATCH')
||decode(max( EXPLAIN_PLAN_CURSOR),'Y', ' EXPLAIN_PLAN_CURSOR')
||decode(max( BUFFERED_DML_MISMATCH),'Y', ' BUFFERED_DML_MISMATCH')
||decode(max( PDML_ENV_MISMATCH),'Y', ' PDML_ENV_MISMATCH')
||decode(max( INST_DRTLD_MISMATCH),'Y', ' INST_DRTLD_MISMATCH')
||decode(max( SLAVE_QC_MISMATCH),'Y', ' SLAVE_QC_MISMATCH')
||decode(max( TYPECHECK_MISMATCH),'Y', ' TYPECHECK_MISMATCH')
||decode(max( AUTH_CHECK_MISMATCH),'Y', ' AUTH_CHECK_MISMATCH')
||decode(max( BIND_MISMATCH),'Y', ' BIND_MISMATCH')
||decode(max( DESCRIBE_MISMATCH),'Y', ' DESCRIBE_MISMATCH')
||decode(max( LANGUAGE_MISMATCH),'Y', ' LANGUAGE_MISMATCH')
||decode(max( TRANSLATION_MISMATCH),'Y', ' TRANSLATION_MISMATCH')
||decode(max( INSUFF_PRIVS),'Y', ' INSUFF_PRIVS')
||decode(max( INSUFF_PRIVS_REM),'Y', ' INSUFF_PRIVS_REM')
||decode(max( REMOTE_TRANS_MISMATCH),'Y', ' REMOTE_TRANS_MISMATCH')
||decode(max( LOGMINER_SESSION_MISMATCH),'Y', ' LOGMINER_SESSION_MISMATCH')
||decode(max( INCOMP_LTRL_MISMATCH),'Y', ' INCOMP_LTRL_MISMATCH')
||decode(max( OVERLAP_TIME_MISMATCH),'Y', ' OVERLAP_TIME_MISMATCH')
||decode(max( MV_QUERY_GEN_MISMATCH),'Y', ' MV_QUERY_GEN_MISMATCH')
||decode(max( USER_BIND_PEEK_MISMATCH),'Y', ' USER_BIND_PEEK_MISMATCH')
||decode(max( TYPCHK_DEP_MISMATCH),'Y', ' TYPCHK_DEP_MISMATCH')
||decode(max( NO_TRIGGER_MISMATCH),'Y', ' NO_TRIGGER_MISMATCH')
||decode(max( FLASHBACK_CURSOR),'Y', ' FLASHBACK_CURSOR')
||decode(max( ANYDATA_TRANSFORMATION),'Y', ' ANYDATA_TRANSFORMATION')
||decode(max( TOP_LEVEL_RPI_CURSOR),'Y', ' TOP_LEVEL_RPI_CURSOR')
||decode(max( DIFFERENT_LONG_LENGTH),'Y', ' DIFFERENT_LONG_LENGTH')
||decode(max( LOGICAL_STANDBY_APPLY),'Y', ' LOGICAL_STANDBY_APPLY')
||decode(max( DIFF_CALL_DURN),'Y', ' DIFF_CALL_DURN')
||decode(max( BIND_UACS_DIFF),'Y', ' BIND_UACS_DIFF')
||decode(max( PLSQL_CMP_SWITCHS_DIFF),'Y', ' PLSQL_CMP_SWITCHS_DIFF')
||decode(max( CURSOR_PARTS_MISMATCH),'Y', ' CURSOR_PARTS_MISMATCH')
||decode(max( STB_OBJECT_MISMATCH),'Y', ' STB_OBJECT_MISMATCH')
||decode(max( PQ_SLAVE_MISMATCH),'Y', ' PQ_SLAVE_MISMATCH')
||decode(max( TOP_LEVEL_DDL_MISMATCH),'Y', ' TOP_LEVEL_DDL_MISMATCH')
||decode(max( MULTI_PX_MISMATCH),'Y', ' MULTI_PX_MISMATCH')
||decode(max( BIND_PEEKED_PQ_MISMATCH),'Y', ' BIND_PEEKED_PQ_MISMATCH')
||decode(max( MV_REWRITE_MISMATCH),'Y', ' MV_REWRITE_MISMATCH')
||decode(max( ROLL_INVALID_MISMATCH),'Y', ' ROLL_INVALID_MISMATCH')
||decode(max( OPTIMIZER_MODE_MISMATCH),'Y', ' OPTIMIZER_MODE_MISMATCH')
||decode(max( PX_MISMATCH),'Y', ' PX_MISMATCH')
||decode(max( MV_STALEOBJ_MISMATCH),'Y', ' MV_STALEOBJ_MISMATCH')
||decode(max( FLASHBACK_TABLE_MISMATCH),'Y', ' FLASHBACK_TABLE_MISMATCH')
||decode(max( LITREP_COMP_MISMATCH),'Y', ' LITREP_COMP_MISMATCH')
reason
from
v$sql_shared_cursor
group by
address
) join v$sqlarea using(address) where version_count>2
and parsing_schema_name like 'APEX_0%'
order by version_count desc,address;Hi,
are you sure that you are calling f from schema apex_040100 and not from the previous version? As a test, can you prefix your call with apex_040100.f
If you check your error/access logs of Apache and mod_plsql, do you see any errors?
Regards
Patrick
My Blog: http://www.inside-oracle-apex.com
APEX Plug-Ins: http://apex.oracle.com/plugins
Twitter: http://www.twitter.com/patrickwolf -
Query taking longer to execute the second time.
Hello,
I have a query joing few tables and views and when i execute it the first them, it executes within a seconds, immediately if i execute it the second time it takes about 40 seconds to execute. I am using Oracle 11g [11.2.0.1.0].
Please find the TKPROF output.
call count cpu elapsed disk query current rows
Parse 1 0.26 0.24 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 23 0.81 0.82 0 5610 0 326
total 25 1.07 1.07 0 5610 0 326
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 127
call count cpu elapsed disk query current rows
Parse 1 0.23 0.23 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 23 41.01 41.00 0 38218 0 326
total 25 41.24 41.24 0 38218 0 326
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 127Hi Nicholay,
VPD is not being used in our application. ArcSDE Multi-Versionsed View uses some functions in VW_ objects. In Oracle 10g I dont have this issue.
Here is the output from V$SQL_SHARED_CURSOR.
"SQL_ID" "ADDRESS" "CHILD_ADDRESS" "CHILD_NUMBER" "UNBOUND_CURSOR" "SQL_TYPE_MISMATCH" "OPTIMIZER_MISMATCH" "OUTLINE_MISMATCH" "STATS_ROW_MISMATCH" "LITERAL_MISMATCH" "FORCE_HARD_PARSE" "EXPLAIN_PLAN_CURSOR" "BUFFERED_DML_MISMATCH" "PDML_ENV_MISMATCH" "INST_DRTLD_MISMATCH" "SLAVE_QC_MISMATCH" "TYPECHECK_MISMATCH" "AUTH_CHECK_MISMATCH" "BIND_MISMATCH" "DESCRIBE_MISMATCH" "LANGUAGE_MISMATCH" "TRANSLATION_MISMATCH" "BIND_EQUIV_FAILURE" "INSUFF_PRIVS" "INSUFF_PRIVS_REM" "REMOTE_TRANS_MISMATCH" "LOGMINER_SESSION_MISMATCH" "INCOMP_LTRL_MISMATCH" "OVERLAP_TIME_MISMATCH" "EDITION_MISMATCH" "MV_QUERY_GEN_MISMATCH" "USER_BIND_PEEK_MISMATCH" "TYPCHK_DEP_MISMATCH" "NO_TRIGGER_MISMATCH" "FLASHBACK_CURSOR" "ANYDATA_TRANSFORMATION" "INCOMPLETE_CURSOR" "TOP_LEVEL_RPI_CURSOR" "DIFFERENT_LONG_LENGTH" "LOGICAL_STANDBY_APPLY" "DIFF_CALL_DURN" "BIND_UACS_DIFF" "PLSQL_CMP_SWITCHS_DIFF" "CURSOR_PARTS_MISMATCH" "STB_OBJECT_MISMATCH" "CROSSEDITION_TRIGGER_MISMATCH""PQ_SLAVE_MISMATCH" "TOP_LEVEL_DDL_MISMATCH" "MULTI_PX_MISMATCH" "BIND_PEEKED_PQ_MISMATCH" "MV_REWRITE_MISMATCH" "ROLL_INVALID_MISMATCH" "OPTIMIZER_MODE_MISMATCH" "PX_MISMATCH" "MV_STALEOBJ_MISMATCH" "FLASHBACK_TABLE_MISMATCH" "LITREP_COMP_MISMATCH" "PLSQL_DEBUG" "LOAD_OPTIMIZER_STATS" "ACL_MISMATCH" "FLASHBACK_ARCHIVE_MISMATCH" "LOCK_USER_SCHEMA_FAILED" "REMOTE_MAPPING_MISMATCH" "LOAD_RUNTIME_HEAP_FAILED" "HASH_MATCH_FAILED" "PURGED_CURSOR" "BIND_LENGTH_UPGRADEABLE"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD49C88" "1" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD3A7B8" "0" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD46A40" "2" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD3A7B8" "0" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD49C88" "1" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD46A40" "2" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD3A7B8" "0" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD49C88" "1" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N"
"7rtqvjtyp06k9" "000007FFABD3A918" "000007FFABD46A40" "2" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" "N" Edited by: 955237 on 29 Aug, 2012 1:57 AM -
AUTH_CHECK_MISMATCH BIND_MISMATCH LANGUAGE_MISMATCH
when I run SQL (further below) I get significant number of results of AUTH_CHECK_MISMATCH LANGUAGE_MISMATCH
Just wondering if APEX 4.1.1 has not installed correctly?
eg1 -AUTH_CHECK_MISMATCH BIND_MISMATCH LANGUAGE_MISMATCH
SELECT SHORTCUT_NAME, ID FROM WWV_FLOW_SHORTCUTS WHERE FLOW_ID = :B3 AND (BUILD_OPTION IS NULL OR (BUILD_OPTION > 0 AND (:B2 IS NULL OR INSTR(:B2 ,':'||BUILD_OPTION||':') = 0) ) OR (BUILD_OPTION < 0 AND (:B1 IS NOT NULL AND INSTR(:B1 ,':'||(0-BUILD_OPTION)||':') = 0) ) ) ORDER BY SHORTCUT_NAMEeg2 - AUTH_CHECK_MISMATCH LANGUAGE_MISMATCH
SELECT ROWID FROM WWV_FLOW_DATA WHERE FLOW_INSTANCE = :B3 AND ITEM_ID = :B2 AND ITEM_NAME = :B1 FOR UPDATE NOWAIT"
select version_count,reason,sql_text from (
select
address,''
||decode(max( UNBOUND_CURSOR),'Y', ' UNBOUND_CURSOR')
||decode(max( SQL_TYPE_MISMATCH),'Y', ' SQL_TYPE_MISMATCH')
||decode(max( OPTIMIZER_MISMATCH),'Y', ' OPTIMIZER_MISMATCH')
||decode(max( OUTLINE_MISMATCH),'Y', ' OUTLINE_MISMATCH')
||decode(max( STATS_ROW_MISMATCH),'Y', ' STATS_ROW_MISMATCH')
||decode(max( LITERAL_MISMATCH),'Y', ' LITERAL_MISMATCH')
||decode(max( EXPLAIN_PLAN_CURSOR),'Y', ' EXPLAIN_PLAN_CURSOR')
||decode(max( BUFFERED_DML_MISMATCH),'Y', ' BUFFERED_DML_MISMATCH')
||decode(max( PDML_ENV_MISMATCH),'Y', ' PDML_ENV_MISMATCH')
||decode(max( INST_DRTLD_MISMATCH),'Y', ' INST_DRTLD_MISMATCH')
||decode(max( SLAVE_QC_MISMATCH),'Y', ' SLAVE_QC_MISMATCH')
||decode(max( TYPECHECK_MISMATCH),'Y', ' TYPECHECK_MISMATCH')
||decode(max( AUTH_CHECK_MISMATCH),'Y', ' AUTH_CHECK_MISMATCH')
||decode(max( BIND_MISMATCH),'Y', ' BIND_MISMATCH')
||decode(max( DESCRIBE_MISMATCH),'Y', ' DESCRIBE_MISMATCH')
||decode(max( LANGUAGE_MISMATCH),'Y', ' LANGUAGE_MISMATCH')
||decode(max( TRANSLATION_MISMATCH),'Y', ' TRANSLATION_MISMATCH')
||decode(max( INSUFF_PRIVS),'Y', ' INSUFF_PRIVS')
||decode(max( INSUFF_PRIVS_REM),'Y', ' INSUFF_PRIVS_REM')
||decode(max( REMOTE_TRANS_MISMATCH),'Y', ' REMOTE_TRANS_MISMATCH')
||decode(max( LOGMINER_SESSION_MISMATCH),'Y', ' LOGMINER_SESSION_MISMATCH')
||decode(max( INCOMP_LTRL_MISMATCH),'Y', ' INCOMP_LTRL_MISMATCH')
||decode(max( OVERLAP_TIME_MISMATCH),'Y', ' OVERLAP_TIME_MISMATCH')
||decode(max( MV_QUERY_GEN_MISMATCH),'Y', ' MV_QUERY_GEN_MISMATCH')
||decode(max( USER_BIND_PEEK_MISMATCH),'Y', ' USER_BIND_PEEK_MISMATCH')
||decode(max( TYPCHK_DEP_MISMATCH),'Y', ' TYPCHK_DEP_MISMATCH')
||decode(max( NO_TRIGGER_MISMATCH),'Y', ' NO_TRIGGER_MISMATCH')
||decode(max( FLASHBACK_CURSOR),'Y', ' FLASHBACK_CURSOR')
||decode(max( ANYDATA_TRANSFORMATION),'Y', ' ANYDATA_TRANSFORMATION')
||decode(max( TOP_LEVEL_RPI_CURSOR),'Y', ' TOP_LEVEL_RPI_CURSOR')
||decode(max( DIFFERENT_LONG_LENGTH),'Y', ' DIFFERENT_LONG_LENGTH')
||decode(max( LOGICAL_STANDBY_APPLY),'Y', ' LOGICAL_STANDBY_APPLY')
||decode(max( DIFF_CALL_DURN),'Y', ' DIFF_CALL_DURN')
||decode(max( BIND_UACS_DIFF),'Y', ' BIND_UACS_DIFF')
||decode(max( PLSQL_CMP_SWITCHS_DIFF),'Y', ' PLSQL_CMP_SWITCHS_DIFF')
||decode(max( CURSOR_PARTS_MISMATCH),'Y', ' CURSOR_PARTS_MISMATCH')
||decode(max( STB_OBJECT_MISMATCH),'Y', ' STB_OBJECT_MISMATCH')
||decode(max( PQ_SLAVE_MISMATCH),'Y', ' PQ_SLAVE_MISMATCH')
||decode(max( TOP_LEVEL_DDL_MISMATCH),'Y', ' TOP_LEVEL_DDL_MISMATCH')
||decode(max( MULTI_PX_MISMATCH),'Y', ' MULTI_PX_MISMATCH')
||decode(max( BIND_PEEKED_PQ_MISMATCH),'Y', ' BIND_PEEKED_PQ_MISMATCH')
||decode(max( MV_REWRITE_MISMATCH),'Y', ' MV_REWRITE_MISMATCH')
||decode(max( ROLL_INVALID_MISMATCH),'Y', ' ROLL_INVALID_MISMATCH')
||decode(max( OPTIMIZER_MODE_MISMATCH),'Y', ' OPTIMIZER_MODE_MISMATCH')
||decode(max( PX_MISMATCH),'Y', ' PX_MISMATCH')
||decode(max( MV_STALEOBJ_MISMATCH),'Y', ' MV_STALEOBJ_MISMATCH')
||decode(max( FLASHBACK_TABLE_MISMATCH),'Y', ' FLASHBACK_TABLE_MISMATCH')
||decode(max( LITREP_COMP_MISMATCH),'Y', ' LITREP_COMP_MISMATCH')
reason
from
v$sql_shared_cursor
group by
address
) join v$sqlarea using(address) where version_count>2
and parsing_schema_name like 'APEX_0%'
order by version_count desc,addressI'm seeing the same thing now, APEX 4.0. Two-node setup. Please let me know if you've found any reason why, I'm checking the environment settings across both nodes now.
Maybe you are looking for
-
Hey guys, So basically as the question above says... I have had an Apple ID for a few years now under a Hotmail email. Recently I got a Me account and I want to change my primary email address on my Apple ID to this new Me email address as I no longe
-
IP over FireWire keeps going down
I use IP over FireWire with static IP addresses to sync two Macs every day. Every since upgrading to Leopard, that Mac that runs the sync keeps losing its IP over FireWire connection - it looks OK in the Network prefs pane, but won't mount the other
-
IPS Tech Tips: IPS Best Practices with Cisco Remote Management Services
Hi Folks - Another IPS Tech Tip coming up and this time we will be hearing from some past and current Cisco Remote Services members on their best practice suggestions. As always these are about 30 minutes of content and then Q&A - a low cost high rew
-
I don't understand what I have done, but my pdf wont open . It says error opening document access denied
-
Hi I've just updated itunes and ipod to the latest version , itunes is fine , ipod is far from fine this is the sequence of events : updated itunes , restarted comp updated ipod ,restarted comp tried to update songs on ipod via itunes ,got the exclam