今早使用dblink调用远程库的存储过程时报错,
一、问题现象如下:
SQL> exec sbp_report.p_report@test(201604,'1','330782');begin sbp_report.p_report@test(201604,'1','32'); end;
ORA-04052: 在查找远程对象 ZJJB.SBP_REPORT@test时出错
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-06544: PL/SQL: 内部错误, 参数: [55916], [], [], [], [], [], [], []
ORA-06553: PLS-801: 内部错误 [55916]
ORA-02063: 紧接着 2 lines (起自 test)
二、查看资料后发现原因如下:
只要在11g中调用10.1版本
(补丁小于10.1.0.5)或10.2版本(补丁小于10.2.0.2)数据库中的过程,就会引发这个错误。
三、解决方法:
除了打补丁升级之外,没有什么好的临时解决方法。将10g的数据库升级到10.1.0.5或10.2.0.2版本以上,可以避免问题的产生。