dbms_hs_parallel fails with error

473 views Asked by At

I would like to load parallel data from oracle to oracle using dblink and dbms_hs_parallel package. In order to do it I have plsql listed below:

declare
  lInserted number;
begin
  dbms_hs_parallel.LOAD_TABLE('SIEBEL.S_LOY_CARD','SIEBEL', 'BRED_SIEBEL_CARDS', true, 16, lInserted);
  dbms_output.put_line(lInserted);
end;

All DB objects are valid but I get an error

"ORA-00904: "DBMS_HS_PASSTHROUGH"."AGENT_CLASS_NAME": invalid identifier

ORA-06512: at "SYS.DBMS_HS_PARALLEL", line 1097

ORA-06512: at line 4".

I'm pretty sure it fails during an attempt to insert. Because if I have no BRED_SIEBEL_CARDS in my DB, the package creates it. Which means the package does what is expected, but doesn't insert data unfortunately.

1

There are 1 answers

2
piotrp On BEST ANSWER

I believe Oracle Database docs explain why you got your error:

The remote database link name. The call can only be applied to a heterogeneous services database link.

Source: DBMS_HS_PARALLEL

Oracle DB - Oracle DB is a homogeneous connection, that does not use a Heterogeneous Services Agent, because none is required.

If you don't want to use a regular CTAS/INSERT/MERGE statement, look into dbms_parallel_execute.