ORA-600 [QCTCTE1] On Query Rewrite Using Nested Mviews and Window Operation in Execution Plan
(Doc ID 733783.1)
Last updated on FEBRUARY 28, 2019
Applies to:Oracle Database - Enterprise Edition - Version 10.2.0.4 and later
Information in this document applies to any platform.
A query rewrite using nested materialized views and "windowing" sum() over () functions generated an ORA-600 [QCTCTE1] error in 10.2.0.4. The first mview was a filter on a standard view. The second mview was based on the first mview and contained the sum() over() functions.
The following shows the use of the sum() over() "windowing" functions in the second mview:
A testcase was provided and tested on other versions of the database, as well:
- In 220.127.116.11, setting "alter session set optimizer_dynamic_sampling = 4;" generated an ORA-3113 error.
- In 18.104.22.168, when optimizer_dynamic_sampling was not set, the error did not produce, but the rewrite used the wrong mview, resulting in a higher optimizer cost than if the rewrite had not been done.
- In 22.214.171.124, the error did not produce and the rewrite worked as desired.
In 10.2.0.4, the ORA-600 [QCTCTE1] call stack was as follows:
qctcte <- xtyqbcb <- qctcpqb <- qctcpqb <- opitca <- kksLoadChild <- kxsGetRuntimeLock <- kksfbc <- kkspsc0 <- kksParseCursor <- opiosq0 <- kpooprx <- kpoal8 <- opiodr <- kpoodr <- upirtrc <- kpurcsc <- kpuexecv8 <- kpuexec <- OCIStmtExecute <- qksanAnalyzeSql <- 012 <- kkqsxt <- spefcmpa <- spefmccallstd
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document