2. About Sun GlassFish Communications Server 2.0
3. Sun GlassFish Communications Server Known Issues and Limitations
Communications Server Administration
Domain creation stops on NFS server running 64-bit Linux (Issue Number 1961)
High CPU Utilization When There is Little or No Traffic (Issue Number 1966)
Communications Server instances start even if SIP/SIPS ports are not bound (Issue Number 998)
Communications Server does not use the JDK specified by --javahome option (Issue Number 789)
Using 3.5 GB Java heap causes instances to restart while traffic is on (Issue 1169)
Communications Server installer crashes on Linux (6739013)
Installation with 64-bit JDK Fails (6796171)
SIP container unable to handle a CANCEL when it has sent a 100 response (Issue 712)
SIP sessions and HTTP sessions do not apply the same session expiration time model (Issue 1180)
SIP session lives on after container callback to sessionExpired (Issue 1265)
Communications Server first acts as a UAS, then as a proxy, and generates NOP (Issue 1432)
getLastAccessedTime method does not provide accurate results (Issue 1351)
SIP listener remains active for a certain duration after it is deleted (Issue 1294)
Communications Server throws exception when it receives a Contact header without "<>" (Issue 1489)
Communications Server throws exception at an invalid UUID value (Issue 1494)
Windows: Sometimes, UDP messages are not received by Communications Server (No id)
4. Sun GlassFish Enterprise Server Known Issues and Limitations
When a cluster is created, Communications Server randomly assigns a heartbeat port between 1026 to 45556. For default-cluster, which is the default cluster created by a Communications Server installation, a random number selected between 0 to 45556. The cluster creation process does not accurately detect if the heartbeat port is already being used by another service.
If automated cluster creation configuration selects a heartbeat port that is in conflict with another service that is already using that port, update the cluster heartbeat port to a port that is not being used by the system.
To change the heartbeat port of a cluster, use the following asadmin command:
asadmin set cluster-name.heartbeat-port=newportnumber
The asadmin create-domain command may fail while attempting to create a domain on a Network File System (NFS) mounted file system with the NFS server running on 64-bit Linux.
No known solution.
The asadmin create-domain command man page describes a property named sips.port, but the actual name of this property is sip.ssl.port.
Use the sip.ssl.port property to configure a secure SIP port. Valid values are 1 to 65535.
Communications Server instances sometimes show high CPU usage even with little or no traffic, when CPU overload protection is enabled. This problem is because of the JDK bug 6693490. This bug is resolved in JDK 6 Update 18.
Use JDK 6 Update 18 with Communications Server.
Communications Server instances starts up even if it cannot bind to a SIP or SIPS port.
Ensure that ports are free before starting server instance(s). Check the log files (server.log) to ensure that there have not been any SIP container errors or exceptions during the startup.
You can use a preinstalled JDK instead of the default version for the installation by using the ––javahome option. Communications Server, by default, uses the JDK version from as-install/jdk.
The AS_JAVA variable in the asenv.conf file always points to as-install/jdk. If you want to use a different JDK version, update the asenv.conf file manually and changed the value of AS_JAVA.
When JVM heap size is set to 3.5 GB, Communications Server instances fail and restart when they receive traffic.
Ensure that the maximum JVM heap size is set to 3.0 GB or less. For details on how to change the JVM heap size, see the descriptions of the -Xms and -Xmx options at http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/java.html.
On Solaris platforms, Communications Server calculates CPU usage based on the number of available processors and the per-core CPU usage. However, Communications Server takes into account the static value of number of cores and not the number of cores that are used by the JVM.
Recalculate the CPU threshold values if you are not using all the cores in the machine.