Unable to start IBM Process Engine Manager due to java.rmi.ConnectIOException

Technote (troubleshooting)


Problem(Abstract)

Attempts to start IBM Process Engine Manager results in java.rmi.ConnectIOException: error during JRMP connection establishment

Symptom

AIXhostname:IBM/FileNet/ProcessEngine:# ./startpemgr

log4j:WARN No appenders could be found for logger (filenet.vw.base).
log4j:WARN Please initialize the log4j system properly.
java.rmi.ConnectIOException: error during JRMP connection
establishment; nested exception is:
java.io.EOFException
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.
java:286)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.
java:184)
at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:322)
at sun.rmi.registry.RegistryImpl_Stub.lookup(RegistryImpl_Stub.
java:89)
at filenet.jpe.pemgr.PEManager.getActiveInstance(PEManager.java:
168)
at filenet.jpe.pemgr.PEManager.main(PEManager.java:537)
Caused by: java.io.EOFException
at java.io.DataInputStream.readByte(DataInputStream.java:250)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.
java:228)
... 5 more

Cause

PE Manager is not able to bind to port 32776 because the port is in use by other application or daemon process.

Diagnosing the problem

To identify which process is using port 32776 run the following AIX Commands

1. netstat -Aan | grep 32776
- This shows if the specified <port number> is being used. The hex number in the first column is the address of protocol control block (PCB)

2. rmsock <addr of PCB> tcpcb
- This shows the process who is holding the socket. Note: This command must be run as root.




Resolving the problem

Once you have identified the process that is holding the port, verify whether it is a daemon OS process or another application that you can stop.

For AIX, as part of the P8 install, the ephemeral ports range that can be used by daemon processes needs to be set higher than the default.
http://pic.dhe.ibm.com/infocenter/p8docs/v5r1m0/topic/com.ibm.p8.planprepare.doc/p8ppi046.htm

To check the currently configured ephemeral port range use the following commands:
no -a | grep ephemeral
no -a | grep tcp

Our recommendation is to set
tcp_ephemeral_low=42767

That should prevent AIX daemon processes to grab the ports needed by Process Engine.

For reference, a list of ports used by P8 is listed below
http://pic.dhe.ibm.com/infocenter/p8docs/v5r1m0/topic/com.ibm.p8.planprepare.doc/p8pap057.htm

Specifically for Process Engine the ports are listed below
http://pic.dhe.ibm.com/infocenter/p8docs/v5r1m0/topic/com.ibm.p8.planprepare.doc/p8pap059.htm

Rate this page:

(0 users)Average rating

Document information


More support for:

Case Foundation
Process Engine

Software version:

5.0

Operating system(s):

AIX

Software edition:

All Editions

Reference #:

1633969

Modified date:

2013-05-02

Translate my page

Machine Translation

Content navigation