piner的专栏

欢迎来到piner的Blog

原创 不是bug的bug?收藏

新一篇: 关于rownum排序分页会比分析函数排序快的问题。。。 | 旧一篇: 有关Oracle数据库的几个神话

我们先看如下的一系列执行:

SQL> create or replace view v_bmw_pay_online_new as
  2  select *
  3  from taobao.bmw_pay_online_new@lnk_db215;
 
SQL> create or replace procedure sp_v_test is
  2  v_id number;
  3  begin
  4     select id into v_id from v_bmw_pay_online_new where id=1;
  5  end;
  6  /

Procedure created

SQL> create or replace synonym s_bmw_pay_online_new
  2        for taobao.bmw_pay_online_new@lnk_db215;

Synonym created

SQL> create or replace procedure sp_s_test is
  2  v_id number;
  3  begin
  4     select id into v_id from s_bmw_pay_online_new where id=1;
  5  end;
  6  /

Warning: Procedure created with compilation errors

SQL> show error
Errors for PROCEDURE TAOBAO.SP_S_TEST:

LINE/COL ERROR
-------- ------------------------------------------------------------------------------------
4/29     PL/SQL: ORA-00600: 内部错误代码,参数: [17069], [0x57E77854], [], [], [], [], [], []
4/4      PL/SQL: SQL Statement ignored


可以看到,在同样一个远程对象上面,我可以通过创建视图,然后在该视图上创建存储过程,是没有任何问题的,但是如果我对该远程操作做一个同义词,再在同义词上创建存储过程,则报出了Ora-00600。跟踪也无果,看产生的日志文件也不能看出来什么,上metalink,搜索"ora-00600 17069",发现查出现的东西一大堆,大致是library cache错误,但是到底怎么会产生这个错误呢,online联系上一个oracle在线技术支持,聊了一会儿,问题是解决了,但是他就是不承认是bug,呵呵。

以下是聊天的总结:
ORA-00600 [17069] reorted on compiling a procedure.

Invalid lock in library cache.
Unable to pin the object and hence the Error.

<Note:39616.1> "Failed to pin a library cache object after 50 attempts"

Clearing the shared memory will help to get rid of inconsistant information in memory which is causing the error.

The inconsistency was suspected to be in the remote site. But flushing the shared pool in remote location didnt help.
Tried recreation of the procedure after dropping and recreating the synonym in the local database. But the same failed.
Flushed the shared pool in local database abd successfully created the procedure.

发表于 @ 2004年10月27日 10:42:00|评论(loading...)|编辑

新一篇: 关于rownum排序分页会比分析函数排序快的问题。。。 | 旧一篇: 有关Oracle数据库的几个神话

评论

#kamus 发表于2004-11-12 00:32:00  IP: 61.51.141.*
如果先作下面两步再作上面两步,是在哪儿报错?
#piner 发表于2004-11-17 16:06:00  IP: 218.108.88.*
与顺序没有关系。
#mhy119 发表于2006-04-07 16:34:00  IP: 222.66.56.*
我觉得有可能是版本的问题。我上周在10.1.0.2版本上遇到类似的问题。根据metalink的建议,数据库升级到10.2。问题解决。
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © piner