My Oracle Support Banner

ODSEE - Directory Server Crash Issues: How to Use Libumem on Solaris to Capture a Better Core File for Heap Corruptions (Doc ID 1292634.1)

Last updated on FEBRUARY 14, 2022

Applies to:

Oracle Directory Server Enterprise Edition - Version 5.1 to 11.1.1.7.0 [Release 5.0 to 11gR1]
Information in this document applies to any platform.
Add *** ***

Goal

If a Directory Server crashes as the result of a Memory Heap Corruption (or other possible causes) the core (crash) file may be unusable.  Enabling Libumem and waiting for the next crash will give additional debugging data for Oracle Support's use.

In most cases the core will contain the shi_allocSmall2 and MemAllocPtr functions in the first two frames of the crashing thread.  In this case, Thread (lwp) 22 crashed.

 

The existance of the shi_allocSmall2 and MemAllocPtr functions in the thread indicate a Heap Corruption and the real reason for the crash is not contained in the core file.  This is where libumem comes into play.  Normally in a heap corruption issue the crashing element does not cause a crash and the (memory space) heap is overwritten erasing the evidence of the issue.  The server crashes some time later and the reason for the crash is lost. Libumem will not allow the heap to be corrupted by the crashing element and exits immediately trapping the real reason for the crash in the core file.

Solution

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
Goal
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.