Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Help insert with a select using a DB Link - ORA-03106: fatal two-task communication protocol error
I have an INSERT statement that inserts into a table based on the
result of a SELECT statement. This select statement uses two views
(outer joined) through a databas link.
I get the following errors when I execute this SQL:
ORA-03106: fatal two-task communication protocol error ORA-02063: preceding line from DBLINK1 ORA-02063: preceding 2 lines from DBLINK1
The insert statement has 21 columns. One of these columns uses 2
concate functions in the select portion (ex. CONCATE((CONCATE(a,b),c))
.
For brevity here is an example of what I am doind. Only the field
names are different.
INSERT INTO table (
columns ...)
(SELECT columns...
FROM table1_at_dbLink1, table2_at_dblink1
WHERE table1.field = table2.field(+)
);
When I run the select portion by itself it works fine. It will return about 2.5 million rows so I know the insert will be slow.
To get the data there are a series of DB links that span 4 machines
(counting my server).
The views used by this select statement are based on views on another
server (using a DB Link). These source views are based on Tables from
another server (using a DBLink). Should this matter? It's still a
view to my system - how it is populated should not matter. All my
queires on these views work.
Any idea what causes these errors? I have search newsgroup archives and the few references to these errors are only question - no answers.
Thanks for any help,
Don Received on Thu Jul 18 2002 - 19:41:09 CDT