代码改变世界

PL/SQL重新编译包无反应案例2

2017-08-10 08:03  潇湘隐者  阅读(593)  评论(0编辑  收藏  举报

在这篇"PL/SQL重新编译包无反应"里面介绍了编译包无反应的情况,今天又遇到一起案例, 在测试环境中,一个包的STATUS为INVALID,重新编译时,一直处于编译状态,检查发现下面两条因素都不存在:

 

    1:当包正在被调用执行时,编译该包会导致无响应情况。
    2:包中的对象或依赖对象被其它session所拥有。

 

后面检查发现包中调用了一个LINKED SERVER,由于迁移测试服务器,原服务器的IP地址变化了,导致LINKED SERVER已经无效了。所以出现了这种情况。重建了LINKED SERVER后,重新编译包通过!