ASM issue ORA-00020: maximum number of processes (%s) exceeded (DBD ERROR)

Hi All,
i am running 10.2.0.3 with ASM (10.2.0.3) on SunOS (solaris 5.9)
+ASM1> ps -ef | grep pmon
oraunity  6174     1   0   Jan 01 ?         298:37 ora_pmon_UNITYQ1
oraunity  6480     1   0   Dec 31 ?          84:21 asm_pmon_+ASM1
oraunity  6085     1   0   Mar 09 ?         127:05 ora_pmon_UNIINFQ1
oraunity 11442     1   0   Jan 01 ?         253:54 ora_pmon_UNIDWHQ1One of rdbms instanace UNIINFQ1 got some failuer due to archival error 'ORA-00257:Archiver error:connect internal only:until freed.'
To drill down that, i tried to log in to +ASM1 instance to see space utilization under ARCH destination
SQL> show parameter db_name
NAME                                 TYPE        VALUE
db_name                              string      UNIINFQ1
log_archive_dest                     string      +UNITY_DG1/UNIINFQ1/archi tried following to log in to +ASM1
UNITYQ1> export ORACLE_SID=+ASM1
+ASM1> echo $ORACLE_SID
+ASM1
+ASM1> export ORACLE_HOME=/unity-rc001-q/ora01/app/oracle/product/10.2.0/asm10g
+ASM1> echo $ORACLE_HOME
/unity-rc001-q/ora01/app/oracle/product/10.2.0/asm10g
+ASM1> sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Wed Jun 10 00:44:35 2009
Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.
Connected.
SQL> select * from v$instance;
select * from v$instance
ERROR at line 1:
ORA-01012: not logged onthen i did following
+ASM1> asmcmd
ORA-00020: maximum number of processes (%s) exceeded (DBD ERROR: OCISessionBegin)
[oraunity] mhs-clust5-qa:/unity-rc001-q/ora01/app/oracle/admin/UNIINFQ1/bdump:i have also noticed high number of BEQUETH connections to +ASM1 instance
+ASM1> ps -ef | grep +ASM1
oraunity  6486     1   0   Dec 31 ?         193:20 asm_lmon_+ASM1
oraunity  6533     1   0   Dec 31 ?          11:49 asm_ckpt_+ASM1
oraunity  6482     1   0   Dec 31 ?         108:29 asm_diag_+ASM1
oraunity  6527     1   0   Dec 31 ?           9:28 asm_mman_+ASM1
oraunity  6210     1   0   Mar 09 ?           8:03 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity  6484     1   0   Dec 31 ?           7:40 asm_psp0_+ASM1
oraunity  6488     1   0   Dec 31 ?         221:17 asm_lmd0_+ASM1
oraunity  6480     1   0   Dec 31 ?          84:21 asm_pmon_+ASM1
oraunity  6529     1   0   Dec 31 ?           8:42 asm_dbw0_+ASM1
oraunity  6535     1   0   Dec 31 ?           6:45 asm_smon_+ASM1
oraunity  6523     1   0   Dec 31 ?         241:24 asm_lms0_+ASM1
oraunity  6531     1   0   Dec 31 ?           9:22 asm_lgwr_+ASM1
oraunity  6537     1   0   Dec 31 ?           9:03 asm_rbal_+ASM1
oraunity  6539     1   0   Dec 31 ?          14:36 asm_gmon_+ASM1
oraunity  6575     1   0   Dec 31 ?          45:59 asm_lck0_+ASM1
oraunity  6328     1   0   Jan 01 ?          15:08 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity  7866     1   0 16:09:10 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity  6941     1   0 16:24:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 11553     1   0   Jan 01 ?          42:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity  5010     1   0 16:23:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity  1171     1   0 16:21:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 26147     1   0 16:18:49 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 17948     1   0 16:14:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 16097     1   0 16:13:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 19867     1   0 16:15:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 14221     1   0 16:12:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 25640  4784   0 02:36:15 pts/4       0:00 grep +ASM1
oraunity  8513     1   0 16:09:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 23732     1   0 16:17:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity  7864     1   0 16:09:09 ?           0:19 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity  3109     1   0 16:22:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 27439     1   0 16:19:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 10400     1   0 16:10:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity  5588     1   0 16:23:49 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 16667     1   0 16:13:48 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 21832     1   0 16:16:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 12308     1   0 16:11:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 29330     1   0 16:20:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oraunity 25581     1   0 16:18:30 ?           0:00 oracle+ASM1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))Can anyone help me to solve this issue without shutting down +ASM1. (this instance is used by rest 3 databases as well..so down time is not feasible)
Regards,
Bhavik Desai

You should check alert log file on database like Alex told you.
And please post Error ;)
But If You can access +ASM, Or ...by the way... if you stop database ... try to check ASM diskgroup.
$ export ORACLE_SID=+ASM1
$ sqlplus / as sysdba
SQL> set lines 130
SQL> set pages 10000
SQL> select NAME, TOTAL_MB, FREE_MB from v$asm_diskgroup;
If your DISKGROUPs for archivelog on DB full... backup or delete them
(please start database mount mode)
$ export ORACLE_SID=DB1
$ sqlplus / as sysdba
SQL> startup mount;
SQL> show parameter log_archive_dest
backup archivelog
$ rman target /
RMAN> backup ARCHIVELOG ALL DELETE INPUT format 'ARCH_%d_%U' ;
or delete
$ rman target /
RMAN> delete ARCHIVELOG ALL ;
After that ...
$ sqlplus / as sysdba
SQL> alter database open
This justs my suggestion, if your database has the problem with ASM diskgroup full ... because archvielog...
By the way... please post your result from ASM query and alert log file
Good Luck

Similar Messages

  • Java.lang.Exception: ORA-00020: maximum number of processes (150) exceeded?

    When i run my web-application with the embedded OC4J server, the following error message is prompted:
    java.lang.Exception: ORA-00020: maximum number of processes (150) exceeded
         void MyFolder.objects.MyObject.<init>(oracle.jbo.ApplicationModule, java.lang.String, java.lang.String, javax.servlet.http.HttpServletRequest)
         void MyFolder.servlet.MyServlet.doPost(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         void javax.servlet.http.HttpServlet.service(com.evermind.server.http.EvermindHttpServletRequest, com.evermind.server.http.EvermindHttpServletResponse)
         void javax.servlet.http.HttpServlet.service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         void javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
         void com.evermind.server.http.ServletRequestDispatcher.invoke(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
         void com.evermind.server.http.ServletRequestDispatcher.forwardInternal(javax.servlet.ServletRequest, javax.servlet.http.HttpServletResponse)
         boolean com.evermind.server.http.HttpRequestHandler.processRequest(com.evermind.server.ApplicationServerThread, com.evermind.server.http.EvermindHttpServletRequest, com.evermind.server.http.EvermindHttpServletResponse, java.io.InputStream, java.io.OutputStream, boolean)
         void com.evermind.server.http.HttpRequestHandler.run(java.lang.Thread)
         void com.evermind.util.ThreadPoolThread.run()
    Question:
    - What is the cause of this error message? How to avoid?
    - I intended to deploy my application to 9IAS server. Will the same problem occurs too?
    Thanks for your reply!

    Hi Pig,
    When i run my web-application with the embedded OC4J server, the following error message is prompted:
    java.lang.Exception: ORA-00020: maximum number of processes (150) exceeded
         void MyFolder.objects.MyObject.<init>(oracle.jbo.ApplicationModule, java.lang.String, java.lang.String, javax.servlet.http.HttpServletRequest)
         void MyFolder.servlet.MyServlet.doPost(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         void javax.servlet.http.HttpServlet.service(com.evermind.server.http.EvermindHttpServletRequest, com.evermind.server.http.EvermindHttpServletResponse)
         void javax.servlet.http.HttpServlet.service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
         void javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
         void com.evermind.server.http.ServletRequestDispatcher.invoke(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
         void com.evermind.server.http.ServletRequestDispatcher.forwardInternal(javax.servlet.ServletRequest, javax.servlet.http.HttpServletResponse)
         boolean com.evermind.server.http.HttpRequestHandler.processRequest(com.evermind.server.ApplicationServerThread, com.evermind.server.http.EvermindHttpServletRequest, com.evermind.server.http.EvermindHttpServletResponse, java.io.InputStream, java.io.OutputStream, boolean)
         void com.evermind.server.http.HttpRequestHandler.run(java.lang.Thread)
         void com.evermind.util.ThreadPoolThread.run()
    Question:
    - What is the cause of this error message? How to avoid?.
    From the Oracle error message documentation:
    ORA-00020 maximum number of processes (string) exceeded
    Cause: All process state objects are in use.
    Action: Increase the value of the PROCESSES initialization parameter.
    Another alternative approach may be to configure your Connection pool and/or your ApplicationModule pool to optimize the use of
    database connections and/or restrict the number of database connections used by the application. For example, if your application
    has declared many root ApplicationModules (i.e. more than one ApplicationModule pool is in use) then it may help to enable the
    jbo.doconnectionpooling switch so that each ApplicationModule instance in the pools does not maintain a dedicated database
    connection while not in use. Another alternative if you are using the BC4J connection pool (not a JDBC datasource) may be to
    restrict the number of connections the pool can create to < 150 with the jbo.maxpoolsize switch. However, please note that this
    may have an impact on throughput.
    - I intended to deploy my application to 9IAS server. Will the same problem occurs too?.
    This is a database issue. So, yes.
    Hope this helps.
    JR

  • ORA-00020: maximum number of processes (%s) exceeded

    nobody was able to log into the database. when I tried 'sqlplus / as sysdba' I got : ORA-00020: maximum number of processes 1000 exceeded
    database is 11.2.0.2 with patch 12
    I've bounced the database and increased the processes..
    my question is.. is there a way to tell what the processes were? what machine they were coming from? in a log somewhere..
    Since I was unable to log in, I couldn't tell what had happened.. who was causing it..
    if it happens again.. is there a way to log it?
    also, this machine has DataGuard to a standby system.. is it possible for something to go wrong with dataguard and cause this?

    >
    my question is.. is there a way to tell what the processes were? what machine they were coming from? in a log somewhere..
    Since I was unable to log in, I couldn't tell what had happened.. who was causing it..
    if it happens again.. is there a way to log it?
    also, this machine has DataGuard to a standby system.. is it possible for something to go wrong with dataguard and cause this?
    >
    You have only treated the symptom and not fixed the cause. As fellow members said, you could kill some "non-critical" processes and log in to the database.
    But you will have to find out why there were so many processes in place. I am sure you might have set the definite number of processes after your planning before you went live. If you suddenly see too many processes, you will have to find out why and where they are coming from. Also check if there are any rogue processes.
    To find out if there are any processes which have no sessions attached
    select spid from v$process where addr not in (select paddr from v$session);
    To answer your question, data guard shouldn't be affected by this. Nor would dataguard cause this issue in primary.
    Fix this processes issue before it's too late. Otherwise, there will be a situation when you will have to keep increasing the processes until you hit the OS limit
    Regards
    Venkat

  • ORA-00020: maximum number of processes 1000 exceeded

    Hello,
    Oracle 10.2.0.4.0
    O/S: Windows Server 2003-64 bits
    RAM: 32Gb
    Instance: opext
    show SGA
    Total System Global Area 10284433408 bytes
    Fixed Size 2180960 bytes
    Variable Size 1574353056 bytes
    Database Buffers 8690597888 bytes
    Redo Buffers 17301504 bytes
    Today at 8:01 am we've got this error:
    ORA-00020: maximum number of processes 1000 exceeded
    That incident was reported in a trace file (opext_ora_8240.trc):
    Dump file c:\oracle\product\10.2.0\admin\opext\bdump\opext_ora_8240.trc
    Tue Jul 31 08:01:03 2012
    ORACLE V10.2.0.4.0 - 64bit Production vsnsta=0
    vsnsql=14 vsnxtr=3
    Oracle Database 10g Release 10.2.0.4.0 - 64bit Production
    Windows NT Version V5.2 Service Pack 2
    CPU : 8 - type 8664, 1 Physical Cores
    Process Affinity : 0x0000000000000000
    Memory (Avail/Total): Ph:18773M/32767M, Ph+PgF:66964M/80966M
    Instance name: opext
    Redo thread mounted by this instance: 1
    Oracle process number: 0
    Windows thread id: 8240, image: ORACLE.EXE
    ORA-00020: maximum number of processes 1000 exceeded
    Died during process startup with error 20 (seq=212441)
    OPIRIP: Uncaught error 20. Error stack:
    ORA-00020: maximum number of processes (1000) exceededThis was the first time in three years that happened an incident like this. Due my Windows server allows me to setup processes and sessions with a very high value, I did it when configuring this database for the first time.
    select resource_name,initial_allocation, limit_value from V$RESOURCE_LIMIT;
    RESOURCE_NAME     INITIAL_ALLOCATION     LIMIT_VALUE
    processes     1000     1000
    sessions     1105     1105
    transactions     1215     UNLIMITEDI would like to know what application or process made that my database exceeds 1000 processes. I read that one possiblity is that there's a web app that open many connections to database and doesn't close them.
    In my listener.log, I got this at 08:05 am:
    31-JUL-2012 08:05:41 * service_update * opext * 0
    31-JUL-2012 08:05:47 * (CONNECT_DATA=(SERVICE_NAME=opext)(CID=(PROGRAM=c:\windows\system32\inetsrv\w3wp.exe)(HOST=SRVXXX)(USER=NETWORK?SERVICE))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.1)(PORT=36578)) * establish * opext * 0
    31-JUL-2012 08:05:47 * service_update * opext * 0
    31-JUL-2012 08:05:47 * (CONNECT_DATA=(SERVICE_NAME=opext)(CID=(PROGRAM=c:\windows\system32\inetsrv\w3wp.exe)(HOST=SRVXXX)(USER=NETWORK?SERVICE))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.1)(PORT=36579)) * establish * opext * 0
    31-JUL-2012 08:05:47 * (CONNECT_DATA=(SERVICE_NAME=opext)(CID=(PROGRAM=c:\windows\system32\inetsrv\w3wp.exe)(HOST=SRVXXX)(USER=NETWORK?SERVICE))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.1)(PORT=36580)) * establish * opext * 0
    31-JUL-2012 08:05:47 * (CONNECT_DATA=(SERVICE_NAME=opext)(CID=(PROGRAM=c:\windows\system32\inetsrv\w3wp.exe)(HOST=SRVXXX)(USER=NETWORK?SERVICE))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.1)(PORT=36581)) * establish * opext * 0
    31-JUL-2012 08:05:47 * (CONNECT_DATA=(SERVICE_NAME=opext)(CID=(PROGRAM=c:\windows\system32\inetsrv\w3wp.exe)(HOST=SRVXXX)(USER=NETWORK?SERVICE))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.1)(PORT=36582)) * establish * opext * 0
    31-JUL-2012 08:05:47 * (CONNECT_DATA=(SERVICE_NAME=opext)(CID=(PROGRAM=c:\windows\system32\inetsrv\w3wp.exe)(HOST=SRVXXX)(USER=NETWORK?SERVICE))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.1)(PORT=36583)) * establish * opext * 0
    31-JUL-2012 08:05:47 * (CONNECT_DATA=(SERVICE_NAME=opext)(CID=(PROGRAM=c:\windows\system32\inetsrv\w3wp.exe)(HOST=SRVXXX)(USER=NETWORK?SERVICE))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.1)(PORT=36584)) * establish * opext * 12518
    TNS-12518: TNS:listener could not hand off client connection
    TNS-12560: TNS:protocol adapter error
    Host SRVXXX is a server where a web app is and 192.168.1.1 is our firewall. May I think that this server was the one that made so many connections?
    I checked alert.log, trc file and listener.log. What else can I check to determine what was the cause of this incident?

    user521219 wrote:
    Host SRVXXX is a server where a web app is and 192.168.1.1 is our firewall. May I think that this server was the one that made so many connections?
    I checked alert.log, trc file and listener.log. What else can I check to determine what was the cause of this incident?check IIS logs
    It could result from Denial of Service attack or trojan or virus infecting webserver

  • ORA-00020: maximum number of processes (500) exceeded

    Problem Details:
    In our Database we are getting huge number of open connection from remote system.
    Let say, our application A and remote application name is B.
    Some common users of application A are USER0, USER1, USER2.
    Remote Application B uses USER0 to create views on application A's table through Database Link.
    Those views (nearly 100) are accessed in application B at several places from the Java code.
    Since those views are getting called almost all the times from the application B's code, DB link is in use almost all the time - holding many number of connections (check the first row of the query output).
    Many times the open connections remaining high and any other application, users trying to connect to application A,
    getting the ORA-00020 error.
    Note :
    1. Application B is very old application and does not use open DB link or close DB link.
    2. Application B tried with "alter session close Database link xxx", it decrease the number of open connection but its degrading the performance of application B at large scale.
    3. To cope up with this problem Application A recently incraesed the parameter process=500, but not sure if this limit can also be broken through Application B
    Questions/Doubts:
    1) What is best approach to handle this problem??
    'alter session close database link xxx' is the only option from application B's point ??
    What other approach can be taken??
    2) We are not sure the risk associated with increasing the process parameter value ??
    Appreciate your suggestion !!
    SQL>conn / as sysdba
    SQL> select substr(username,1,8),
           substr(machine,1,11),
           substr(module,1,40),
           substr(osuser,1,7),
           status,
           count(1)
      from v$session
      group by username, machine, module, osuser, status;
    USERNAME MACHINE     STATUS                        OSUSER     COUNT(1)
    USER0    remotedb9      INACTIVE                              oracle        450
    USER1    app_dev        INACTIVE                              beaadmin        1
    USER0    svr01test      ACTIVE                                bdgp_dev        1
    USER1    app_test       INACTIVE                              bbk09           2
    USER0    app_dev        ACTIVE                                dj0494          1
    USER1    app_test       INACTIVE                              pd0269          2
    USER2    app_test       INACTIVE                              oracle         12
    USER0    app_dev        ACTIVE                                oracle          2
    USER2    app_test       INACTIVE                              www             8
    USER2    dbr9db01       ACTIVE                                oracle          2
    USER2    svr01dv        INACTIVE                              bdgp_dev        1
    USER0    app_dev        INACTIVE                              scott           3
    USER2    app_test       INACTIVE                              clerk           2
    USER2    moose          ACTIVE                                john            2
    USER2    titan.homer    INACTIVE                              voipdu          1
    NEWUSER  floradbdv1     INACTIVE                              oracle          8
    SYS      app_test       ACTIVE                                oracle          1
    20 rows selected.
    SQL>conn USER0@csmip_st
    Enter password:
    ERROR:
    ORA-00020: maximum number of processes (500) exceeded
    Warning: You are no longer connected to ORACLE.

    semmsl in Linux tells what the max number of processes are. You have to make sure this is equal to the process parameter of all instances plus 10.
    It is usually in /etc/sysctl.conf
    kernel.sem = 250 32000 100 128
    SEMMSL
    The SEMMSL kernel parameter is used to control the maximum number of semaphores per semaphore set.
    Oracle recommends setting SEMMSL to the largest PROCESS instance parameter setting in the init.ora file for all databases hosted on the Linux system plus 10. Also, Oracle recommends setting the SEMMSL to a value of no less than 100.
    SEMMNI
    The SEMMNI kernel parameter is used to control the maximum number of semaphore sets on the entire Linux system.
    Oracle recommends setting the SEMMNI to a value of no less than 100.
    SEMMNS
    The SEMMNS kernel parameter is used to control the maximum number of semaphores (not semaphore sets) on the entire Linux system.
    Oracle recommends setting the SEMMNS to the sum of the PROCESSES instance parameter setting for each database on the system, adding the largest PROCESSES twice, and then finally adding 10 for each Oracle database on the system. To summarize:
    SEMMNS = sum of PROCESSES setting for each database on the system
    + ( 2 * [largest PROCESSES setting])
    + (10 * [number of databases on system]
    To determine the maximum number of semaphores that can be allocated on a Linux system, use the following calculation. It will be the lesser of:
    SEMMNS -or- (SEMMSL * SEMMNI)
    SEMOPM
    The SEMOPM kernel parameter is used to control the number of semaphore operations that can be performed per semop system call.
    The semop system call (function) provides the ability to do operations for multiple semaphores with one semop system call. A semaphore set can have the maximum number of SEMMSL semaphores per semaphore set and is therefore recommended to set SEMOPM equal to SEMMSL.
    Oracle recommends setting the SEMOPM to a value of no less than 100.
    App B could try using connection pooling or something to reduce the number of connections to the DB.

  • ORA-00020: maximum number of processes (25) exceeded ... uh?

    Hello,
    I'm trying to run a distributed simulation (13 programs x host,
    16 hosts) that uses oracle (normally in an HP) against oracle on
    linux.
    I can't start all the programs, after about 20 clients (+-) no
    other program will come up, and if i try to log to oracle with
    sqlplus i get:
    ERROR:
    ORA-00020: maximum number of processes (25) exceeded
    Is this a static limit imposed in the version oracle is
    distributing for testing purposes?
    Also, i notice that one server process is started for each client
    program. So the distributed version doesn't support multithreaded
    servers? Or may be i configured it wrong?
    -cristian
    null

    Cristian Ferretti (guest) wrote:
    : Oleg (guest) wrote:
    : : : ORA-00020: maximum number of processes (25) exceeded
    : : ------>Check PROCESSES= line in you init<SID>.ora file. After
    : you
    : : change it, you have to restart database.
    : : : Also, i notice that one server process is started for each
    : : client
    : : : program.
    : : -----> Check the following parameters in the same file:
    : : mts_dispatchers, mts_max_dispatchers, mts_servers,
    : : mts_max_servers, mts_multiple_listeners, mts_listener_address
    : processes=400
    : mts_dispatchers="tcp,16"
    : mts_dispatchers="ipc,1"
    : mts_max_dispatchers=32
    : mts_servers=16
    : mts_max_servers=32
    : mts_service=oralinux
    : sessions=384
    : Copyed them from the hp oracle config.
    : but:
    : [oralinux@toaster dbs]$ svrmgrl
    : Oracle Server Manager Release 3.0.5.0.0 - Production
    : (c) Copyright 1997, Oracle Corporation. All Rights Reserved.
    : Oracle8 Release 8.0.5.0.0 - Production
    : PL/SQL Release 8.0.5.0.0 - Production
    : SVRMGR> connect internal
    : Connected.
    : SVRMGR> startup
    : ORA-00101: invalid specification for system parameter
    : MTS_DISPATCHERS
    : ORA-00102: network protocol
    (ADDRESS=(PARTIAL=YES)(PROTOCOL=tcp))
    : cannot be used by dispatchers
    : SVRMGR>
    Erase all MTS_%
    parameters from your init.ora files and try only with
    processes=xxx
    null

  • ASM maximum number of processes (300) exceeded

    Hi Everyone,
    My Oracle database is 11g r2(11.2.0.2.0) and linux version is redhat 5.5.
    In ASM one of our diskgroup getting full. so we added 5 disks to diskgroup with size of 545 GB lun(disk) each..succesfully added diskgroups but while rebalancing is going on ASM instance got stuck and node got hanged up and from application side process got stuck up and thrown with the below error from alert log, for temporariy solution we rebooted the first node.
    ************************************************************ERROR**************************************************************************
    ORA-00240: control file enqueue held for more than 120 seconds
    Please check inst 1's alert log for more information on the blocker including a possible ORA-00494 and related incident logs
    ORA-00240: control file enqueue held for more than 120 seconds
    *ORA-00494: enqueue [CF] held for too long (more than 900 seconds) by 'inst 1, osid 377'*
    Please check inst 0's alert log for more information on the blocker including a possible ORA-00494 and related incident logs
    ORA-00240: control file enqueue held for more than 120 seconds
    ORA-00240: control file enqueue held for more than 120 seconds
    *ORA-00494: enqueue [CF] held for too long (more than 900 seconds) by 'inst 1, osid 3733'*
    ORA-15055: unable to connect to ASM instance
    ORA-00020: maximum number of processes (300) exceeded
    *ORA-00494: enqueue [CF] held for too long (more than 900 seconds) by 'inst 1, osid 565'*
    ORA-15055: unable to connect to ASM instance
    ORA-00020: maximum number of processes (300) exceeded
    Please check inst 1's alert log for more information on the blocker including a possible ORA-00494 and related incident logs
    ******************************************************ERROR*********************************************************************************
    can you please let us know the solution for the above error
    Thanks in advance
    Thanks & Regards
    Prasanth

    Hi Jos
    --> How to calculate ASM Parmaeter process? with which view i can get the information?
    -->I cheked with below command by connecting ASM instance show below like 300 process .But while doing any operation on ASM crossing 300+ connection of process.
    SQL>show parameter process
    NAME TYPE VALUE
    processes integer 300
    --> I confirmed by checking by ps -aef|grep beq command in linux it shown 380 beq connection.
    --> Power limit i given 5 while adding disks to diskgroup..!
    --> long back ago we changed ASM Parameter process value to 300 in place of 100.
    --> A question like while rebalancing is going node got hanged got alert error like ASM MAXIMUM PROCESS GOT EXCEED so no operation were allowed to the node, so we rebooted the node after rebooted node came in to normal state and able to do all operation normally..but my question is that rebalance is completed succesfully or not?
    --> For this issue we need to apply any Patch to overcome this issue in future while doing any operation on ASM
    Thanks a lot for your quick reply.
    Thanks & Regards
    Prasanth

  • I am unable to connect database this error  ORA-00020: maximum number of

    i issuing this command / as sysdba .getting this error
    Enter user-name: / as sysdba
    ERROR:
    ORA-00020: maximum number of processes (300) exceeded
    how to resolve this problem.it is verry verry urgent.

    Hi
    "Maximum number of processes exceeded" will be alerted when your database has received a request for connection from a process which is beyond the number of processes your database can allow for.
    Please check your database parameters
    show parameters processes
    Couple of options:
    a) If your database has been running for a while and if it's the first time you are recieving this error, please check why all of a sudden more and more processes have been created. You may want to investigate your application, users, etc
    b) If it's a valid request and if it's the case that you haven't really configured enough processes, you will have to increase the PROCESSES parameter in your init file and restart the database. It's not a dynamic parameter. Also, make sure you increase the sessions parameter as well along with the processes.
    Before you do this, you will also have to check if your OS has been configured for increasing the number of processes. Think it's semmsl in Unix.

  • Db server doesn't start. Error message: ORA-00020: maximum number of proces

    After I changed the parameter from archive log mode. My db server is having problems.
    I can't log in as sys using sqlplus. when I log in through sqlplus /nolog, and tried to shut down, here is the error message:
    $ sqlplus /nolog
    SQL*Plus: Release 10.1.0.3.0 - Production on Mon Apr 23 11:43:07 2007
    Copyright (c) 1982, 2004, Oracle. All rights reserved.
    SQL> connect / as sysdba
    Connected to an idle instance.
    SQL> shutdown immediate
    ORA-24324: service handle not initialized
    ORA-24323: value not allowed
    ORA-00020: maximum number of processes (%s) exceeded
    SQL>
    I am stuck on this. i have changed the value of processes in init.ora, but this error still exists. i think I need to do: create spfile from pfile='init.ora', but I need to log in to do, but I can't log in sys.
    Please help.
    Thanks.

    i forgot shutdown abort. used that, created spfile from pfile, and it works ok now.

  • Maximum number of processes (100) exceeded

    Hi!
         I've some php application working with oracle XE with oci8 driver. Application works fine, but with time number of running oracle processes grows and when it reaches 100, it is impossible to to backup:
    RMAN-00554: initialization of internal recovery manager package failed
    RMAN-04005: error from target database:
    ORA-00020: maximum number of processes (100) exceeded
    To do a backup I need to restart oracle.
    What is interesting, number of processes doesn't affect php application. I think php can reuse existing processes. It is possible that RMAN will reuse existing processes?
    Or is there any way to close unneeded processes ?
    best regards
    Jarek

    With 11g XE, use DRCP connection pooling for your PHP connections.  See The Underground PHP and Oracle Manual
    Use non-DRCP connections for other jobs.
    It sounds like you are using persistent PHP connections. This is good for performance but if you have a large number of PHP/Apache processes you will reach the DB limits, as you've found. You can tune the number of connections to suit the largest possible number of mid-tier processes in your system. Do this with the 'processes' parameter in the DB. See the "Configuring the Database For Testing" section in the testing chapter of The Underground PHP and Oracle Manual. You could also reduce the number of Apache processes that start, or be more aggressive in expiring them.
    For follow up PHP questions, use the PHP OTN forum.

  • ORA-19921: maximum number of 64 rows exceeded

    while trying to connect to the database through rman, I got this error;
    Recovery Manager: Release 10.2.0.2.0 - Production on Tue Nov 24 10:59:34 2009
    Copyright (c) 1982, 2005, Oracle. All rights reserved.
    RMAN-06900: WARNING: unable to generate V$RMAN_STATUS or V$RMAN_OUTPUT row
    RMAN-06901: WARNING: disabling update of the V$RMAN_STATUS and V$RMAN_OUTPUT rows
    ORACLE error from target database:
    ORA-19921: maximum number of 64 rows exceeded
    connected to target database: <SID> (DBID=XXXXXXXXXX)
    RMAN>
    This is Oracle 10g running on AIX server.
    Can anyone have an idea of resolving this issue.
    Regards
    Paul

    Tellling the OpsTeam to ignore RMAN jobs that return errors is not an ideal solution.
    Similar errors continue after upgrading to 12.0.4.2.
    So the fix, does not fix all occurrances.
    Have found additional information, and you may be able to look at your errors too for more info.
    connected to target database: MyTargetDB (DBID=1591642534)
    RMAN-06900: WARNING: unable to generate V$RMAN_STATUS or V$RMAN_OUTPUT row
    RMAN-06901: WARNING: disabling update of the V$RMAN_STATUS and V$RMAN_OUTPUT rows
    ORACLE error from target database:
    ORA-19921: maximum number of 128 rows exceeded
    SQL> connect system@mytargetdb
    Enter password: *******
    Connected.
    SQL> select count(*) from v$rman_output;
    COUNT(*)
    32948
    SQL> select * from v$rman_output where rownum <2;
    SID RECID STAMP SESSION_RECID SESSION_STAMP
    OUTPUT
    RMAN_STATUS_RECID RMAN_STATUS_STAMP SESSION_KEY
    505 1 709915346 186630 709912681
    RMAN-06207: WARNING: 1 objects could not be deleted for SBT_TAPE channel(s) due
    187039 709915343 186630
    SQL> select count(*) from v$rman_output
    where OUTPUT like 'RMAN-06207%'
    COUNT(*)
    3248 <==== only about 10% of the rows have the same RMAN-06207 error
    SQL> select * from v$rman_output where SESSION_KEY <> 186630;
    no rows selected <=== All rows appear to have SESSION_KEY 186630
    I have opened an SR with Oracle Support to find out how to clear out the error mesage entries in v$rman_output.
    I will also need to determine why the RMAN deletion of backups placed these (and other) messages into this table.

  • ORA-21780: Maximum number of object durations exceeded

    Hi,
    I have configured workflow now.Workflow Background Process is completing with below error.
    ORA-21780: Maximum number of object durations exceeded.
    I have gone also through API as below but error is coming same.
    SQL> exec wf_engine.background(itemtype=>'HXCEMP',process_deferred=>true,process
    timeout=>false,processstuck=>false);
    BEGIN wf_engine.background(itemtype=>'HXCEMP',process_deferred=>true,process_tim
    eout=>false,process_stuck=>false); END;
    ERROR at line 1:
    ORA-21780: Maximum number of object durations exceeded.
    Thanks

    Hi;
    What is your OS,EBS and Db?
    Please check below and see its helpful:
    Bug 5924384 - ORA-21780 in PLSQL [ID 5924384.8]
    Recieving ORA-21780 when trying to create a large number of synonyms. [ID 726550.1]
    Also check:
    Unplanned Depreciation Errors with ORA-21780: Maximum Number Of Object Durations Exceeded. [ID 886986.1]
    Workflow Background Process Fails With ORA-21780: Maximum Number of Object Durations Exceeded [ID 790909.1]
    FRM-40735 POST-FORM-COMMIT Trigger Raised Unhandled Exception ORA-21780 When Trying To Adjust Basic Rate [ID 811754.1]
    Regard
    Helios

  • Ora-00020 maximum no .of connections exceeded

    Hi All,
    I tried to connect the production Db is says Maximum number of connections exceeded.
    How to overcome this situation.
    I stoppped and bounced the Db.
    The process paramter in pfile is 50
    Is there any to overcome this

    c:\sql>oerr ora 00020
    00020, 00000, "maximum number of processes (%s) exceeded"
    *Cause:  All process state objects are in use.
    *Action: Increase the value of the PROCESSES initialization parameter.
    Increasing the PROCESSES parameter as suggested by the error information would remove the issue.
    If the database has been working fine for an extending period of time without this error you should consider finding out what caused the increase so you can set parameter appropriately. Could be an increase in use or an application leaking connections.

  • ORA-01795:maximum number of expressions in a list is 1000

    Hi,
    JDev 11.1.1.5.0
    I've a usecase, where i need to pass more than 1000 values for IN clause.
    I found that, there is some restriction in number of values for IN clause to 1000.
    I got following reference on this issue
    ORA-01795:maximum number of expressions in a list is 1000. Any work around?
    Conclusion:
    there are two options to fix this issue
    Fix 1:
    You can have any number of tuples, not just 1000, in an IN-list like this:
    (id, 0) IN ( (1,0), (2,0), (3,0), (5,0), (8,0), ... )
    Fix 2:
    Use global temporary table to populate values and then use the temp table
    select * from table A1 where A1.ID in (Select ID from temp_table)
    Please suggest the best option to fix our issue.
    As of now, i am applying IN clause as
    inClause = (1,2,3,4,5...)
    criteriaRow.setAttribute("id", inClause);
    I can prepare inClause as per Fix 1. But iam concern about setting attribute as (id,0)
    can you suggest a way to apply as (id,0) IN (...)
    Thanks in advance,
    Samba.

    I would suggest fix nr 2. Since it's more flexible (for example when the list of items changes then you don't want to change every IN clause).

  • ORA-Error: Maximum number of Processes exceeds

    Hi,
    Today we got one Oracle error: Maximum number of Processes exceeds while connects to our Oracle Database.
    We have application running on our DB, which have 50 threads running and making connection to Oracle Schema.
    In our init.ora file the Processes Parameter is set to 50.
    But we also have another init<Schema Name>.ora file which has Processes Parameter as 50.
    When I search on this error, I got that it is due to no. of user processes on Oracle instance.
    What are these user processes exactly?
    If we set the Processes Parameter as 150, and we have RAC environment with 3 Cluster, does it means we have 150*3 processes can run at a time.
    The other doubt I have is that: Is this parameter is instance based, SID based or cluster based?
    Please provide some input on this.
    Thanks in Advance.
    Manoj Macwan

    If you don't issue
    alter system set processes=150 scope=both sid='<your instance 1>'
    all instances will be allowed to fork 150 processes.
    The other poster is incorrect.
    Sybrand Bakker
    Senior Oracle DBA

Maybe you are looking for