Query gets ORA-24777 using "dblink" when connecting from DB2 on AS400 through ODP4DRDA
(Doc ID 1950085.1)
Last updated on AUGUST 31, 2023
Applies to:
Oracle Database Provider for DRDA - Version 12.1.0.2 and laterLinux x86-64
Symptoms
After connecting from DB2 on AS400 iSeries v7.1 through DP4DRDA 12.1.0.2
to Oracle Database 12.1.0.1 on Linux x86-64, query using "dblink"
(to Oracle 12.1 Database) gets "ORA-24777: use of non-migratable database link not allowed".
Connection, and query with dblink, works from DB2 Connect EE on Linux x86-64
through DP4DRDA 12.1.0.2 to Oracle Database 12.1.0.1 on Linux x86-64.
DP4DRDA trace (ORACLE_HOME/log/diag/dps/(instance)/drdaproc/trace/) contains:
Entering SetEffectiveSchema at 2014-10-08 07:58:47.420415000
ORATEST QSQL400.QSQL0000 DynamicRules: R, Stmt#0 Type: 101
Applying DYNAMIC RULES: DRDAUSR
Exiting SetEffectiveSchema, RC= 0 at 2014-10-08 07:58:47.420526000
MyMemoryAlloc(4200) => 0xfdced0
OCIStmtPrepare2(0xfaa040[@0xfdd848],0xfad400,27,L=1) -> RC=0
OCIStmtExecute(0xfaa040[0xfdd848]) -> RC=-1
Entering dpsaddoeDoOciError at 2014-10-08 07:58:52.481824000
From line 530
Oracle Errno = 24777
Entering dpsaddoEProcessOracleError at 2014-10-08 07:58:52.482937000
errP(59):ORA-24777: use of non-migratable database link not allowed
There are 12 tokens in the text.
MyMemoryAlloc(4280) => 0xfddf40
Parse error offset is 21
OCIAttrGet(h0xfdd848,OCI_ATTR_STATEMENT) -> RC=0 (sqlstmtP=0xfdd7a8, len=27)
There are 6 tokens in the text.
Stmt SQL(27) >>select * from dbname@<DBLINK> <<
Entering SetEffectiveSchema at 2014-10-08 07:58:47.420415000
ORATEST QSQL400.QSQL0000 DynamicRules: R, Stmt#0 Type: 101
Applying DYNAMIC RULES: DRDAUSR
Exiting SetEffectiveSchema, RC= 0 at 2014-10-08 07:58:47.420526000
MyMemoryAlloc(4200) => 0xfdced0
OCIStmtPrepare2(0xfaa040[@0xfdd848],0xfad400,27,L=1) -> RC=0
OCIStmtExecute(0xfaa040[0xfdd848]) -> RC=-1
Entering dpsaddoeDoOciError at 2014-10-08 07:58:52.481824000
From line 530
Oracle Errno = 24777
Entering dpsaddoEProcessOracleError at 2014-10-08 07:58:52.482937000
errP(59):ORA-24777: use of non-migratable database link not allowed
There are 12 tokens in the text.
MyMemoryAlloc(4280) => 0xfddf40
Parse error offset is 21
OCIAttrGet(h0xfdd848,OCI_ATTR_STATEMENT) -> RC=0 (sqlstmtP=0xfdd7a8, len=27)
There are 6 tokens in the text.
Stmt SQL(27) >>select * from dbname@<DBLINK> <<
Oracle err=24777:"ORA-24777: use of non-migratable database link not allowed"
Unrecognized Oracle Error 24777; sending SQLCODE=-84, SQLSATE=42612
===
Updating Severity Code to 8
Entering WriteSQLCARD at 2014-10-08 07:58:52.484998000
Entering SQLCAWriteFifo at 2014-10-08 07:58:52.485045000
SQLCA: sqlcode=-84 sqlstate=42612 sqlerrproc=DSNprsqs
===
Entering dpsaaptwep_PpTaskWorkEntryPoint at 2014-10-08 07:59:26.789890000
CMN:RecvDSSChain DSS 0xf578a0
ALERT: short receive, 0 bytes, wanted 2
ALERT "hdr < 2" for PID 10971: REPLYCP-1232, RAISECP-1232, CODE-0040,
SVRCOD-0040
ALERT: short receive, 0 bytes, wanted 4
ALERT "hdr < 6" for PID 10971: REPLYCP-124C, RAISECP-114A, CODE-0001,
SVRCOD-0008
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Cause |
Solution |
References |