Gaurav Soni
Gaurav Soni

Reputation: 6346

Oracle Error: ORA-00600: internal error code, arguments: [13009], [5000], [1], [17], [1], [], [], [], [], [], [], []::

I am getting a weird problem while running one procedure .

Proc is like shown below :

procedure abc 
IS 
CURSOR xyz_cur IS
 SELECT x
       ,y
       ,z 
 from temp 
  where y IN ('abc'.'pqr'.'def','sql','pqw') 
for update nowait;
BEGIN

open xyz_cur ;
:
:

END abc;

now earlier the cursor query was without 'sql','pqw' .I have extented this IN statement with these two varchar values .And the table temp is having a check constaint on column y ,i have also extended the check constaints .

Now how can i resolve my problem ,it works well without the two value that i recently added .

What i have tried , i have analysed the table and rebuild the indexes but the still no luck .Please help me

Upvotes: 0

Views: 9217

Answers (2)

Frank Schmitt
Frank Schmitt

Reputation: 30835

Metalink mentions several problems related to SELECT.. FOR UPDATE resulting in an ORA-00600 [13009], although none seems to fit your problem exactly (you don't use 10g or earlier, and you have no tree queries) - I'd suggest contacting Oracle support.

Possible workarounds you could try:

  • use a UNION ALL in your cursor definition (one branch for each of your y values)
  • if you've got a finite set of y values: invert your logic with y not IN ...

Upvotes: 3

cagcowboy
cagcowboy

Reputation: 30878

An ORA-600 indicates an "Internal Error", which, in theory at least, you should never see.

In the first instance I'd suggest restarting your database.

If the problem persists after that I'd contact Oracle Support.

Upvotes: 5

Related Questions