My Oracle Support Banner

Running an External Procedure in a 12.1 Database Creates a Socket File that is Never Removed (Doc ID 2303089.1)

Last updated on JANUARY 30, 2019

Applies to:

PL/SQL - Version 12.1.0.1 to 12.1.0.2 [Release 12.1]
Information in this document applies to any platform.
*** Checked for relevance on 5th Sep 2017 ***

Symptoms

Every time the 12.1 external procedure agent (extproc) is started from a database session, a socket file, whose name begins with "s#", is created in directory /var/tmp/.oracle (Linux, Solaris) or /tmp/.oracle (AIX, HP).  When the database session ends and the extproc process terminates, the file is not removed.  If the inode limit on the device is reached, for instance when running applications that make many connections which call external procedures, this can lead to application crashes.

The problem reproduces whether the extproc process is started by the database or the listener.  Socket files may also be created even when the extproc process fails to load with:

Shutting down the database or listener does not remove these files.

Changes

This issue is typically encountered when the database is upgraded to 12.1.0.1 or 12.1.0.2 from a pre-12c release.

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.