重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 17|回复: 0
打印 上一主题 下一主题

[Oracle] 往ORACLE 大对象中插入数据报:ora-600 [25027]

[复制链接]
跳转到指定楼层
楼主
发表于 5 小时前 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
直接贴MOS上的原文吧:

ORA-00600 [25027] [x] [0] Raised by Insert into LOB (Doc ID 1608861.1)       

In this Document

Symptoms
Cause
Solution
References


Applies to:
Gen 1 Exadata Cloud at Customer (Oracle Exadata Database Cloud Machine) - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Cloud Exadata Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Oracle Database Cloud Schema Service - Version N/A and later
Information in this document applies to any platform.
Symptoms
Inserts,updates to table with LOB fail with ORA-00600 [25027] [x] [0] where x is the tablespace number (ts#) for the tablespace that has the LOB.

Trace file shows the stack function similar to:

krtd2abh  kcbgcur  ktspgfblk3  ktsplbfmb  ktsplbrecl  ktspgsp_main  kdlgsp_init  kdl_write1  kdlf_write   koklicbf  koklcre
Cause
The cause of this error can be LOST IO which may produce other errors like ORA-600 [kdlpdba:kcbz_objdchk] during INSERT.

The problem described in Bug 13869187 is because a Block is marked as Formatted in the ASSM metadata L1 bitmap block but the block is unformatted for the LOB segment.  

The 3rd argument may not be always 0 (zero) as the problem is that if the block is unformatted, Oracle still tries to locate a pdba assuming that the block is formatted and that pdba offset may be zero when the block is empty (affected block has never formatted:block flag 0x01 or flag 0x05 and type is zero).  If the block is formatted for a former dropped object, then the argument can be different than  zero.

DBMS_SPACE_ADMIN.ASSM_SEGMENT_VERIFY with verify_option=>DBMS_SPACE_ADMIN.SEGMENT_VERIFY_SPECIFIC and attrib=>DBMS_SPACE_ADMIN.BITMAPS_CHECK may sometimes identify if this is a permanent inconsistency; it may be canceled when visiting the first problematic block,  thus may not identify all affected blocks.

Syntax example of executing the above procedure:

exec DBMS_SPACE_ADMIN.ASSM_SEGMENT_VERIFY('SYS','T_C2_LOB','LOB',null,DBMS_SPACE_ADMIN.SEGMENT_VERIFY_SPECIFIC,DBMS_SPACE_ADMIN.BITMAPS_CHECK)





Note that if DBMS_SPACE_ADMIN.ASSM_SEGMENT_VERIFY does not report any errors, it does not mean that the problem is not there.









Solution
The error is fixed by:

recreating the table using exp-drop-import.

OR

Move the lob in a new tablespace.

Alter table <name> move lob(&lob_column) store as (tablespace &tbsp);





References
BUG:16788868 - ORA-600 [25027], [7], [0] RUNNING JDBC JOB

BUG:13785904 - ORA-600 [25027] [TS#] [0] WHILE INSERT ON TABLE WITH LOBSEGMENT


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-11-28 16:44 , Processed in 0.090758 second(s), 21 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表