I'm working with version 10.0.5.1710 against a 12C Multitenant database with one PDB and the root-container.
When I look at the source of the shared packages I'm seeing twins. E.g. with UTL_MATCH:
CREATE OR REPLACE PACKAGE utl_match IS
PACKAGE utl_match IS
FUNCTION edit_distance(s1 IN VARCHAR2, s2 IN VARCHAR2)
FUNCTION edit_distance(s1 IN VARCHAR2, s2 IN VARCHAR2)
RETURN pls_integer;
RETURN pls_integer;
PRAGMA interface(c, edit_distance);
PRAGMA interface(c, edit_distance);
....
I guess you're are doing something like
select *
from dba_source
where owner = 'SYS'
and name = 'UTL_MATCH'
and type = 'PACKAGE'
order by line
but with 12c this only works within CDB$ROOT. You'll have to include the current container-id.
select *
from dba_source
where owner = 'SYS'
and name = 'UTL_MATCH'
and type = 'PACKAGE'
and origin_con_id = SYS_CONTEXT ('USERENV', 'CON_ID')
order by line
When I look at the source of the shared packages I'm seeing twins. E.g. with UTL_MATCH:
CREATE OR REPLACE PACKAGE utl_match IS
PACKAGE utl_match IS
FUNCTION edit_distance(s1 IN VARCHAR2, s2 IN VARCHAR2)
FUNCTION edit_distance(s1 IN VARCHAR2, s2 IN VARCHAR2)
RETURN pls_integer;
RETURN pls_integer;
PRAGMA interface(c, edit_distance);
PRAGMA interface(c, edit_distance);
....
I guess you're are doing something like
select *
from dba_source
where owner = 'SYS'
and name = 'UTL_MATCH'
and type = 'PACKAGE'
order by line
but with 12c this only works within CDB$ROOT. You'll have to include the current container-id.
select *
from dba_source
where owner = 'SYS'
and name = 'UTL_MATCH'
and type = 'PACKAGE'
and origin_con_id = SYS_CONTEXT ('USERENV', 'CON_ID')
order by line