问题描述
前不久才处理了一个ORA-600[12333]错误,不过那个问题是9i上的。
ORA-600(12333)错误和ORA-600(ttclxx1)错误:http://yangtingkun.itpub.net/post/468/526078
而这个错误是发生在10.2.0.3环境下:
Tue Jan 31 15:31:14 2012 Errors IN file /oracle/admin/ORCL/udump/orcl_ora_40960504.trc: ORA-00600: internal error code, arguments: [12333], [0], [0], [0], [], [], [], [] 详细TRACE文件如下: Dump file /oracle/admin/ORCL/udump/orcl_ora_40960504.trc Oracle DATABASE 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production WITH the Partitioning, OLAP AND DATA Mining options ORACLE_HOME = /oracle/orcl/10.2.0 System name: AIX Node name: porcl2 Release: 1 Version: 6 Machine: 00F67AD94C00 Instance name: ORCL Redo thread mounted BY this instance: 1 Oracle process NUMBER: 36 Unix process pid: 40960504, image: oracleORCL@porcl2 *** ACTION NAME:() 2012-01-31 15:31:14.454 *** MODULE NAME:(TOAD 10.5.1.3) 2012-01-31 15:31:14.454 *** SERVICE NAME:(SYS$USERS) 2012-01-31 15:31:14.454 *** SESSION ID:(5422.6391) 2012-01-31 15:31:14.454 -------------------- PROTOCOL VIOLATION -------------------- -----Page before----- 1108880E0 00 00 00 [...] -----Current Page----- nsbfdbpt 1108880e0 ifccrcp = 1108880e3, ifccrcl = 1108888d5 buffer LENGTH = 2034 1108880E0 00 00 00 00 00 00 00 00 00 00 00 00 00 [.............] 1108880F0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 110888100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 110888110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 110888120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 110888130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 110888140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 110888150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 110888160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] . . . 110888890 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1108888A0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1108888B0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1108888C0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1108888D0 00 00 00 00 00 [.....] hstflg: 0x40002991 hstcflg: 0x00000000 hstpro: 5 hstccs: (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.10.0.27)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)(CID=(PROGRAM=C:\Program Files\Quest Software\Toad FOR Oracle 10.5\Toad.exe)(HOST=HOST9)(USER=8000130559)))) --- dump of hsttti --- 1100C9E20 00 04 01 0C 0E 09 0B 0F 04 0A 03 03 01 00 00 0A [................] 1100C9E30 00 00 00 00 00 00 00 01 01 05 05 01 05 05 05 05 [................] 1100C9E40 06 06 00 00 00 00 00 07 03 03 00 00 00 00 00 00 [................] 1100C9E50 00 00 00 00 00 00 00 00 00 00 13 00 00 00 00 00 [................] 1100C9E60 00 00 00 00 0C 00 00 00 00 00 14 00 00 00 00 00 [................] 1100C9E70 00 00 00 00 00 00 00 00 00 00 00 0D 00 00 11 11 [................] 1100C9E80 04 09 00 00 00 00 05 00 22 00 12 00 13 13 15 15 [........".......] 1100C9E90 17 17 17 17 21 03 00 00 03 13 13 13 00 00 00 00 [....!...........] 1100C9EA0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1100C9EB0 00 00 04 2E 00 00 00 00 0F 0F 0F 1F 20 00 00 00 [............ ...] 1100C9EC0 00 00 00 00 00 00 00 00 00 00 00 00 0F 00 00 00 [................] 1100C9ED0 00 00 00 00 00 00 00 00 2A 00 00 00 00 00 00 00 [........*.......] 1100C9EE0 00 00 00 23 23 23 00 00 00 00 00 00 00 00 00 00 [...###..........] 1100C9EF0 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ["...............] 1100C9F00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1100C9F10 00 13 00 00 00 00 00 00 00 00 00 00 00 00 00 35 [...............5] 1100C9F20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1100C9F30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1100C9F40 00 00 03 01 03 03 03 00 00 00 03 03 03 03 03 03 [................] 1100C9F50 03 03 03 03 03 03 03 03 03 03 00 03 03 03 03 03 [................] 1100C9F60 03 03 03 03 00 00 00 03 03 03 00 03 00 03 03 03 [................] 1100C9F70 03 03 03 03 03 03 03 01 00 03 03 00 03 03 00 00 [................] 1100C9F80 00 00 03 03 00 00 00 03 00 00 00 03 00 00 00 00 [................] 1100C9F90 00 00 00 00 00 00 00 00 00 00 00 00 03 03 03 03 [................] 1100C9FA0 03 03 03 03 03 03 03 03 00 03 03 03 03 03 03 03 [................] 1100C9FB0 03 03 00 00 03 03 03 03 00 00 00 00 00 03 03 03 [................] 1100C9FC0 03 03 03 03 03 03 03 03 03 03 03 03 00 03 03 03 [................] 1100C9FD0 03 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1100C9FE0 00 00 1C 00 00 00 00 00 00 00 24 25 26 27 28 1E [..........$%&'(.] 1100C9FF0 00 00 00 2D 00 00 03 03 03 03 03 03 03 03 03 03 [...-............] 1100CA000 03 03 03 2C 00 00 00 00 00 00 00 00 00 00 00 00 [...,............] 1100CA010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1100CA020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................] 1100CA030 00 00 00 00 1A 00 00 00 00 00 00 00 00 [.............] ttclxlccst: 871 ttclxrccst: 871 ttclxlncst: 2000 ttclxrncst: 2000 ttclxccl2nr: 1 ttclxccn2lr: 1 ttclxncl2nr: 1 ttclxncn2lr: 1 ttclxrccminbpc: 1 ttclxrccmaxbpc: 3 ttclxrncminbpc: 2 ttclxrncmaxbpc: 2 ttclxflags: 0x23 prev funcode: 0x5e *** 2012-01-31 15:31:14.470 ksedmp: internal or fatal error ORA-00600: internal error code, arguments: [12333], [0], [0], [0], [], [], [], [] Current SQL statement for this session: Select CREATED, LAST_DDL_TIME, OBJECT_ID, STATUS, TIMESTAMP FROM SYS.ALL_OBJECTS WHERE object_name = :nm AND object_type = :t AND owner = :o ----- Call Stack Trace ----- calling call entry argument values in hex location type point (? means dubious value) -------------------- -------- -------------------- ---------------------------- ksedst+001c bl ksedst1 900000000312A74 ? 000000000 ? ksedmp+0290 bl ksedst 1048E2120 ? ksfdmp+0018 bl 03F34B6C kgeriv+0108 bl _ptrgl kgesiv+0080 bl kgeriv 000000013 ? 1100D1010 ? 000000000 ? 00000000A ? 1100C9B50 ? ksesic3+0060 bl kgesiv 104F4E830 ? 000000023 ? 11025E118 ? 800000000000F032 ? 3FFC000000000003 ? opitsk+0ec0 bl 01FA62EC opiino+0990 bl opitsk 000010860 ? 000000000 ? opiodr+0adc bl _ptrgl opidrv+0474 bl opiodr 3C1028E590 ? 4102909B0 ? FFFFFFFFFFFF490 ? 0A0082608 ? sou2o+0090 bl opidrv 3C02AB579C ? 4A0071248 ? FFFFFFFFFFFF490 ? opimai_real+01bc bl 01FA4A34 main+0098 bl opimai_real 000000000 ? 000000000 ? __start+0070 bl main 000000000 ? 000000000 ?
专家解答
这个600错误和其他的错误并不相同,上来不是错误信息和错误SQL,而是直接的页面DUMP信息,而且一开始就包含了协议冲突的错误信息。
经分析,问题的描述可以参考文档Bug 8625762 ORA-3137 [12333] due to bind data not read from wire。导致问题的原因在于网络连接中包含的绑定变量信息未被读取。
这个bug影响范围比较广,10.2.0.4、10.2.0.5、11.1.0.6和11.1.0.7都可能存在这个问题,而如果要解决这个问题,需要将版本升级到11.2.0.1或11.1.0.7.3,如果是10.2版本想要通过专门的补丁来修正这个问题,那么至少要先将数据库版本升级到10.2.0.4.3。
除了打补丁和升级之外,还可以尝试通过设置隐含参数”_optim_peek_user_binds”为false来避免这个bug。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。