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

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

WBOY
Release: 2016-06-07 17:17:36
Original
1334 people have browsed it

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

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template