Last updated on NOVEMBER 12, 2010
Applies to:Enterprise Manager for RDBMS
Information in this document applies to any platform.
SELECT TOWNER, TNAME, NAME, LENGTH, PRECISION, SCALE, TYPE, ISNULL,
CONNAME, COLID, INTCOLID, SEGCOLID, COMMENT$, DEFAULT$, DFLTLEN,
ENABLED, DEFER, FLAGS, COLPROP, ADTNAME, ADTOWNER, CHARSETID,
CHARSETFORM, FSPRECISION, LFPRECISION, CHARLEN, TFLAGS, 100
FROM SYS.EXU8COLU WHERE TOBJID = :1 ORDER BY INTCOLID;
Looking at the execution plan of this query we can see that it uses a 'MERGE JOIN CARTESIAN'.
If we explain this query in 9i and 10g databases we can check the following:
1) In 9i there is no 'MERGE JOIN CARTESIAN'
2) In 10g, if we use Cost based optimizer, we have OPTIMIZER_MODE=CHOOSE or
ALL_ROWS, then there is the MERGE JOIN CARTESIAN' in the access plan
3) In 10g, if we set OPTIMIZER_MODE=RULE, the the right access path is used and there is no
'MERGE JOIN CARTESIAN' . When we use the RULE based optimizer the access plan is
similar to the 9i one.
This problem only reproduces if there are statistics gathered for the dictionary schema.
Sign In with your My Oracle Support account
Don't have a My Oracle Support account? Click to get started
My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms