My Oracle Support Banner

Running External Procedure Generates HS_CORE* Files Intermittently In Version (Doc ID 2591716.1)

Last updated on OCTOBER 15, 2019

Applies to:

PL/SQL - Version and later
Information in this document applies to any platform.


Running external procedure in 12.2.0.x version is producing hs_core* files intermittently in $ORACLE_HOME/hs/log location. Same code runs fine in lower version of database and even in 12.2 there are no errors reported back to the application, it's just that HS_CORE* files is getting generated. If you see any of the below symptoms, then there is great chance that you are hitting this issue.

1) In the generated hs_core* file you could see the below call stack.

koccnfr -> koctcn -> kodmtrm -> kokousc -> kputac -> horcrces_CleanupExtprocSession -> hotkcsc_CleanupSessionContext -> homtwfr_WaitForRPCs

2) External procedure trace generated (by setting TRACE_LEVEL=ON in extproc.ora) shows that extproc cleanup routine did not exit gracefully. For example:

HOA 09/12 10:09:29.445391000: (horcr4_RecvEndExtprocSession) Exiting...,status = 0
HOA 09/12 10:09:29.445413000: (hotker_ExecuteRpcs) Exiting...
HOA 09/12 10:09:29.445425000: (horcrces_CleanupExtprocSession) Entered!

Ideally there should be a corresponding exit line we should see in the external procedure trace, something like below.

HOA 09/12 10:09:29.445453000: (horcrces_CleanupExtprocSession) Exiting...

3) External procedure could be possibly making a call back to the database using Oracle Call Interface (OCI) API's and the crash is observed when it tries to log out of Oracle (OCISessionEnd). 


Database upgraded to 12.2.0.x version or new implementation in 12.2 version. 


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.