Skip to Main Content
  • Questions
  • ORA-00020: maximum number of processes exceeded

Breadcrumb

Question and Answer

Connor McDonald

Thanks for the question, Steve.

Asked: June 28, 2017 - 9:22 am UTC

Last updated: June 30, 2017 - 4:14 am UTC

Version: Oracle 12.1.0.2.0 Apex 5.0.3.00.03

Viewed 10K+ times! This question is

You Asked

Hi
We have an APEX 5.0.3.00.03 app running in Oracle 12c (12.1.0.2.0 64bit)
Recently the system crashed with ORA-00020: maximum number of processes (300) exceeded.
DBAs restarted the database setting the value to 600

On restart I logged onto the APEX app and into Toad and ran the following on the database
select * from v$session
this gave 173 processes

The database is only used by APEX applications.

I have been monitoring this number for the last 2 days and as the APEX app is used I can see it goes up by a few then down.
It currently stands at 175 with 2 users logged into the APEX app.

Also running the following:
select username, count(*)
from v$session
group by rollup(username);

gives
USERNAME COUNT(*)
AMIS 2
AMIS_RO 2
APEX_LISTENER 40
APEX_PUBLIC_USER 40
APEX_REST_PUBLIC_USER 40
DBSNMP 2
ORDS_PUBLIC_USER 10
39
175

Can someone please explain why we have so many processes running from startup of the database and also why APEX seems to be creating so many processes that it eventually exceeds the level and brings the system down. We have seen this issue several times previously in dev environments but this is the first time in production.

Is there any setting or something else that we should be doing to stop/limit the number of processes on this database.

Thanks for any help.


and Connor said...

How are clients connecting to Apex

- embedded gateway ?
- HTTP Server ?
- Weblogic ?
- standalone apex listener / ORDS ?

In any event, each of these has the concept of a connection pool which set the lower/upper limit for connections to the database to service Apex/ORDS requests. So check the parameters in the relevant architecture for you.

If the parameters seem OK, then it might be time to get in touch with Support - there might be a leak somewhere. Similarly, if you have long running activities in your apex apps, then these might be tying up sessions, and hence fresh requests come in and allocate more sessions.

Rating

  (1 rating)

Is this answer out of date? If it is, please let us know via a Comment

Comments

Reply

Steve Broadbent, June 29, 2017 - 7:23 am UTC

Apex is installed in a dedicated Oracle 12c database instance with a separate deployment of ORDS as the Web Listener.

The ORDS Web Listener is deployed on Apache Tomcat fronted by a load balancer configuration.

Can you let me know which parameters I need to be looking at ?

thanks
Connor McDonald
June 30, 2017 - 4:14 am UTC

Take a look here

http://docs.oracle.com/cd/E56351_01/doc.30/e87809/about-REST-configuration-files.htm#AELIG7162

to locate your config files, and then have a look at what your jdbc settings are configured to.