ORA-28112: failed to execute policy function [message #415909] |
Wed, 29 July 2009 14:20  |
|
Hi,
I ran below code
SQL> set serveroutput on time on timing on;
14:58:46 SQL> DECLARE
14:58:53 2 NAMESPACE VARCHAR2(32767);
14:58:53 3 ATTRIBUTE VARCHAR2(32767);
14:58:53 4 VALUE VARCHAR2(32767);
14:58:53 5 USERNAME VARCHAR2(32767);
14:58:53 6 CLIENT_ID VARCHAR2(32767);
14:58:53 7
14:58:53 8 BEGIN
14:58:53 9 NAMESPACE := NULL;
14:58:53 10 ATTRIBUTE := NULL;
14:58:53 11 VALUE := NULL;
14:58:53 12 USERNAME := NULL;
14:58:53 13 CLIENT_ID := NULL;
14:58:53 14
14:58:53 15 --SYS.DBMS_SESSION.SET_CONTEXT ( NAMESPACE, ATTRIBUTE, VALUE, USERNAME, CLIENT_ID );
14:58:53 16 dbms_session.set_context( 'CLIENTCONTEXT', 'WORKSPACE', TO_CHAR('null') );
14:58:53 17 COMMIT;
14:58:53 18 END;
14:58:54 19 /
PL/SQL procedure successfully completed.
and after running this when selecting data from table getting below error.
ERROR at line 1:
ORA-28112: failed to execute policy function
Anyone having any idea?
Regards
|
|
|
|
Re: ORA-28112: failed to execute policy function [message #415916 is a reply to message #415909] |
Wed, 29 July 2009 14:45   |
|
I checked the trace file and error is coming at below code
188 SELECT COUNT(*)
189 INTO v_view
190 FROM USER wu
191 WHERE id = v_id
192 AND user = v_user
193 AND EXISTS (
194 SELECT 1
195 FROM ROLE_MAT
196 WHERE ro_id = wu.role_id
197 AND r_id = g_view
198 );
199
200 IF v_view = 1 THEN
201
202 RETURN '1=1';
203
204 ELSE
205
206 RETURN
207 'EXISTS (
208 SELECT 1
209 FROM PERM_VW
210 WHERE c_id = DOC_VW.c_id
211 AND d_id = DOC_VW.d_id
212 AND id = sys_context( ''CLIENT'', ''USER'')
213 )';
214
215 END IF;
And trace file error comes as
Policy function execution error:
Logon user : USER
Table/View : DOC_VW
Policy name : DOC_VW_POLICY
Policy function: VPD_PKG.DOC
ORA-01722: invalid number
ORA-06512: at "VPD_PKG", line 188
ORA-06512: at line 1
|
|
|
|
|
|
|
|
|
|
Re: ORA-28112: failed to execute policy function [message #425212 is a reply to message #425094] |
Thu, 08 October 2009 01:35  |
 |
vamsi kasina
Messages: 2112 Registered: October 2003 Location: Cincinnati, OH
|
Senior Member |
|
|
amorphous4u wrote on Wed, 07 October 2009 18:50Yes thats true but when i added an exception and captured the variable values they are not NULL. Although the values are correct and present in database.
New code will help us to analyze.
By
Vamsi
|
|
|