VPD does not work from inside PL/SQL (Doc ID 1964494.1)

Last updated on JANUARY 26, 2015

Applies to:

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

Symptoms

On 11.2.0.4, a custom package contains functions which select from objects with VPD policies.
However, when such a function is called, it behaves as if there was no VPD policy in place at all.  
Furthermore, when 10730 tracing is enabled, nothing is written to trace.
In contrast, running an equivalent query in SQL*Plus, not using the PL/SQL, behaves as expected, generating 10730 trace output as well.

Changes

 A package has been written which contains functions that select from VPD-protected objects.

Cause

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