My Oracle Support Banner

ORA-07445 [expCheckExprEquiv()+260] In 12gR1 When CURSOR_SHARING=FORCE (Doc ID 2099261.1)

Last updated on FEBRUARY 16, 2019

Applies to:

Oracle Database - Enterprise Edition - Version 12.1.0.2 and later
Information in this document applies to any platform.

Symptoms

In 12.1.0.2, the execution of a query that has the same function on GROUP BY and SELECT list can fail with:

ORA-07445: exception encountered: core dump [expCheckExprEquiv()+260] [SIGSEGV] [ADDR:0x1F7000856831826] [PC:0x10CB18A84] [Address not mapped to object] []

An example with such a query is:

---- Current SQL Statement for this session (sql_id=6mnq4ssshmfnh) -----
SELECT DISTINCT <COL1>,
<COL2>,
DECODE(<COL3>,:"SYS_B_00",:"SYS_B_01",<COL4>) AS <NAME>,
<COL5>,
COL6>,
....
GROUP BY <COL1>,
<COL2>,
DECODE(<COL3>,:"SYS_B_00",:"SYS_B_01",<COL4>),
...

 The call stack trace associated with this error is:

call stack:
===========
... expCheckExprEquiv <- kkqtutlChkOpnEquiv <- kkqvtSyncBinds <- kkqvtdrv <- kkqdrv <- kkqctdrvIT <- apadrv <- opitca <- kksFullTypeCheck <- rpiswu2 <- kksSetBindType <- kksfbc...

 

Changes

We met all of the following:

  - cursor_sharing is set to FORCE
  - query has the same function on GROUP BY and SELECT list ( example:DECODE(<COL3>,:"SYS_B_00",:"SYS_B_01",<COL4>) AS <NAME>)
  - the function contains one or more literals
  - the query should signal ORA-979, but instead produces an internal error

Cause

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
Symptoms
Changes
Cause
Solution
References


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