My Oracle Support Banner

ORA-07445 [qkexrXformAndOr] in Oracle Database Server (Doc ID 1292805.1)

Last updated on JUNE 06, 2019

Applies to:

Oracle Database - Enterprise Edition - Version and later
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Information in this document applies to any platform.


SELECT FROM table fails with ORA-7445 [qkexrXformAndOr] when it uses a SUBQUERY in a CURSOR() call.


1. Issue reproduces in
2. Issue doesn't reproduce in
3. Issue reproduces at will
4. Issue doesn't reproduce if EXIST is not present
5. Issue reproduces if EXIST is replaced with IN / NOT IN
6. The issue has been seen also for the following query generated by Oracle Transportation Management application:

select gm_group, gm_type, gm_class, gm_redirect, gm_description, cursor (select distinct gm_member from groupmembers g2 where g2.gm_group=g.gm_group and (g2.gm_member='everyone' or exists (select rowid from groupmembers g3 where g2.gm_member=g3.gm_group) or exists (select rowid from gl_user where g2.gm_member=gl_user_gid)) order by gm_member) from groupmembers g where gm_member='*' and gm_group=:1 order by gm_group

7. Issue doesn't reproduce if t2.member='everyone' is eliminated
8. In OTM 6.1 and 6.2 this query is not used. This query was used in 6.0 and earlier.

Call stack:

...<-qeesTraverseExpr <- qkexrXformOpn <- qkxrXformOpn <- qerflAllocate <- qknRwsAllocateTree <- ...


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

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.