Monday, August 26, 2019

Login Page Hangs With Error In oacore Log: There is no process to read data written to a pipe (Doc ID 1459761.1)

To BottomTo Bottom

In this Document
Symptoms
Changes
Cause
Solution
References


APPLIES TO:

Oracle E-Business Suite Technology Stack - Version 12.1.3 to 12.1.3 [Release 12.1]
Information in this document applies to any platform.

SYMPTOMS

On Oracle Applications release 12.0.6, IAS for Applications Technology

Actual Behavior
The OA_HTML/Applications Login is hanging for end users.

Expected Behavior
New logins can successfully open the login page.

ERROR in the oacore application.log file:
html: There is no process to read data written to a pipe.
  html: Servlet error
java.io.IOException: There is no process to read data written to a pipe.
at sun.nio.ch.FileDispatcher.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:132)
at sun.nio.ch.IOUtil.write(IOUtil.java:103)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:329)
at java.nio.channels.Channels.write(Channels.java:74)
at java.nio.channels.Channels.access$000(Channels.java:61)
at java.nio.channels.Channels$1.write(Channels.java:148)
at com.evermind.server.http.AJPOutputStream.endRequest(AJPOutputStream.java:117)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:306)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:187)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:810)

Error in new connection to database via sqlplus

SQL> conn <apps_user>/<apps_password>
ERROR:
ORA-00020: maximum number of processes (%s) exceeded

CHANGES


CAUSE

This is justified with the following :

1. Result of v$resource_limit:
RESOURCE_NAME CURRENT_UTILIZATION MAX_UTILIZATION INITIAL_ALLOCATION LIMIT_VALUE
processes 1199 1200 1200 1200
sessions 1236 1305 2500 2500

The value of processes setup in database initialization parameter file is 1200, but at the peak time (about 374 users) the max utilization processes is 1200, so no available process to serve new user connection request to database.

There is not enough processes in database to serve the new user connection.

SOLUTION

To implement the solution, please execute the following steps:

1. Increase the value of PROCESS in database initialization parameter file:
(Note : For Oracle recommended value, refer to Section 7: Database Initialization Parameter Sizing in Note 396009.1 )
a. Identify the current value of the processes:
SQL > show parameter processes;

b. The parameter could be changed without shutting down the instance by use of the following command:
SQL> alter system set processes=<the number one wants to set> scope=spfile;

c. Following the command in b above, use the following to confirm the change:
SQL > show parameter processes;

2. Retest the issue.

3. Migrate the solution as appropriate to other environments.

REFERENCES

NOTE:329456.1 - Troubleshooting MOD_OC4J Errors and "oc4j_socket_recvfull timed out" Warning in the HTTP Server error_log File
NOTE:859747.1 - JTF-1400: Region JTFSCHNF Causes JTF Regionexception
NOTE:276557.1 - Firewall BLACKOUT and JDBC connections with Oracle Applications 11i and 12
NOTE:396009.1 - Database Initialization Parameters for Oracle E-Business Suite Release 12
NOTE:734293.1 - JDBC Connections from E-Business Suite Application Tier Fail with "java.sql.SQLException: Io exception: There is no process to read data written to a 

No comments:

Post a Comment

Database Options/Management Packs Usage Reporting for Oracle Databases 11.2 and later (Doc ID 1317265.1)

  Database Options/Management Packs Usage Report You can determine whether an option is currently in use in a database by running options_pa...