oracle更新存储过程包需重启,更新子存储过程,为什么必须重启weblogic server才能生效?...

环境:

操作系统 IBM AIX 6.1

oracle数据库版本 10.2.0。5

weblogic 版本 9.2

问题:

有功能程序调用存储过程A,但是存储过程A又调用存储过程B,现修改优化存储过程B的一个SQL语句(加暗示),修改后检查数据库失效对象,不存在失效对象。第二天用户使用对应功能时,报错,提示“无法找到对应的存储过程B或存储过程B失效“,再次检查还是不存在失效对象。然后手动重新编译存储过程B及存储过程A,因为是业务高峰期,编译较长时间编译完成,但是重新访问对应功能,依然报错“无法找到对应的存储过程B或存储过程B失效“,然后重启一个应用server,对应server上的功能访问不报错了,但是其他没重启的server上的功能还是报错,直到全部server重启后,应用通过F5地址访问才恢复正常。

1、修改单独的存储过程,不涉及多层调用的存储过程时,没发现必须重启server才生效的问题。

是涉及子存储过程修改必须要重新server才能生效吗?

正常的存储过程有变化,首次访问会自动编译,编译通过后后续应用访问都正常的?

2、存储过程内容变化,为什么跟应用server有关,是存在缓存吗?缓存在哪里?为什么需要重启生效?

谢谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值