Oracle® Communications Converged Application Server Release Notes Release 5.0 Part Number E17652-03 |
|
|
View PDF |
Release Notes
Release 5.0
E17652-03
July 2011
This document provides release notes for Oracle Communications Converged Application Server Release 5.0.
This section describes new features and feature enhancements in this release of Converged Application Server.
Converged Application Server enables control of media servers using the Media Server Control API based on JSR 309, a standard Java interface. See "Media Server Control" in the chapter "Converged Application Server in the Network" in Converged Application Server Technical Product Description.
Converged Application Server now includes the Proxy Registrar that implements the proxy and registrar functions described in RFC 3261. For more information, see "About the Proxy Registrar" in the chapter "Converged Application Server in the Network" in Converged Application Server Technical Product Description.
Registration bindings stored in a location service can be persistently stored in an Oracle 11g or MySQL 5.4 database. See the discussion on configuring data sources in the Oracle WebLogic Server documentation.
You can configure common Proxy and Registrar settings by using the Oracle WebLogic Server Administration Console. For configuration information, see "Configuring the Proxy Registrar" in the chapter "Configuring Engine Tier Container Properties" in Converged Application Server Administration Guide.
Converged Application Server provides an Application Sessions API that allows applications to perform asynchronous updates, when necessary, to a different SipApplicationSession while in the context of a locked SipApplicationSession. See "Asynchronous Access" in the chapter "Developing Converged Applications" in Converged Application SIP Application Development Guide.
Converged Application Server provides a new System property that enables you to optimize memory utilization or performance for a standalone domain, as required by the SIP application. See "Optimizing Memory Utilization or Performance for a Standalone Domain" in the chapter "Requirements and Best Practices for SIP Applications" in Converged Application Server SIP Application Development Guide.
Converged Application Server provides a proprietary API that allows a proxy application to set the transport parameter on the Record Route header. See "Record Route URI Transport API" in the chapter "Composing SIP Applications" in Converged Application Server SIP Application Development Guide.
Converged Application Server provides a new System property that allows a SIP application acting in a supervised Proxy mode to be able to set the message content in the responses that the application forwards upstream. See "System Property to Set Content Responses" in the chapter "Composing SIP Applications" in Converged Application Server SIP Application Development Guide.
Converged Application Server now includes the following domain templates in addition to the previously supplied domain templates:
OCCAS Proxy Registrar Domain - AdminServer Topology 5.0.0.0
The Proxy Registrar Admin Server Topology template lets you create a non-clustered (single-server) Converged Application Server domain with the Proxy Registrar component. This type of domain is appropriate for development environments or for cases where high availability of SIP sessions is not important.
OCCAS Proxy Registrar Domain - Replicated Topology - 5.0.0.0
The Proxy Registrar Replicated Topology template lets you create a clustered (multi-server) Converged Application Server domain with the Proxy Registrar component. This type of domain is appropriate for production environments where high availability and scalability are crucial.
For more information, see Converged Application Server Installation Guide.
The Administration Console Change Center provides a way to lock a domain configuration so you can make changes to the configuration while preventing other accounts from making changes during your edit session.
In previous releases, the Change Center domain locking feature was always enabled. It is now possible to enable or disable the feature in development domains. It is disabled by default when you create a new development domain. See "Enable and disable the domain configuration lock" in the Administration Console Online Help for more information.
For information about other Administration Console enhancements, see What's New in WebLogic Server in the Oracle WebLogic Server 11g Release 1 documentation.
Table 1 lists the known problems in Converged Application Server Release 4.0 that have been fixed in Converged Application Server Release 5.0.
Table 1 Fixed Issues Since Converged Application Server Release 4.0
BugDB Number | Description |
---|---|
8110168 |
A SIP proxy application will now copy the Reason header field from the CANCEL request it receives into the new CANCEL request that the application generates and forwards to the next hop on the route for the call. |
8157378 |
The SIP container will now allow a SIP application to handle a NOTIFY message even if there is no subscription associated with that message. |
8171261 |
When the original INVITE request for a dialog is completed or terminated, Converged Application Server will now terminate any client transactions for provisional responses (PRACK) associated with that dialog. |
8175850 |
Debug statements pertaining to SipSessions will now execute only when the debug flag is enabled and not otherwise. |
8177038 |
The findme sample application was not listing the registered SIP phones correctly. This issue has been fixed. |
8178044 |
When a SIP application acting in Proxy mode, receives a NOTIFY message that is out of order (prior to the 200/SUBSCRIBE message), the SIP application will now retrieve the correct SUBSCRIBE session associated with that NOTIFY and, therefore, accept the NOTIFY message. |
8178369 |
Converged Application Server now supports SIP resource injections for Web Services. |
8178384 |
SNMP traps can now be successfully generated from a SIP application. |
8179523 |
In a replicated setup which serializes call state data to the data tier, Converged Application Server will now correctly handle any exceptions associated with serialization of SIP sessions and session attributes. |
8179926 |
Converged Application Server will use the correct System property value to load the default application router property file. The issue with NullPointerExceptions in scenarios where SipSession associated with an incoming request is null has been fixed. |
8181909 |
A SIP application on a multi-homed machine will now insert the correct (public) Contact address in the outgoing INVITE requests that the application sends. |
8185650 |
Client Transaction states are now handled correctly when a call session ends and application sessions are invalidated on Converged Application Server. |
8186268 |
When the |
8187745 |
When the P-Asserted Identity Asserter provider was configured, if the syntax of the specific P-Asserted-Identity header contained invalid characters (for example, commas), a |
8189318 |
In certain situations, if no 18x or final response was received by Converged Application Server for an INVITE re-transmission, that re-transmission triggered two 100 Trying responses from Converged Application Server. This issue has been fixed. |
8192511 |
When a Custom Application Router returned a SIP URI as a subscriber URI, Converged Application Server returned an instance of type URI instead of SIP URI. This issue has been fixed. Converged Application Server will now return the appropriate URI type based on the scheme of the subscriber URI (SIP or SIPS) returned by the Custom Application Router. |
8210638 |
When a SIP container receives a Display Name entered as |
8223764 |
Enabling local serialization (using |
8447435 |
When Converged Application Server receives a SIP message that uses a SIP protocol version which the server does not support, the server will now return a |
8460906 |
When a SIP container calls the |
8477092 |
When a node in one partition within a data tier of a replicated domain is brought down for any reason and restarted, a proper correlation of the |
8486877 |
When serializing call states, a SIP container will perform the necessary tasks to prevent incorrect Assertion errors. |
8497270 |
A Converged Application Server configured with a Custom Application Router will now correctly enforce the appropriate routing directive when a request is routed back to it because of the ROUTE_BACK modifier. |
8509477 |
The SIP container will now check the validity of a SIP application session before attempting to use the session information to retrieve the context to be associated with the P-Asserted-Identity Asserter. |
8510351 |
When a SIP User Agent client application received a valid ROUTE header in a message, it forwarded that message to the correct destination, but the application incorrectly recorded a bad route resolution entry in the ServerLog.log file.Such incorrect entries do not appear in the ServerLog.log file. |
8535125 |
When the final application session belonging to a call state is invalidated, the SIP application will now correctly terminate all associated client and derived client transactions that are in PROCEEDING state. |
8548473 |
When the |
8615240 |
When a cable pull is simulated in a replicated domain, the time to determine the state of the replica has now been reduced and ensures reduced delay in updating the partition view. |
8787486, 9078719 |
When a Proxy application now receives a header containing multiple method entries separated by commas (for example, |
8802056 |
In some instances, a peer check was incorrectly sent to a replica that was in an offline state or had stale data causing that replica to shut down. This issue has been corrected. |
8837527 |
When a User Agent sent an INVITE request containing appropriate security headers in response to a 401/INVITE challenge, Converged Application Server treated that request as a subsequent request and did not proxy the second INVITE. The software now treats such an INVITE request as an initial request and ensures appropriate call flow. |
8884039 |
The SIP container will now terminate a SIP session only when no subscriptions exist for that dialog and:
|
8118911 |
When a SIP Server sends a 401/INVITE challenge to a User Agent, if it then receives an Authorization request from that User Agent, the SIP Server will treat the Authorization request as an initial request. |
8983688 |
When a SIP container receives the value ROUTE_BACK as the route modifier from the Application Router, the SIP container will now insert the correctly configured public/external address in the Route header before it calls the Application Router. |
This section describes known software problems and workarounds, if any.
In a Converged Application Server installation with two engine tier nodes and two SIP data tier nodes in a partition (two replicas), if the connection to the SIP data tier becomes “split” such that each engine tier server can only reach a different SIP data tier node, one of the replicas is forced offline.
To recover from this situation, always configure the Node Manager utility to restart SIP data tier replicas automatically when a replica fails. This enables the replica to rejoin its associated partition and update its copy of the call state data without having to manually restart the server.
BugDB number 8182227
The SIP Servlet v1.0 Specification states: “Containers may send the request asynchronously in which case sending may fail after the send method has returned successfully. In this type of situation, the container will generate its own final response. In this particular case, a 404 response would be appropriate.” Converged Application Server sends requests asynchronously but does not deliver a 404 Not Found response to an application if a transport failure occurs.
To work around this problem, applications should rely on the 408 Request Timeout response.
BugDB number 8132241
During an overload condition, Converged Application Server may log messages similar to:
<ACK received in state PROCEEDING:class=[ServerTransaction], objid=[25292416],key=[z9hG4bKc227250e04757a91cbdde388192e21f5], state=[3,PROCEEDING],method=[INVITE]>
This occurs even if the ACK could be safely ignored (for example, if the ACK was generated by the server for a 503 response). There is no workaround to this problem, but it should occur only rarely (during overload conditions).
BugDB number 8092534
When starting a replicated domain, if a partition has no running replicas and two replicas are started at the same time, the second replica shuts down if one or more engine tier servers are already running. To avoid this problem, always start all SIP data tier servers before starting any engine tier servers in a replicated domain.
BugDB numbers 8075026 and 8069746
On Linux and UNIX systems, the default TCP connection timeout interval is usually very long and can cause Managed Servers to disconnect from the Administration Server under certain failure conditions.
Specifically, if a single Managed Server in a domain fails abruptly or is disconnected from the network (for example, due to a removed network cable), the Administration Server tries to communicate to the failed server for the length of the TCP connection timeout value. During this time, the Administration Server does not send heartbeat messages to the remaining Managed Servers in the domain. Failing to send the heartbeat messages causes the remaining Managed Servers to consider the Administration Server as being offline, and they disconnect from the Administration Server. This finally causes the Administration Server to throw PeerGoneExceptions
for the disconnected servers after the TCP timeout interval has been reached and the connection is closed.
To work around this issue without changing the operating system TCP connection timeout value, use the -Dweblogic.client.SocketConnectTimeoutInSecs
startup option when booting the Administration Server. Oracle recommends using a value of 60 seconds to avoid numerous missed heartbeats. For example:
-Dweblogic.client.SocketConnectTimeoutInSecs=60
BugDB number 8122352
When an application in a replicated domain configuration is no longer deployed, Converged Application Server uses timer processing to clean up the remaining call state data for the application. However, in a non-replicated configuration, the server attempts to invalidate remaining session data but does not destroy call states associated with the application; this may result in the server “leaking” call states that existed when the application was deployed.
BugDB number 8134125
Testing on Solaris platforms has shown that the following Java Virtual Machine (JVM) arguments to improve performance with the Sun JVM for replica servers:
-server -Xms1024m -Xmx1024m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC
For engine tier servers, these example arguments have shown to improve performance:
-server -Xms768m -Xmx768m -XX:+UseParallelGC -XX:MaxGCPauseMillis=400 -XX:+DisableExplicitGC
Note that these JVM settings have only been tested on Solaris platforms.
For other platforms, begin with the example JVM arguments described under the discussion on tuning JVM Garbage Collection for production deployments in Converged Application Server Administration Guide.
BugDB number 8084956
In order to use SCTP with IPv4 on Solaris, you must set the following Java option when you start the server:
-Dsctp.preferIPv4Stack=true
Edit your startup script to include this option, or set the environment variable:
export Java_OPTIONS=-Dsctp.preferIPv4Stack=true
BugDB number 8142902
If you install the 64-bit version of Converged Application Server installer package on Solaris, you must add the -d64 option with the Sun JDK in order to specify 64-bit mode.
If you omit the -d64 option, the Sun JDK automatically defaults to 32-bit mode and the installer fails to install required 64-bit native libraries. This yields the following error on startup:
<Oct 4, 2007 4:54:28 AM EDT> <Error> <Socket> <BEA-000438> <Unable to load performance pack. Using Java I/O instead. Please ensure that a native performance library is in: path>
Converged Application Server exhibits two behaviors that do not conform to the JSR 116 specification:
MIME content is returned as a String object, rather than as a javax.mail.Multipart
as encouraged by the specification.
isPersistent
, used for re-instantiating ServletTimer
after server restarts, is not implemented.
Also, Converged Application Server does not support dialog stateless proxies, an optional feature described in the API JavaDoc for the Proxy
interface, setStateful()
method: “This proxy parameter is a hint only. Implementations may choose to maintain transaction state regardless of the value of this flag, but if so the application will not be invoked again for this transaction.”
The following are known problems encountered when configuring Media Server Control factory by using the Administration Console.
When deleting a Media Server Control factory by using the Administration Console, an error sometimes occurs when both of the following conditions are present:
The name of the Media Server Control factory includes a combination of special characters; for example: "///", "@/@_", "_//_"
There is more than one configured Media Server Control factory whose name includes a combination of special characters.
To work around this issue, you can edit the jsr309driver.xml file to either:
Change the name of the Media Server Control factories before attempting to delete a factory through the Administration Console.
Delete a Media Server Control factory if the delete operation fails through the Administration Console.
To edit jsr309driver.xml:
Using a text editor, open the jsr309driver.xml file located on the Administration Server in domain_home\config\custom, where domain_home is the path to the domain's home directory.
In jsr309driver.xml, locate the <ms-control-factory>
elements for the factory that you want to edit:
To edit the factory name, remove the combination of special characters from the factory name in the <name>
tag.
To delete a factory, remove the <ms-control-factory>
element, including its subelements.
Save the file and stop and restart the Administration Server and all Managed Servers in the domain.
When using the Administration Console to delete a Media Server Control factory, the following message is displayed in the Delete the Media Server Control Factory page after the factory is successfully deleted:
???Can not get the chosen contents???
You can ignore this message.
If you use the Administration Console to create an instance of a Media Server Control factory without first installing a Media Server Control driver, an exception is thrown. This is normal behavior. The Administration Console should display an error message that corresponds to the exception. However, the console displays the full content of the exception instead. The exception is displayed in the Create the Media Server Control Factory page.
This section describes the features that were deprecated in this release of Converged Application Server.
This section contains some useful information about various settings and behavior to be aware of when setting up and using Converged Application Server.
You must use setDomainEnv.sh
or setDomainEnv.cmd
script (as appropriate) to set the SIP Server environment correctly. For example, the setDomainEnv.cmd
script for base_domain
is located at:
ORACLE_HOME\Middleware\user_projects\domains\base_domain\bin\setDomainEnv.cmd
The setDomainEnv.sh
or setDomainEnv.cmd
script correctly sets the environment by sourcing the CommEnv.sh
or CommEnv.cmd
script, as appropriate.
New Diameter network channels are created with a default Idle Connection Timeout value of 65 seconds. Change this attribute from the default in order to ensure that connections are not dropped and recreated every 65 seconds. See "Creating TCP, TLS, and SCTP Network Channels for the Diameter Protocol" in the chapter "Configuring Diameter Client Nodes and Relay Agents" in Converged Application Server Administration Guide.
SNMP objects in Converged Application Server are read-only. You cannot modify a Converged Application Server configuration using SNMP.
If you attempt to install Converged Application Server 5.0 on Fedora Core 3 or 4 with selinux
running, the installer throws a java.lang.UnsatisfiedLinkError
exception. You cannot install Converged Application Server while selinux
is active.
If you configure two or more SIP data tier replicas using the default WebLogic Server Listen Address configuration (which specifies no listen address), multiple SIP data tier instances on the same machine cannot connect to one another. This occurs because, using the default Listen Address configuration, JNDI objects in the first booted server bind to all local IP addresses.
To avoid this problem, always enter a valid IP address for each configured SIP data tier server instance.
The current count of active application sessions in a domain is displayed in the Administration Console under the SIP Server Monitoring tab, in the General subtab. The counters for created sessions and destroyed sessions on each engine-tier server are maintained in runtime MBeans on those servers locally and do not survive server restarts. To minimize the performance impact of data storage and serialization, a server's counters are not replicated to the data tier and hence are reset to zero each time the server is restarted.
The count of active sessions in a domain at any given time is the sum of sessions created on all engine-tier servers, less the sum of sessions destroyed on all engine-tier servers, from the time that the domain servers are started. This count is a best estimate and may not reflect the actual count of active sessions if servers are started at different times or when one or more servers are shut down.
For example, an engine-tier cluster contains server 1 and server 2 and server 2 is shut down. This causes the created- and destroyed-session counters on server 2 to be zero. Because sessions created on server 2 will eventually invalidate on server 1, the sum of destroyed sessions for the cluster-wide count will be greater than the sum of the created sessions for the cluster-wide count, resulting in a negative value for the active-session counter in the cluster. The total count will continue to be negative even if server 2 is restarted.
If you need to ensure that the domain-wide count of active application sessions is accurate at all times, you can use a custom, external JMX-based agent that maintains counters outside of the engine-tier servers.
The Converged Application Server documentation includes the following updates:
A new chapter has been added that describes how to use the Sapphire Shell (Sash) utility to create database users for Converged Application Server. See the discussion on provisioning users with Sash in Converged Application Server Administration Guide.
To simplify finding information and enable active hyperlinks between sections, several Converged Application Server books have been combined. A new single document, Converged Application Server Administration Guide, now includes all information on how to configure and operate the Converged Application Server software.
The Converged Application Server Administration Guide collects the following previously released documents and combines them into a single document:
Converged Application Server Configuration Guide
Converged Application Server Operations Guide
Converged Application Server Network Resource Configuration Guide
Converged Application Server Security Configuration Guide
Converged Application Server Configuration File Reference
The above documents have been organized into parts (where each part delineates one of the above listed books).
For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc
.
Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info
or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs
if you are hearing impaired.
Oracle Communications Converged Application Server Release Notes, Release 5.0
E17652-03
Copyright © 2005, 2011, Oracle and/or its affiliates. All rights reserved.
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.
If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.
This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.
This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.