Oracle ORA-00600

Saya memiliki pernyataan SQL SELECT yang mengembalikan:

    Error: ORA-00600: internal error code, arguments: [qerpfAllocateR], [], [], [], [], [], [], []

Jika saya mempersempit hasil saya dengan menambahkan satu kondisi lagi di klausa WHERE semuanya baik-baik saja.

Adakah yang tahu apa yang terjadi?

Sunting:

    select * from ( select tbl1.col1, ..., tbl1.points
    from table1 tbl1, table2 tbl2
    where tbl1.tbl2FK = tbl2.PK and
          tbl2.col1 = someNumber and
          tbl1.dateColumn = to_date('27-10-2008','dd-mm-yyyy')
    order by tbl1.points desc ) s where rownum <= 3 

EDIT2:

Admin DB saya menyarankan solusi yang berhasil:

select * from (select rank() over (order by tbl1.points desc) rank,
                  tbl1.col1, ..., tbl1.points
           from table1 tbl1, table2 tbl2
           where tbl1.tbl2FK = tbl2.PK and
                 tbl2.col1 = someNumber and
                 tbl1.dateColumn = to_date('27-10-2008','dd-mm-yyyy')) s
     where s.rank <= 3

person Chobicus    schedule 04.02.2009    source sumber
comment
Silakan tentukan versi database, platform, dan tingkat patch.   -  person Jeffrey Kemp    schedule 10.07.2010
comment
Punya masalah yang sama di sini, tetapi menemukan solusi untuk mencapai apa yang saya butuhkan. stackoverflow.com/questions/8923091/   -  person radu florescu    schedule 19.01.2012


Jawaban (8)


Semoga berhasil mendapatkan dukungan dari Oracle...

Namun serius, setiap kali saya mengalami masalah ini, mengatur ulang kueri sedikit biasanya membantu. Mungkin sedikit mengutak-atik indeks.

person Tamas Czinege    schedule 04.02.2009
comment
Dengan kata lain: Saya tidak tahu. Itu ajaib. Coba goyangkan tongkat voodoo ke arah lain. Menata ulang kueri akan membantu hingga Anda mengalami masalah yang sama lagi. Ini disebabkan oleh bug di Oracle dan mungkin ada perbaikan untuk itu. Jika tidak ada, Anda harus mengirimkan laporan bug. - person Apocalisp; 04.02.2009
comment
@Apocalisp: Pertama, saya ragu kemungkinan ada perbaikan - mungkin ada. Menunggu perbaikan bug bisa memakan waktu cukup lama dan jika Anda tidak ingin menunda proyek Anda tanpa batas waktu, Anda perlu mencari solusinya. Dengan kata lain: Dia membutuhkan solusi sekarang, bukan dalam 6 minggu - person Tamas Czinege; 04.02.2009
comment
Dan itulah yang terjadi dalam kasus ini - tidak ada perbaikan, DBA menyarankan solusi dan berhasil - semua orang senang, proyek tidak tertunda, semoga Oracle akan mengeluarkan patch suatu saat nanti. - person Tamas Czinege; 04.02.2009
comment
Saya mengalami masalah ini beberapa waktu lalu dan menemukan beberapa diskusi OTN/Oracle Forum yang juga menghubungkan ini dengan bug internal Oracle. Saya kesulitan menemukannya saat ini atau saya akan memberikan tautannya. Ini hanya muncul ketika melakukan jenis pemilihan bersarang tertentu (tidak yakin properti apa yang menyebabkan hal ini). Terkadang kueri berhasil, terkadang tidak... mungkin ada hubungannya dengan indeks. Meskipun membuat frustrasi, saya akan memilih apa yang berhasil daripada mencoba mendapatkan tambalan. Saya cukup yakin ada Oracle SR/TAR untuk itu tetapi tidak yakin apakah itu sudah diperbaiki di v baru. - person aw crud; 12.02.2010

Kesalahan ORA-0600 menunjukkan kesalahan internal pada Oracle itu sendiri. Kemungkinan besar Anda terkena bug Oracle.

Jika Anda membuka http://metalink.Oracle.com, Anda dapat mencari bug sebenarnya, jika memang demikian diketahui, dengan menempelkan "argumen" dan jejak tumpukan penuh ke dalam alat pencarian ORA-0600. Lihat catatan metalink 153788.1.

Jika terdapat bug yang diketahui dengan deskripsi tersebut, kemungkinan besar sudah tersedia patch yang dapat Anda unduh dan instal. Jika ini bukan bug yang diketahui, hubungi dukungan.

person Apocalisp    schedule 04.02.2009

Apa pertanyaan lengkapnya?

http://www.orafaq.com/wiki/ORA-00600 menyarankan Anda sebaiknya laporkan kesalahan tersebut ke Oracle.

person tehvan    schedule 04.02.2009

ORA-00600 pada dasarnya berarti Anda telah merusak server Oracle (bukan contohnya, hanya server yang melayani permintaan Anda).

Hampir selalu ada file jejak di lokasi bdump Anda. Ini mungkin tidak akan banyak membantu Anda, tetapi akan sangat membantu dukungan Oracle.

