ORA-08103: object no longer exists 及 ora-00600 [2032]
Oracle 9.2.0.8 , RAC , 2 Nodes, x86-64bit .
透過trace檔案中的ORA-07445: exception encountered: core dump [pfrrun()+785]
[SIGSEGV] [Address not mapped 在oracle metalink針對9208版本查詢不到相關bug
資訊 。
下面是查詢 ORA-08103: object no longer exists 得出的一些資訊 。
symptom: Error performing a SELECT statement
symptom: ORA-08103: object no longer exists
symptom: Table is being truncated by other session
symptom: Analyze table validate structure cascade returns no errors
cause:
This ORA-08103 occurs on the next block read after the truncate command.
The LOCK TABLE IN EXCLUSIVE MODE does not prevent the table from being
SELECTED from. Thus, when the query has started and while this query runs
and the truncate occurs, this ORA-08103 may surface on the next block read.
This is considered intended behavior.
When a TRUNCATE occurs the DATAOBJ# in OBJ$ gets increased by one and thus
may lead to this ORA-08103 'object no longer exists'
fix:
Possible solutions are:
- Use DELETE instead of TRUNCATE
- Use SELECT FOR UPDATE as this will try to lock the table
檢查及確認(1,2最好在非生產階段作業) :
1. analyze table table_name validate structure ; (正在操作而報錯的table)
2. $ dbv file=xxxxx.dbf blocksize=8192 feedback=200 (可能壞塊檢查)
3. 報錯時操作的這個表是否是臨時表
4. 是否是物化檢視(mv,因為全重新整理時會truncate表)
5. 是否是檢視(view), 檢視的基表被修改或刪除可能報錯
6. 是否有人為truncate這個正在被操作的表
7. 針對出現錯誤時操作的表,是否有大量併發的update或其他操作。
alert log 檔案中還有一個錯誤 ora-00600 [2032]
ORA-600 [2032] "corrupt block during redo generation" [ID 105992.1] | |||||
| |||||
Modified 29-MAY-2008 Type REFERENCE Status PUBLISHED |
Note: For additional ORA-600 related information please read PURPOSE: This article represents a partially published OERI note. It has been published because the ORA-600 error has been reported in at least one confirmed bug. Therefore, the SUGGESTIONS section of this article may help in terms of identifying the cause of the error. This specific ORA-600 error may be considered for full publication at a later date. If/when fully published, additional information will be available here on the nature of this error. SUGGESTIONS: If the Known Issues section below does not help in terms of identifying a solution, please submit the trace files and alert.log to Oracle Support Services for further analysis. Known Issues: Bug# 3078613 See Buffer cache corruption can occur when using different DB block sizes in the same database Fixed: 9.2.0.5, 10.1.0.2 Bug# 1679690 See Buffer cache in memory corruption (OERI:2032) can lead to permanent data/index mismatch (OERI:12700) Fixed: 8.1.7.2, 9.0.1.0 References: ALERT: Apparent data corruptions involving Solaris 2.6, ISM & DR on Starfire ALERT: Possible Corruption with 8.0.4.2 on Sequent PTX
Bug 1679690 Buffer cache in memory corruption (OERI:2032) can lead to permanent data/index mismatch (OERI:12700)
This note gives a brief overview of bug 1679690.
The content was last updated on: 08-AUG-2003
Click for details of each of the sections below.Affects:
Product (Component) Oracle Server (Rdbms) Range of versions believed to be affected Versions < 9.0 Versions confirmed as being affected
Platforms affected Generic (all / most platforms affected) Fixed:
This issue is fixed in
Symptoms: | Related To: |
|
Description
A recoverable corruption of a data buffer in the cache can introduce a permanent inconsistency between the table and the index. Eg: An ORA-600 [2032] (in memory buffer corruption) can lead to a permanent ORA-600 [12700] error. Workaround: Once encountered, drop / recreate the index (do NOT use ALTER INDEX REBUILD to recreate the index). There is no preventative workaround, but this scenario is very rare as is requires there to be an in-memory corruption occuring.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-676576/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORA-8103 "object no longer exists"-8103.1Object
- ORA-8103 "object no longer exists" 診斷與解決Object
- UE5 In xxx use pin no longer exists on node Get,...打包問題。
- In和exists使用及效能分析(二):exists的使用
- exists和not exists及in和not in的用法與區別
- In和exists使用及效能分析(三):in和exists的效能分析
- [精選] SQL中的IN與NOT IN、EXISTS與NOT EXISTS的區別及效能分析SQL
- 刪除包時,報ORA-04043: object SYS_PLSQL×× dose not existsObjectSQL
- object_id 及 data_object_id (oracle)ObjectOracle
- [Oracle] exists 和 not existsOracle
- 對線面試官:SQL中的IN與NOT IN、EXISTS與NOT EXISTS的區別及效能分析面試SQL
- In和exists使用及效能分析(一):in的使用
- EXISTS、IN、NOT EXISTS、NOT IN用法區別
- sql中in和exists的原理及使用場景。SQL
- 對IN & EXISTS NOT IN & NOT EXISTS的優化優化
- EXISTS、IN、NOT EXISTS、NOT IN的區別(ZT)
- in/exists和not in/not exists執行效率
- ORA-08103物件不再存在問題分析物件
- 2032 奇數求和
- sql:delete if exists還是drop if exists?SQLdelete
- Object中有哪些公共方法及作用Object
- Database performance gets slower the longer the database is runningDatabaseORM
- oracle中關於in和exists,not in 和 not existsOracle
- P2032 掃描
- data_object_id 及 object_id 的聯絡與區別Object
- 【SQL】existsSQL
- oracle中的exists 和not exists 用法詳解Oracle
- SQL中IN,NOT IN,EXISTS,NOT EXISTS的用法和差別SQL
- Vue3.0之proxy代替object.definProperty()及object.definProperty()的缺陷VueObject
- ORA-13607: The specified task or object ,SYS_AUTO_SPCADV_xxx already existsObjectPCA
- oracle中的exists和not exists和in用法詳解Oracle
- 理解exists count
- oracle exists and not existOracle
- Object-c Block的使用及說明ObjectBloC
- Oralce 使用SQL中的exists 和not exists 用法詳解SQL
- MySQL之in與existsMySql
- in 和 exists區別
- oracle 用EXISTS替代INOracle