OLS with RAC on RDBMS version 10.2 cannot support pre-10.2 clients. (Doc ID 358908.1)

Last updated on JUNE 03, 2009

Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.1
This problem can occur on any platform.
This problem can only occur on a RAC instance which deploys Oracle Label Security (OLS).

Symptoms

On a RAC database running RDBMS version 10.2.0.1 (or higher) the following problem happens when connecting with a Pre-10.2 client program (10.1.0.x , 9.2.0.x):

ERROR at line 1:
ORA-01400: cannot insert NULL into ("LBACSYS"."SESSINFO"."KEY")
<pl/sql application stack>

When calling OLS procedure sa_session.set_label as follows in sqlplus you get:

SQL> exec sa_session.set_label('EEE','BBB,FFF,GGG');
BEGIN sa_session.set_label('EEE','BBB,FFF,GGG'); END;

*
ERROR at line 1:
ORA-01400: cannot insert NULL into ("LBACSYS"."SESSINFO"."KEY")
ORA-06512: at "LBACSYS.SA_SESSION", line 347
ORA-06512: at line 1

You can verify the problem to exist as follows:

SQL> select  nvl(lbac_cache.get_unique_id,'Problem!') Unique_ID from dual;

This will either return output similar to this:

SQL> select  nvl(lbac_cache.get_unique_id,'Problem!') Unique_ID from dual;
UNIQUE_ID
--------------------------------------------------------------------------
BE9655FEE4AC4EBBA090BD2463A97BC1
Or
SQL> select  nvl(lbac_cache.get_unique_id,'Problem!') Unique_ID from dual;
UNIQUE_ID
--------------------------------------------------------------------------------
Problem!        

-

Changes

You have recently upgraded the RDBMS to 10.2 or you have enabled RAC in an existing 10.2 database, also you are using client application programs that reside on an 9.2.0 or 10.1.0 client installation.

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