Hal ini umumnya disebabkan oleh bug Oracle, dan berdasarkan pengalaman, tidak banyak yang dapat Anda lakukan untuk mengatasinya kecuali meningkatkan SR melalui metalink (ini adalah solusi yang disarankan dari Oracle). Mereka akan mencoba mereplikasi masalah tersebut dan jika beruntung, jika itu adalah bug, maka pada akhirnya akan menemukan jalannya ke dalam patch.

Namun dalam jangka pendek (misalnya, hari - bulan), solusi realistis utama adalah mengatasinya.

Meskipun menaikkan SR tidak banyak membantu Anda dan bisa menjadi pengalaman yang membuat frustrasi, hal ini layak dilakukan, karena dapat menghemat waktu orang lain setelah bug diperbaiki.

person Matthew Watson    schedule 06.02.2009

Bug ini biasanya berhubungan dengan pengoptimal. Saya pikir bahkan perubahan terkecil dalam kueri seperti mengganti urutan tabel1 dan tabel2 di klausa FROM mungkin memaksa pengoptimal untuk memilih paket lain yang tidak akan mengalami kesalahan ini.

person Tal    schedule 04.02.2009

Solusi saya:

Masalah

masukkan deskripsi gambar di sini

INI TIDAK BEKERJA MENDAPATKAN KESALAHAN [0600]

SQL> shutdown abort
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.

Total System Global Area 1904054272 bytes
Fixed Size                  2404024 bytes
Variable Size             570425672 bytes
Database Buffers         1325400064 bytes
Redo Buffers                5824512 bytes
Database mounted.
SQL> recover database
Media recovery complete.
SQL> alter database open
  2
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1],
[108], [615], [655], [], [], [], [], [], [], []`

INILAH SOLUSI SAYA UNTUK MASALAH INI:

    SQL> Startup mount
ORA-01081: cannot start already-running ORACLE - shut it down first
SQL> shutdown abort
ORACLE instance shut down.
SQL>
SQL> startup mount
ORACLE instance started.

Total System Global Area 1904054272 bytes
Fixed Size                  2404024 bytes
Variable Size             570425672 bytes
Database Buffers         1325400064 bytes
Redo Buffers                5824512 bytes
Database mounted.
SQL> Show parameter control_files

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      C:\APP\USER\ORADATA\ORACLEDB\C
                                                 ONTROL01.CTL, C:\APP\USER\FAST
                                                 _RECOVERY_AREA\ORACLEDB\CONTRO
                                                 L02.CTL
SQL> select a.member,a.group#,b.status from v$logfile a ,v$log b where a.group#=
b.group# and b.status='CURRENT'
  2
SQL> select a.member,a.group#,b.status from v$logfile a ,v$log b where a.group#=
b.group# and b.status='CURRENT';

MEMBER
--------------------------------------------------------------------------------

    GROUP# STATUS
---------- ----------------
C:\APP\USER\ORADATA\ORACLEDB\REDO03.LOG
         3 CURRENT


SQL> shutdown abort
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.

Total System Global Area 1904054272 bytes
Fixed Size                  2404024 bytes
Variable Size             570425672 bytes
Database Buffers         1325400064 bytes
Redo Buffers                5824512 bytes
Database mounted.
SQL> recover database using backup controlfile until cancel;
ORA-00279: change 4234808 generated at 01/21/2014 18:31:05 needed for thread 1
ORA-00289: suggestion :
C:\APP\USER\FAST_RECOVERY_AREA\ORACLEDB\ARCHIVELOG\2014_01_22\O1_MF_1_108_%U_.AR

C
ORA-00280: change 4234808 for thread 1 is in sequence #108


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
C:\APP\USER\ORADATA\ORACLEDB\REDO03.LOG
Log applied.
Media recovery complete.
SQL> alter database open resetlogs;

Database altered.

AKHIRNYA BERHASIL:

masukkan deskripsi gambar di sini

person z atef    schedule 23.01.2014

ORA-00600 secara umum berarti ada sesuatu yang sangat tidak terduga dan mungkin terkait dengan kerusakan database. Gejalanya bisa berupa kueri berfungsi atau tidak, bergantung pada cara formulasinya.

Contoh kehidupan:

  • Pembaruan bidang LOB salah untuk baris tertentu dengan id=‹ID›
  • Baris tidak terlihat dengan SELECT * FROM ‹table›
  • Namun: SELECT * FROM ‹table› WHERE id=‹ID› gagal dijalankan dan memberikan ORA-006000.

(Mungkin) Solusi yang digunakan pada contoh di atas

  • ekspor semua isi tabel yang dapat diakses
  • hapus tabel
  • mengimpor kembali isinya

Semoga Sukses!

person Witold Kaczurba    schedule 23.01.2019

Saya telah melihat kesalahan seperti ini ketika ada kolom XMLTYPE di tabel, menggunakan Pengembang PL/SQL. Itu tidak akan terjadi jika saya meminta Pengembang PL/SQL membuat kerangka kueri untuk saya karena itu akan menambahkan beberapa sintaks ke permintaan kolom XMLTYPE, saya tidak ingat persis apa.

person Dave Swersky    schedule 04.02.2009
comment
Tidak ada XMLTYPE yang terlibat di sini. Saya telah melihat ORA-00600 dalam berbagai keadaan yang berbeda - ini adalah kesalahan umum sehingga tidak akan menjadi kesalahan yang sama, kecuali argumennya sama dan Anda menggunakan versi/patch database yang sama. - person Jeffrey Kemp; 10.07.2010