Slow Performance With NVL or NVL2 Referencing PL/SQL Function Even When Ignoring the Function's Result
(Doc ID 2093132.1)
Last updated on NOVEMBER 27, 2019
Applies to:Oracle Database - Enterprise Edition - Version 18.104.22.168 and later
Oracle Database Cloud Schema 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
Oracle Database Cloud Exadata Service - Version N/A and later
Information in this document applies to any platform.
A SQL query calls a PL/SQL function protected by NVL or NVL2, where the first argument value is such that the argument containing the PL/SQL function should be ignored:
- NVL(1, slow_func())
- NVL2(null, slow_func(), 2)
Following is sample testcase:
The user-defined function is called even though its result is not needed, causing slow response time.
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