OC4J Instances Fail to Start With Error "Address already in use" for AJP, RMI and JMS ports On Solaris Servers With IPv4/IPv6
Last updated on DECEMBER 05, 2016
Applies to:Oracle Fusion Middleware - Version 10.1.3.0.0 and later
Oracle Solaris on x86-64 (64-bit)
Oracle Solaris on x86 (32-bit)
Oracle Solaris on SPARC (64-bit)
Oracle Solaris on SPARC (32-bit)
In Solaris 10, when using multiple Oracle AS 10.1.3.5 installations, some of the OC4J instances could not be started due to multiple proceses using the same ports and clashing (specifically jms port).
The error was reproduced in Oracle AS 10.1.3.5.0 running on Solaris Sparc 10 zone hosted by the Sun SuperCluster's Solaris 11 global zone, but it is not dependant on the usage of zones or other virtualizations. Theorically this could affect any 10.1.3.X install in Solaris SPARC and x86 servers if both IPv4 and IPv6 stacks are enabled.
The problem is detected as a port conflict by the OC4J JVM when it starts, but not by OPMN, which identifies some ports as free when they are actually in use and hence produces the effect that OPMN does not handle correctly the "in use" ports.
Given the root cause this problem could be theorically reproduced when there is a port range overlap in the OC4J components, as for example in the following different setups:
a) Multiple Oracle AS 10.1.3.X installations in the same physical server, when the OC4J instances share the same port ranges
b) One single Oracle AS 10.1.3.X installation with multiple OC4J instances, when the OC4J instances share the same port ranges
c) One single Oracle AS 10.1.3.X installation with OC4J instances having numprocs > 1, as all the JVM's for that OC4J instance will share the same port ranges
This testing session was conducted in scenario "a) Multiple Oracle AS 10.1.3.X installations in the same physical server, when the OC4J instances share the same port ranges"
In EnvA (Test1) we have an up and running OC4J instance using ports some of the "suspicious" ports 12401 12501 12601 12701
The same error happens on other ports such as 12601 and 12701, hence the JVM is unable to start correctly.
That problem was found after a new system was configured to consolidate multiple Application Server installs previously running in different environments.
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