ORA-00600 Argument [psdmsc.c: Spawned Type Invalid] Raised Compiling Pipelined Function (Doc ID 1185303.1)

Last updated on JULY 05, 2017

Applies to:

PL/SQL - Version: 10.2.0.4 to 11.2.0.1 - Release: 10.2 to 11.2
Information in this document applies to any platform.
***Checked for relevance on 02-Sep-2010***

Symptoms

The error
ORA-00600: internal error code, arguments: [psdmsc.c: spawned type invalid], [], [], [], [], [], [], []
is raised when compiling a pipelined function returning a PL/SQL table of table%ROWTYPE, in the following scenario:
- the table referenced in table%ROWTYPE is owned by a different schema than the function,
- there is another function in another schema having the same name as the failing function,
- this 'other function' refers to the same table as the failing function,
- this 'other function' is either in the same schema as the table or in a different one.

An example of test case is

connect / as sysdba
drop user ta cascade;
drop user tb1 cascade;
drop user tb2 cascade;

create user TA identified by TA;
grant connect, resource to TA;

create user TB1 identified by TB1;
grant connect, resource to TB1;

create user TB2 identified by TB2;
grant connect, resource to TB2;

connect TA/TA
create table ta_table ( id number , value varchar2(100) );
grant select on ta_table to TB1;
grant select on ta_table to TB2;

connect TB1/TB1
create or replace package tb_pkg as
type ta_tab is table of TA.ta_table%rowtype;
function f_ta return ta_tab pipelined;
end;
/
show errors

alter package tb_pkg compile;

connect TB2/TB2
create or replace package tb_pkg as
type ta_tab is table of TA.ta_table%rowtype;
function f_ta return ta_tab pipelined;
end;
/
show errors

alter package tb_pkg compile;

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