Rumah > pangkalan data > tutorial mysql > Oracle SQL中使用正则表达式 执行报ORA-07445 [_intel_fast_memcpy.A()+10]

Oracle SQL中使用正则表达式 执行报ORA-07445 [_intel_fast_memcpy.A()+10]

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-07 17:17:36
asal
1367 orang telah melayarinya

Oracle SQL中使用正则表达式 执行报ORA-07445 [_intel_fast_memcpy.A()+10] 错误,这里导致这个错误是Oracle 的 bug:4440681,不

Oracle 版本:10.2.0.1

OS: Linux 64位

在SQL中使用了正则:

SELECT COUNT(*)

FROM  T

WHERE REGEXP_LIKE(T.NOTE, '^(.|+)*(\(二种同时存在一种\))+', 'i')

第一次可以执行,第二次执行报ORA-7445,session 中断。

Trace 文件中的记录如下:

Exception signal: 11 (SIGSEGV), code: 1(Address not mapped to object), addr: 0x5e, PC: [0x2a95574358,_intel_fast_memcpy.A()+10]

*** 2012-07-25 17:01:42.331

ksedmp: internal or fatal error

ORA-07445: exceptionencountered: core dump [_intel_fast_memcpy.A()+10] [SIGSEGV] [Address notmapped to object] [0x00000005E] [] []

MOS上有篇文档说明:

Ora-7445 [Kghalp] using REGEXP or TABLEfunctions [ID 415567.1]

在Oracle 10.1.0.4 到10.2.0.2 版本,在SQL 中使用正则表达式或者TABLE()函数。可能会触发ORA-7445的错误。MOS中提到的是:

ORA-07445: exception encountered: core dump[kghalp()+53]

这里的core dump 与我这里的有所不同,根据MOS的说明,在使用正则或者表函数导致的ORA-7445错误,core dump 还应该包含:kghalp evarxalc lxreggenpblxregcomp lxkRegexpComp  ...

这里导致这个错误是Oracle 的 bug:4440681,不过我这里的现象和这个bug 有一定出入,但也排除了其他的几个可能的原因。还是怀疑和这个bug有关,该Bug 在oracle 10.2.0.3以后的版本中已经修复,让朋友将DB 升级到10.2.0.4,在测试一下。

linux

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan