When we rebuild an index without the online option, oracle directly reads the data of the original index. When we add the online option, oracle directly scans the data in the table, so how to maintain the consistency of the index segment data? It is the data change from the start of creation to the completion of index creation...
From the moment the index starts to rebuild online, oracle will first create a system temporary log table SYS_JOURNAL_xxx. The structure is similar to the mlog $ _ table, through the internal trigger, records the changes in the table when the rebuild index starts. After the index is created, new data is directly written into the index, you only need to maintain the changes in the SYS_JOURNAL_xxx log table to the index.
When rebuild index online fails, the smon process clears sys_journal_xxx (xxx is object_id) and other inconsistent items. Before smon clears them, you can no longer rebuild index online. to clear them, you need to execute the online_index_clean process of dbms_repare package to process them...
In 9206, 9207, and 10.2.0.1, smon does not quickly clear the objects caused by index rebuild online failure. In 9208, 10.2.0.2, and 11g, this bug is fixed. therefore, in versions 9206, 9207, and 10.2.0.1, when we perform index rebuild online for large indexes, do not interrupt the rebuild index online operation at will, otherwise, it may take a long time for smon to clear the temporary object...
An error occurred while reading the last data migration process.
* ** 00:49:06. 353
Ksedmp: internal or fatal error
Current SQL statement for this session:
Delete from sms_sendinfo where reqid <=: B2 and ldate <= to_date (: B1, 'yyyy-mm-dd hh24: MI: ss ')
----- PL/SQL call stack -----
Object line Object
Handle number name
0x6fd95924 56 procedure SMS. pro_bak_sendinfo
0x65ce87f0 1 anonymous Block
* ** 00:05:54. 978
Ksedmp: internal or fatal error
Current SQL statement for this session:
Delete from sms_sendinfo where reqid <=: B2 and ldate <= to_date (: B1, 'yyyy-mm-dd hh24: MI: ss ')
----- PL/SQL call stack -----
Object line Object
Handle number name
0x7c94cec8 56 procedure SMS. pro_bak_sendinfo
0x6b439074 1 anonymous Block
* ** 00:04:09. 323
Ksedmp: internal or fatal error
Current SQL statement for this session:
Delete from sms_sendinfo where reqid <=: B2 and ldate <= to_date (: B1, 'yyyy-mm-dd hh24: MI: ss ')
----- PL/SQL call stack -----
Object line Object
Handle number name
0x6f3bf314 56 procedure SMS. pro_bak_sendinfo
0x6fe5595c 1 anonymous Block
Correlation between checklists and Indexes
Analyze table sms_sendinfo validate Structure Cascade
ORA-01499: Table/index cross reference failure-see trace file
ORA-08102: index key not found, OBJ #51692, file 6, block 153602 (2)
Ind_msgid_routeid_tphone