ORA-12547 & TNS-01158: Listener Stops Allowing Connections When Rate_Limit Feature is in Place

(Doc ID 1085546.1)

Last updated on FEBRUARY 14, 2016

Applies to:

Oracle Net Services - Version to [Release 10.2 to 11.2]
Information in this document applies to any platform.


The listener may start refusing connections when the RATE_LIMIT feature is in place. 

See the following document for examples of this feature: However, the listener is not hung and an inspection of the listener.log reveals that SERVICE_UPDATEs continue after the "connection limit reached" message.  In a RAC environment, the CRS may kill the listener process since it is unreachable.

<Note 443744.1> How To Control the Amount of Connections Handled by the TNS


The symptoms of this bug are:

The following error appears in the  listener.log:

TNS-01158: Internal connection limit reached, preventing dispatcher from connecting

Then a series of SERVICE_UPDATEs:

15-APR-2010 13:45:47 * service_update * mydb * 0
15-APR-2010 13:46:41 * service_update * mydb * 0
15-APR-2010 13:47:43 * service_update * mydb * 0
15-APR-2010 13:47:56 * service_update * mydb * 0
15-APR-2010 13:48:05 * service_update * mydb * 0
15-APR-2010 13:48:15 * service_update * mydb * 0
15-APR-2010 13:48:50 * service_update * mydb * 0

Remote clients may experience the following error during this time:

ORA-12547 TNS:lost contact

Lsnrctl commands such as services or status may fail with the error code:

ORA-12547 TNS:lost contact

In a RAC installation, the listener will be killed by CRS because it has become unresponsive.


Sign In with your My Oracle Support account

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

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms