同事在procedure里用了一个hint 语法, 结果编译的时候,过程挂死,看了alert log,错误信息如下:
kewastUnPackStats(): bad magic 1 (0x888f54, 0)
kewastUnPackStats(): bad magic 1 (0x888f54, 0)
kewastUnPackStats(): bad magic 1 (0x888f58, 0)
kewastUnPackStats(): bad magic 1 (0x888f58, 0)
kewastUnPackStats(): bad magic 1 (0x888f58, 0)
kewastUnPackStats(): bad magic 1 (0x888f58, 0)
测试库是11gR2的。 这个语法在10g上执行没有错误。 在MOS 上搜了一下,确实了Oracle bug: 8730312。
把patch 下载下来打上之后编译没有问题了,但是调用的时候报了一个ORA-的错误。 这个提示就比过程直接挂死强多了。
打Patch之前要把DB 给停掉,不然会报如下错误:
Running prerequisite checks...
Prerequisite check "CheckActiveFilesAndExecutables" failed.
The details are:
Following executables are active :
/home/oracle_app/11gR2/bin/oracle
ApplySession: Prerequisite check "CheckActiveFilesAndExecutables" failed.
OPatch failed with error code 74
关于Patch的更多内容参考我的Blog:
Oracle 补丁体系 及 opatch 工具 介绍
http://www.cndba.cn/Dave/article/1459