Erreur ORA-00600

Résolu/Fermé
cybospam Messages postés 11 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 24 novembre 2008 - 23 oct. 2007 à 12:57
 tufi - 17 févr. 2013 à 18:00
Bonjour

J'ai un update a faire dans une table via une requete assez complexe et j'obtiens une erreur Oracle :

update tdb.tb_rf_event_threshold_aml t
*
ERROR at line 1:
ORA-00600: internal error code, arguments:

Sur le site Oracle il semble que quelqu'un ait deja rencontre ce type d'erreur, mais comme bien souvent et bien que le message date de 2003, aucune reponse n'a ete fournie pour resoudre le pb.

Pour info, la version Oracle utilisée est la 9.2.0.6 et l'OS est AIX 5.2.

La requete complete est :

update tdb.tb_rf_event_threshold_test t
set t.min_value=coalesce((select thr.min_value from(
with tab as(
select h.high_account_type_sk,
mp.account_sk,
tt.txn_type_sk,
ms.total_value value,
abs(ms.total_value-mp.avg_value)/mp.sd_value sd_fr_avg_va,
ms.total_value/mp.avg_value many_avg_va
from pdb.tb_pr_monthly_profile_aml mp,
pdb.tb_pr_monthly_summary_aml ms,
tdb.tb_rf_high_account_type h,
tdb.tb_rf_txn_type tt,
tdb.tb_rf_account a
where mp.account_sk=ms.account_sk
and mp.account_sk=a.account_sk
and a.high_account_type_sk=h.high_account_type_sk
and mp.txn_type_sk=tt.txn_type_sk
and ms.txn_type_sk=tt.txn_type_sk
and ms.month_sk= 92
and mp.sd_value <>0
and mp.avg_value<>0)
select tab.high_account_type_sk,
tab.txn_type_sk,
min(value)*(3/5) min_value
from tab
where tab.sd_fr_avg_va>3
and tab.many_avg_va>2
group by tab.high_account_type_sk,
tab.txn_type_sk) thr
where t.txn_type_sk=thr.txn_type_sk and
t.high_account_type_sk=thr. high_account_type_sk)
,
-- default values taken if necessary from TDB.tb_rf_event_threshold_aml table --
(select et.min_value
from tdb.tb_rf_event_threshold_aml et
where
t.event_type_sk=et.event_type_sk and
t.txn_type_sk=et.txn_type_sk and
t.high_account_type_sk=et.high_account_type_sk)
)
where t.event_type_sk in (1,2);

Merci d'avance pour votre aide car il y a urgence.

Cdt
C

4 réponses

cybospam Messages postés 11 Date d'inscription jeudi 19 juillet 2007 Statut Membre Dernière intervention 24 novembre 2008 6
23 oct. 2007 à 16:49
Bonjour


Au final il semblerait que ce soit un bug au niveau Oracle qui existe au moins jusqu'a la version 9.0.2.6.
Les table_spaces TEMP et USERS doivent etre mis en "Locally managed" au lieu de "DICTIONNARY"

Voici les manips que nous avons faites pour resoudre notre probleme.

En esperant que ca aide ceux qui se heurteront a ce pb.

Cdt
C.

1. EXEC DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL ('USERS') --> To change user tablespace to locally managed

2. drop and recreate the TEMP and USERS tablespace of oracle to locally managed instead of dictionary

SQL> select * from dba_tablespaces where tablespace_name in ('TEMP','USERS');

TABLESPACE_NAME BLOCK_SIZE INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE MIN_EXTLEN STATUS CONTENTS LOGGING FOR
------------------------------ ---------- -------------- ----------- ----------- ----------- ------------ ---------- --------- --------- --------- ---
EXTENT_MAN ALLOCATIO PLU SEGMEN DEF_TAB_
---------- --------- --- ------ --------
USERS 4096 20480 20480 1 249 50 0 ONLINE PERMANENT LOGGING NO
LOCAL USER NO MANUAL DISABLED

TEMP 4096 1048576 1048576 1 0 1048576 ONLINE TEMPORARY NOLOGGING NO
LOCAL UNIFORM NO MANUAL DISABLED
5