/* importta alınan hata: Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA Total estimation using BLOCKS method: 113.3 GB Processing object type SCHEMA_EXPORT/TABLE/TABLE ORA-39014: One or more workers have prematurely exited. ORA-39029: worker 1 with process name "DW00" prematurely terminated ORA-31671: Worker process DW00 had an unhandled exception. ORA-00600: internal error code, arguments: [qesrcRO_Dol2RO], [0x000000000], [0x000000000], [0x000000000], [], [], [], [], [], [], [], [] ORA-00955: name is already used by an existing object ORA-06512: at "SYS.KUPW$WORKER", line 1838 ORA-06512: at line 2 12737666 ORA-600 [qesrcro_dol2ro] / result cache corruption */
Result cache corruption hatası alırsanız düzeltmek için disable/enable etmek gerekiyor;
select * from GV$RESULT_CACHE_DEPENDENCY; select * from GV$RESULT_CACHE_MEMORY; select * from GV$RESULT_CACHE_OBJECTS; select * from GV$RESULT_CACHE_STATISTICS;
Node1:
SQL> select instance_name from v$instance; INSTANCE_NAME ---------------- TSTDB1 SQL> SELECT dbms_result_cache.status() FROM dual; DBMS_RESULT_CACHE.STATUS() -------------------------------------------------------------------------------- CORRUPT SQL> SQL> SET SERVEROUTPUT ON SQL> EXECUTE DBMS_RESULT_CACHE.MEMORY_REPORT R e s u l t C a c h e M e m o r y R e p o r t Cache is corrupt. PL/SQL procedure successfully completed.
Node2:
SQL> select instance_name from v$instance; INSTANCE_NAME ---------------- TSTDB2 SQL> SELECT dbms_result_cache.status() FROM dual; DBMS_RESULT_CACHE.STATUS() -------------------------------------------------------------------------------- ENABLED SQL> SQL> SET SERVEROUTPUT ON SQL> EXECUTE DBMS_RESULT_CACHE.MEMORY_REPORT R e s u l t C a c h e M e m o r y R e p o r t [Parameters] Block Size = 1K bytes Maximum Cache Size = 125856K bytes (125856 blocks) Maximum Result Size = 6292K bytes (6292 blocks) [Memory] Total Memory = 6258808 bytes [0.124% of the Shared Pool] ... Fixed Memory = 185400 bytes [0.004% of the Shared Pool] ... Dynamic Memory = 6073408 bytes [0.121% of the Shared Pool] ....... Overhead = 142400 bytes ....... Cache Memory = 5792K bytes (5792 blocks) ........... Unused Memory = 16 blocks ........... Used Memory = 5776 blocks ............... Dependencies = 4 blocks (4 count) ............... Results = 5772 blocks ................... SQL = 5770 blocks (5770 count) ................... PLSQL = 2 blocks (2 count) PL/SQL procedure successfully completed.
— Disable the result cache
alter system set RESULT_CACHE_MAX_SIZE=0;
— Check status: should return “BYPASS”
SELECT dbms_result_cache.status() FROM dual;
— Re-enable the result cache
alter system set RESULT_CACHE_MAX_SIZE=;
— Check status: should return “ENABLED”
SELECT dbms_result_cache.status() FROM dual;
— Generate a report
execute dbms_result_cache.memory_report
Eğer halen result chache hata alırsa db instance ı yeniden başlatmamız gerekir.
alter system set RESULT_CACHE_MAX_SIZE=0; alter system set RESULT_CACHE_MAX_SIZE=125856K
Bizdeki mevcut durumda şöyle; elimizde dursun;
show parameters result client_result_cache_lag integer 3000 client_result_cache_size integer 0 result_cache_max_result integer 5 result_cache_max_size integer 128876544 result_cache_mode string MANUAL result_cache_remote_expiration integer 0