My Oracle Support Banner

Memory Corruption Errors - ORA-7445: [_intel_new_memcpy] ORA-600: [kgh_heap_sizes:ds] While Gathering Statistics (Doc ID 1362249.1)

Last updated on MARCH 11, 2019

Applies to:

Oracle Database - Enterprise Edition - Version 11.1.0.7 to 11.2.0.3 [Release 11.1 to 11.2]
Oracle Database Exadata 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
Information in this document applies to any platform.

Symptoms

Gather table statistics using DBMS_SCHEDULER fails with memory corruption internal errors such as:

ORA-7445: [_intel_new_memcpy()+5347] [ACCESS_VIOLATION]

ORA-600: [kgh_heap_sizes:ds], [0x047B30438]

ORA-07445: exception encountered: core dump [PC:0xF4E0] [SIGSEGV] [ADDR:0x210C7ADD4] [PC:0xF4E0] [Address not mapped to object] []

 
The generated trace file shows a current sql like:

----- Current SQL Statement for this session (sql_id=6r2cq3841a8aw) -----
/* SQL Analyze(1) */ select /*+ full(t) no_parallel(t) no_parallel_index(t) dbms_stats cursor_sharing_exact
use_weak_name_resl dynamic_sampling(0) no_monitoring no_substrb_pad */ to_char(count("<COL1>")),to_char(substrb(dump(min("<COL1>"),16,0,32),1,120)),
to_char(substrb(dump(max("<COL1>"),16,0,32),1,120)),to_char(count("<COL2>")),
. . . . . . . .
to_char(substrb(dump(max("FAX"),16,0,32),1,120)) from "<SCHEMA>"."<TABLE_NAME>" t /* NDV,NIL,NIL,NDV,NIL,NIL,NDV,NIL,NIL,NDV,NIL,NIL,NDV,NIL,NIL,NDV,NIL,NIL,NDV,NIL,
NIL,NDV,NIL,NIL,ND.............NIL,NIL,NDV,NIL,NIL*/


The call stack trace associated with these errors is:

intel_new_memcpy qeaeMinmax qeaeMin qergsFetch opifch2 kpoal8 opiodr kpoodrc rpiswu2 kpoodr xupirtrc upirtrc kpurcsc kpufch0
kpufch OCIStmtFetch2 qksanExecSql qksanAnalyzeSql qksanAnalyzeSegSql kestsGatherSqlStati stics kestsProcessSql kestsProcessSqlCallout
spefcmpa out spefmccallstd pextproc peftrust psdexsp ed rpiswu2 psdextp pefccal pefcal pevm_FCAL pfrinstr_FCAL pfrrun_no_tool pfrrun
plsql_run peidxr_run peidxexe kkxdexe kkxmpexe kgmexwi kgmexec evapls evaopn2 kkxmexcs opiexe kpoal8 opiodr kpoodr xupirtrc upirtrc
kpurcsc kpuexec OCIStmtExecute jslvec_e xeccb1 jslvswu xeccb1 jslve_execute0 jslve_execute rpiswu2 kkjex1e kkjsexe kkjrdp opirip opidrv


Analyzing the table from the current sql, e.g. "<SCHEMA>"."<TABLE_NAME>", with VALIDATE STRUCTURE CASCADE does not return an error.

An initial investigation points to <Bug 11872912>,  Bug 11887399 and <Bug 10013177>,  but even if <Patch 10013177> is installed, the issue still occurs.

If we create a copy of this table and try to insert the data from the original table to the new table, it fails with:

SQL> insert into <new_table_name> select * from original_table;
insert into work_table select * from original_table
*
ERROR at line 1:
ORA-12899: value too large for column "<NEW_TABLE_NAME>"."COLUMN_NAME" (actual:  52, maximum: 22)


Checking deeper, the following information is found:

SQL> select max(COLUMN_NAME) from original_table ;

MAX(COLUMN_NAME)
------------
25

SQL> select min(column_name) from original_table ;
select min(column_name) from original_table
*
ERROR at line 1:
ORA-03113: end-of-file on communication channel
Process ID: 4896
Session ID: 56 Serial number: 19793

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.