My Oracle Support Banner

Granting Privileges On An Object May Cause Invalidations (Doc ID 1987947.1)

Last updated on AUGUST 11, 2024

Applies to:

Oracle E-Business Suite Technology Stack - Version 12.2.2 to 12.2.4 [Release 12.2]
Oracle Database - Enterprise Edition - Version 12.1.0.2 to 12.1.0.2 [Release 12.1]
Information in this document applies to any platform.

Symptoms

Granting privileges on an object may cause object invalidations in the current edition.

Grants cannot be performed in the run edition when the application is being used. The requirement is to run an online patching whenever
granting privileges on objects in the APPS schema to other users.  When grants are given to stub objects it invalidates all dependent stub objects. This
might not be acceptable for customers when the objects are being used by running Applications.

Changes

 In 12.2 When grants are given to "Stub objects" it invalidates all dependent stub objects. "stub objects" are simply pointers to an actual object definition from an ancestor edition that is still being inherited by the given edition.

ad_zd.grant_privs (created by patch 19674458:R12.AD.C) brings a new API for providing grants to objects with minimal invalidation.

Henceforth granting in 12.2 ; should be using only ad_zd.grant_privs instead of 'grant' (DDL) directly

In the following example 'X_'  is being used and an example replacement variable, that one would replace with a valid value..   ( ie.  X_OBJECT_NAME might stand for - 'FND_USERS' table ).

SQL> grant select on FND_CONCURRENT_REQUESTS TO apps;

Syntax:
------------
ad_zd.grant_privs(
X_PERMISSIONS in varchar2, /* comma-seperated permission list */
X_OBJECT_NAME in varchar2, /* name of APPS object or APPS synonym */
X_GRANTEE in varchar2, /* grantee schema or role */
X_OPTIONS in varchar2 default NULL); /* grant options, example: 'WITH
GRANT OPTION' */

TYPICAL Example
================
exec AD_ZD.grant_privs('SELECT', 'FND_RESPONSIBILITY', 'MSC',X_GRANT_TO_TABLE=>TRUE)

PL/SQL procedure successfully completed.

SQL> exec AD_ZD.revoke_privs('SELECT','FND_RESPONSIBILITY','MSC');

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.