ORA-03118: two-task coroutine has invalid state 这是什么错误啊?

cadwolf 2007-12-28 11:01:40
各位好,
我现在有两个Oracle DB (A和B) ,想要在一个DB A中tuancate另一个DB B中的表.两个DB之间建立了DBlink.
因为DBlink不支持直接使用truncate,所以我在B中写了个存储过程来truncate表,然后在A中通过DBlink去调用B中的存储过程.
现在问题是,调用有时候能成功,有时候却失败并报如下错误:
ORA-03118: two-task coroutine has invalid state ORA-02063: preceding line from LINK2DMZ

有人知道这个怎么回事吗?谢谢..
...全文
151 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cadwolf 2007-12-29
  • 打赏
  • 举报
回复
我也知道是内部错误啊~~
关键是怎么解决这个问题~~
Well 2007-12-29
  • 打赏
  • 举报
回复
对的。。因为dblink会锁住相应的表。。
bjt_ 2007-12-29
  • 打赏
  • 举报
回复
建议把B上的存储过程建成自冶事务试下,
CREATE OR REPLACE PROCEDURE

IS

PRAGMA AUTONOMOUS_TRANSACTION;

BEGIN

....
commit;

END;

ruihuahan 2007-12-28
  • 打赏
  • 举报
回复
ORA-03118: 内部错误

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