My Oracle Support Banner

Spfile Creation Fails With ORA-01078, LRM-00111, or ORA-600[kghfrempty:ds] When Using Long UTL_FILE_DIR Value (Doc ID 1083742.1)

Last updated on JANUARY 30, 2022

Applies to:

Oracle Database - Enterprise Edition - Version to [Release 10.2 to 11.2]
Information in this document applies to any platform.

NOTE: In the images and/or the document content below, the user information and data used represents fictitious data .Any similarity to actual persons, living or dead, is purely coincidental and not intended in any manner.


This issue was observed on Oracle 64-bit on a HP-UX Itanium server, on a two node RAC database

Problem description
Spfile creation from a pfile fails with memory errors.
There are very long strings for the utl_file directory. There are separate utl_file_dir parameters for each node.
It succeeds when only one utl_file_directory string is used.
It fails when there are two utl_file_directory strings.
Each utl_file_dir parameter exceeds 16K

The spfile creation fails with these messages:
ORA-01078: failure in processing system parameters
LRM-00111: no closing quote for value '<piece of utl_file_dir parameter>'

The alert log shows the error:
ORA-00600: internal error code, arguments: [kgh_heap_sizes:ds], [0x60000000001F5390], [], [], [], [],
ORA-00600: internal error code, arguments: [kghfrempty:ds], [0x60000000001F5390], [], [], [], [], [], []

The trace file shows the failing statement:
create spfile='/tmp/<filename>.txt' from pfile='<pfilename>.txt'

The function stack shows the error occurred when trying to allocate a new memory extent from the free list.
kgesin <- kghnerror
$cold_kghfrempty kghgex kghalf kghstack_overflow_internal kghstack_alloc ksmals ksprszsp
kspcsetsp <- kspsetsp <- ksplrmfn <- lrmpfi <- kspcspfp <- kspocte

The trace file shows that there are memory overwrites of extent descriptors, and the
text in the overwrite is the text from the utl_file_dir parameter.
EXTENT 19 addr=60000000001f5390
ERROR extent at 60000000001f5390 contains wrong ds 3132272c272f7661
***** Dump of memory around addr 60000000001f5390:
60000000001F4390 6964776B 742F6C6F 672F6477 3230272C [<piece of utl_file_dir parameter>]




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

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