ORA-00600: 內部錯誤程式碼, 引數: [qosdDirRead: dircnt mismatch], [809], [808],

raysuen發表於2020-03-31

問題描述:

        上午一套RAC例項頻繁報警ORA-00600: 內部錯誤程式碼, 引數: [qosdDirRead: dircnt mismatch], [809], [808]。經過MOS查詢只發現在12.1中存在bug,但在12.2中已經被修復了。


資料庫的版本:12.2.0.1

伺服器OS版本:redhat 7.3


處理過程:

        無奈只能提交SR,透過SR的指示操作,問題解決。下面是操作過程

SQL> col dir_own# for 9999999999999999
SQL> with aa as (select count(*) aa_cnt,dir_own# from opt_directive$ group by dir_own#)
select * from aa,opt_directive_own$ bb
where aa.dir_own#(+)=bb.dir_own#
and dir_cnt<>aa.aa_cnt;
    AA_CNT        DIR_OWN#          DIR_OWN#      DIR_CNT
---------- ----------------- ----------------- ----------
       809 ################# #################          808
SQL> col dir_own# for 99999999999999999999
SQL> /
    AA_CNT        DIR_OWN#          DIR_OWN#      DIR_CNT
---------- --------------------- --------------------- ----------
       809  11352894694518622562  11352894694518622562          808
SQL> update opt_directive_own$ a set dir_cnt=(select count(*) from opt_directive$ b where a.dir_own#=b.dir_own#)
where dir_own#=11352894694518622562;
  2  
1 row updated.
SQL> commit;
Commit complete.
SQL>  with aa as (select count(*) aa_cnt,dir_own# from opt_directive$ group by dir_own#)
select * from aa,opt_directive_own$ bb
where aa.dir_own#(+)=bb.dir_own#
and dir_cnt<>aa.aa_cnt;
  2    3    4  
no rows selected
SQL>
SQL> with aa as (select count(*) aa_cnt,dir_own# from opt_directive$ group by dir_own#)
select * from aa,opt_directive_own$ bb
where aa.dir_own#(+)=bb.dir_own#
and aa.dir_own#=11352894694518622562;
  2    3    4  
    AA_CNT        DIR_OWN#          DIR_OWN#      DIR_CNT
---------- --------------------- --------------------- ----------
       809  11352894694518622562  11352894694518622562          809

 

    




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28572479/viewspace-2683635/,如需轉載,請註明出處,否則將追究法律責任。

相關文章