报错信息:
*** 2014-08-27 11:27:06.856
ksedmp: internal or fatal error
ORA-07445: exception encountered: core dump [upderh()+388] [SIGBUS] [Invalid address alignment] [0x1000063636F7596] [] []
找出当前SQL语句:
/Current SQL statement for this session
Current SQL statement for this session:
update persistent_orders SET server = :1, Stepping = Stepping +1 , archived=:2, archive_date=:3, archive_time=:4 where id = :5 AND Stepping =:6 RETURNING Stepping INTO :7
找出绑定变量:
先找出Cursor Dump 的部分:
/Cursor Dump
******************** Session Cursor Dump **********************
Current cursor: 3, pgadep: 0
Open cursors(pls, sys, hwm, max): 2(0, 0, 64, 500)
NULL 0 SYNTAX 0 PARSE 0 BOUND 2 FETCH 0 ROW 0
Cached frame pages(total, free):
4k(7, 4), 8k(1, 1), 16k(0, 0), 32k(0, 0)
pgactx: 391761338 ctxcbk: 391760940 ctxqbc: 0 ctxrws: 3952a3958
可以看出Current cursor为3,接着搜索Cursor bind部分:
/Cursor#3
找出7个绑定变量对应的value值;
----------------------------------------
Cursor#3(ffffffff7c0317f8) state=BOUND curiob=ffffffff7c041168
curflg=44 fl2=400 par=0 ses=3a2678480
sqltxt(39e348b20)=update persistent_orders SET server = :1, Stepping = Stepping +1 , archived=:2, archive_date=:3, archive_time=:4 where id = :5 AND Stepping =:6 RETURNING Stepping INTO :7
hash=30e6b02b6e300ff2df3c28925a0e4ed2
parent=3927d94f8 maxchild=03 plk=39b8a2c88 ppn=n
cursor instantiation=ffffffff7c041168 used=1409110026
child#0(39295bbc8) pcs=391208df0
clk=394443350 ci=39bf2e998 pn=39422b298 ctx=391761338
kgsccflg=1 llk[ffffffff7c041170,ffffffff7c041170] idx=d3
xscflg=c0110676 fl2=d14000c fl3=42222008 fl4=100
Bind bytecodes
Opcode = 16 Out Bind Twotask start
Opcode = 25 Out Bind Shift Bind
Bind Position = 6
Opcode = 26 Out Bind Twotask Scalar Dmlreturning Indicator Return code
Oac = 39661b5d8
Opcode = 2 Bind Twotask Scalar Sql In (may be out) Copy
oacdef = 39661b4b8 Offsi = 48, Offsi = 0
Opcode = 2 Bind Twotask Scalar Sql In (may be out) Copy
oacdef = 39661b4e8 Offsi = 48, Offsi = 32
Opcode = 2 Bind Twotask Scalar Sql In (may be out) Copy
oacdef = 39661b518 Offsi = 48, Offsi = 64
Opcode = 2 Bind Twotask Scalar Sql In (may be out) Copy
oacdef = 39661b548 Offsi = 48, Offsi = 96
Opcode = 2 Bind Twotask Scalar Sql In (may be out) Copy
oacdef = 39661b578 Offsi = 48, Offsi = 128
Opcode = 2 Bind Twotask Scalar Sql In (may be out) Copy
oacdef = 39661b5a8 Offsi = 48, Offsi = 160
Opcode = 10 Bind Scalar Out(not in)
oacdef = 39661b5d8 Offsi = 48, Offsi = 192
kkscoacd
Bind#0
oacdty=01 mxl=32(15) mxlc=00 mal=00 scl=00 pre=00
oacflg=00 fl2=1000000 frm=01 csi=31 siz=200 off=0
kxsbbbfp=ffffffff7c05fb20 bln=32 avl=15 flg=05
value="anonymous.whxt1"
Bind#1
oacdty=01 mxl=32(01) mxlc=00 mal=00 scl=00 pre=00
oacflg=00 fl2=1000000 frm=01 csi=31 siz=0 off=32
kxsbbbfp=ffffffff7c05fb40 bln=32 avl=01 flg=01
value="1"
Bind#2
oacdty=01 mxl=32(08) mxlc=00 mal=00 scl=00 pre=00
oacflg=00 fl2=1000000 frm=01 csi=31 siz=0 off=64
kxsbbbfp=ffffffff7c05fb60 bln=32 avl=08 flg=01
value="20140827"
Bind#3
oacdty=01 mxl=32(08) mxlc=00 mal=00 scl=00 pre=00
oacflg=00 fl2=1000000 frm=01 csi=31 siz=0 off=96
kxsbbbfp=ffffffff7c05fb80 bln=32 avl=08 flg=01
value="11:27:06"
Bind#4
oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
oacflg=00 fl2=1000000 frm=00 csi=00 siz=0 off=128
kxsbbbfp=ffffffff7c05fba0 bln=22 avl=05 flg=01
value=16175713
Bind#5
oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
oacflg=00 fl2=1000000 frm=00 csi=00 siz=0 off=152
kxsbbbfp=ffffffff7c05fbb8 bln=22 avl=02 flg=01
value=19
Bind#6
oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
oacflg=00 fl2=1000000 frm=00 csi=00 siz=0 off=176
kxsbbbfp=ffffffff7c05fbd0 bln=22 avl=01 flg=01
value=0
Frames pfr ffffffff7c05ff80 siz=6840 efr ffffffff7c05fea0 siz=6800
Cursor frame dump
enxt: 4.0x00000668 enxt: 3.0x00000658 enxt: 2.0x000000e0 enxt: 1.0x00000cf0
pnxt: 2.0x00000008 pnxt: 1.0x00000020
kxscphp ffffffff7c039e70 siz=984 inu=520 nps=376
kxscbhp ffffffff7c040478 siz=984 inu=536 nps=224
Session cached cursors
可以将绑定变量的值带入SQL语句中,重新跑一遍,看是否能再次触发该ora-7445报错。