Skip navigation.

Release Notes

  Previous Next vertical dots separating previous/next from contents/index/pdf Contents View as PDF   Get Adobe Reader

BEA Tuxedo 9.0 Release Notes

BEA Tuxedo Release 9.0
Date: November 2007

Table 1 Revision History

Revision Date

Summary of Change

November 2007

Added following post-GA platforms: Red Hat Linux Enterprise Server 4.0 (64-bit) on Itanium, Sun Microsystems Solaris 10 (32-bit) on SPARC, Sun Microsystems Solaris 10 (64-bit) on SPARC.

Updated Appendix A, BEA Tuxedo 9.0 Platform Data Sheets, of Installing the BEA Tuxedo System. The revised document can be found at the following URL:
http://download.oracle.com/docs/cd/E13203_01/tuxedo/tux90/install/inspds.htm

February 2006

Added following post-GA platforms: HP-UX v11.23 (32-bit) on Itanium.

Updated Appendix A, BEA Tuxedo 9.0 Platform Data Sheets, of Installing the BEA Tuxedo System. The revised document can be found at the following URL:
http://download.oracle.com/docs/cd/E13203_01/tuxedo/tux90/install/inspds.htm

November 2005

Added following post-GA platforms: Novell SUSE Linux Enterprise Server 9 (64-bit).

Updated Appendix A, BEA Tuxedo 9.0 Platform Data Sheets, of Installing the BEA Tuxedo System. The revised document can be found at the following URL:
http://download.oracle.com/docs/cd/E13203_01/tuxedo/tux90/install/inspds.htm

October 2005

  • Added CR238486, CR242065, and CR244891 to Product Constraints as Constraint number 12, 13, and 14 respectively.

September 2005

Added following post-GA platforms: HP 11i v2 64-bit, IBM AIX 5.3 64-bit, Solaris 9 64-bit, and Novell SUSE Linux Enterprise Server 9 (32-bit).

Updated Appendix A, BEA Tuxedo 9.0 Platform Data Sheets, of Installing the BEA Tuxedo System. The revised document can be found at the following URL:
http://download.oracle.com/docs/cd/E13203_01/tuxedo/tux90/install/inspds.htm

August 2005

Added CR236719 to Product Constraints as Constraint number 10.

July 2005

Added CR228589 to Known Problems in BEA Tuxedo 9.0.

June 2005

Initial Release


 

This document contains release notes for the BEA Tuxedo 9.0 release, including ATMI, CORBA, BEA Jolt, and SNMP Agent.

 


Release Notes Topics

This document includes the following topics:

 


About This BEA Tuxedo Release

BEA Tuxedo software provides businesses and organizations that depend on mission-critical applications with the flexibility of two proven programming interfaces: an Application-to-Transaction Monitor Interface (ATMI) and a Common Object Request Broker Architecture (CORBA) interface. Both interfaces use the BEA Tuxedo infrastructure, which has demonstrated, through years of use in large, transaction-based, production systems, that it is powerful, robust, scalable, manageable, and reliable.

This topic includes the following sections:

What's New and Improved

BEA Tuxedo Release 9.0 includes the following new features and enhancements:

For a discussion of each these features, see the What's New link on the BEA Tuxedo online documentation.

Installation Upgrade Considerations

Before installing the product, be sure to review the product issues in "Known Problems in BEA Tuxedo 9.0" on page 31. For complete information on upgrading to BEA Tuxedo 9.0, see "Upgrading the BEA Tuxedo System to Release 9.0" in Installing the BEA Tuxedo System.

Hot Upgrade From Tuxedo 8.x to Tuxedo 9.0

In order to perform a hot upgrade from BEA Tuxedo 8.x to BEA Tuxedo 9.0, you must be running Tuxedo 8.0 rolling patch 22 at a minimum.

Adding Memory Capacity When Upgrading an Existing Application

The intent of this section is to provide an approximation of the proportional increased memory consumption that an application may have in Tuxedo 9.0, and to aid in further detailed analysis by the application developer or administrator.

Due to the newly added features in Tuxedo 9.0, the addition of new code and data into underlying Tuxedo shared libraries (e.g., libengine.so), some of these libraries are much larger than in Tuxedo 8.1. The size increase of shared libraries cause running Tuxedo system and application processes depending on those libraries to consume more memory than before.

The amount of additional memory consumed by a given Tuxedo 9.0 application compared with its Tuxedo 8.1 counterpart depends on many factors, such as the number of application processes, the amount of private data that application logic has, and so on. Consequently, it is difficult to accurately calculate the impact using a simple formula. However, it is important for an application developer or administrator to understand the implications from a system capacity planning standpoint.

A Tuxedo executable is defined as an executable binary file built using Tuxedo libraries and stored on the file system, and can be either a Tuxedo system server executable or application server executable. Generally, the memory consumed by one of an executable's running processes can be divided into two parts:

For each Tuxedo process, memory is further separated into the memory consumed by Tuxedo libraries and the memory consumed by the executable's logic itself. Assume the following:

A = memory shared across all processes in Tuxedo 9.0 executables

a = memory shared across all processes in Tuxedo 8.1 executables

B = memory used only by the process itself in Tuxedo 9.0 executables

b = memory used only by the process itself in Tuxedo 8.1 executables

X = memory used by the application logic (same for Tuxedo 8.1 and 9.0)

N = number of active processes

And also assuming that A>=a, B>=b and X>=0, note the following observations:

  1. A, B, a, b and X are constant. The proportion gradually changes from (A+B+X)/(a+b+X)-1 to (B+X)/(b+X)-1 when N increases from 1 to a rather great number, for example 100.
  2. A, B, a, b and N are constant. The proportion is greatest when X is 0 and will decrease when X increases. In other words, the more application logic in the executable, the less the proportion.

To further illustrate, using the Tuxedo simpapp sample as an example tested on Solaris, when N of 1 and 100 was used, test results showed the corresponding proportion to be 68 percent and 36 percent respectively. That is, there are respectively 68 percent and 36 percent increase in memory consumption of simpserv processes comparing Tuxedo 9.0 with Tuxedo 8.1 when 1 and 100 simpserv processes are activated.

Since the simpapp sample is not likely a representative of real Tuxedo applications (meaning that X is almost 0 in simpapp servers), the average proportional increases are likely to be lower. In practice, there are likely many different executables starting their own processes in a Tuxedo application, so the ultimate proportion will be an weighted average of all the proportions coming from different executables.

It is approximated that, in most cases, the proportion will be in the 20 percent range. It is strongly recommended that application developers and administrators conduct tests and analysis unique to their application prior to upgrading to Tuxedo 9.0. Note that if the proportional increase is significant for an existing application, and sufficient physical memory cannot be added to the existing machines to accommodate this increase, there may be additional performance impact caused by overhead of possible additional memory paging activities at the operating system level. These performance implications are best determined by consulting with specific operating system vendor experts.

Unsupported Code Samples and Tools Web Page

BEA Tuxedo customers can download unsupported code samples and developer tools from the BEA Systems, Inc. dev2dev online site. Start on the following Web page:

http://dev2dev.bea.com/index.jsp

If you do not already have a BEA dev2dev login, links are provided with instructions for free membership.

 


BEA Tuxedo Software Components

The BEA Tuxedo software consists of the following components:

 


Software Component Licensing Requirements

For BEA Tuxedo 9.0, all software components are included on the product CD-ROMs. A single license is issued when you purchase the product that enables the components that you want to use.

Licensing is used to enable the product components as follows:

Note: It will not be possible for a customer to use 128-bit encryption for data messages without obtaining a 128-bit encryption license from BEA. However, 128-bit encryption can be used for BEA Tuxedo Administration Console messages without obtaining a 128-bit license.

BEA Tuxedo 9.0 requires that all customers upgrade their licenses to a new format; previous licenses will not work. Customers with existing support contracts may use one of the following methods to obtain a license upgrade:

 


Supported Platforms

BEA Tuxedo software runs on the platforms listed in the following sections. BEA has certified these platforms for development and production use with the BEA Tuxedo release 9.0 product. BEA can provide customer support only for these platforms. Note that although BEA has attempted to implement the BEA Tuxedo software in a manner that conforms to industry-standards, it is not feasible for BEA to certify its use with all third-party databases, ORBs, and other products.

Additional software ports and certifications may continue after the initial release of BEA Tuxedo 9.0. For information regarding subsequent ports and certifications, please refer to the Platform Support information on the BEA web site at the following link:

http://www.bea.com/products/tuxedo/platforms.shtml

Platform information is maintained under the "Requirements" option under the Tuxedo product page.

Note: More detailed platform information is maintained on the secured eSupport portal under "Product News and EOL Updates." A customer eSupport password login is required. The eSupport link is:

http://support.bea.com

BEA Tuxedo Server Platforms

The BEA Tuxedo server components run on the following platforms:

BEA Tuxedo Client Platforms

The BEA Tuxedo client software runs on the following platforms:

BEA Tuxedo Administration Console Platforms

The BEA Tuxedo Administration Console software runs on all the platforms listed in the section "BEA Tuxedo Server Platforms" on page 12.

Note: While the Administration Console software cannot be installed on Microsoft Windows XP systems, you can use the Web browser on your Microsoft Windows XP system to access and use the Administration Console software on any BEA Tuxedo server system that is accessible over your network.

BEA Security Service Platforms

The BEA Tuxedo Security Service (56-bit or 128-bit) runs on the following platforms:

BEA Tuxedo 9.0 offers two type encryption services: secure sockets layer (SSL) and link-level encryption (LLE). The SSL and LLE encryption software is included on the BEA Tuxedo 9.0 distribution and is an integral part of the installation procedure. You also configure the SSL software during the installation.

Before you can use BEA Tuxedo Security Service software on any of the platforms listed above, you must first install it according to one of the following options:

- CORBA C++ client

- BEA Tuxedo /WS client

- BEA Jolt client

 


Software Environment

The following sections list the software that can run on each platform supported by the BEA Tuxedo software.

Software Supported by Each Platform

Table 2 lists the software supported by each platform that can run the BEA Tuxedo software.

Table 2 Software Supported by Each Platform 

Platform

Java 2 SDK and JRE1

C/C++ and COBOL Compilers

Clients

Servers

HP-UX V11.23 (32-bit) on PA-RISC

Java 2 SDK (or JRE) 1.4.x

HP C/ANSI C B.11.23.08 with patches PHSS_32152, PHSS_32513 applied; HP aC++ A.03.63; Server Express 4.0sp1 (COBOL) from Micro Focus, ACUCOBOL-GT 6.1 or later from Acucorp, or other compatible COBOL compiler; required only for BEA Tuxedo development environment.

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

HP-UX v11.23 (32-bit) on Itanium

Java 2 SDK (or JRE) 1.5.0_0_1

HP aC++/ANSI C B3910B A.06.06 with patches (PHSS_34046, PHSS_34047, PHSS_34048)

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

HP-UX 11i v2 (64-bit) on PA-RISC

Java 2 SDK (or JRE) 1.5.0

HP ANSI C B.11.23.08 (Bundle B3901BA) with patches
(PHSS_32511 ANSI C compiler B.11.11.12 cumulative patch
(PHSS_32513 +O4/PBO Compiler B.11.11.12 cumulative patch)

HP aCC C.03.62 (Bundle B3913DB) with patch
(PHSS_32511 HP aCC Compiler (A.03.63))

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

IBM AIX 5.3 (32-bit) on IBM PowerPC

Java 2 SDK (or JRE) 1.4.x

C for AIX 6.0; VisualAge C++ 6.0; Java: 1.4.1; Server Express 4.0.sp1 (COBOL) from Micro Focus, ACUCOBOL-GT 6.1 or later from Acucorp, or other compatible COBOL compiler; required only for BEA Tuxedo development environment

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

IBM AIX 5.3 (64-bit) on IBM PowerPC

Java 2 SDK (or JRE) 1.4.2

Visual Age C/C++ 7.0

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

Microsoft Windows 2003 Server on Intel

Java 2 SDK (or JRE) 1.4.x

VC.net 2003 Professional; required for full (development) install, but not for server-only or client-only installations; Net Express 4.0.00 (COBOL) from Micro Focus, ACUCOBOL-GT 6.1 or later from Acucorp, NetCOBOL version 7.x or later from Fujitsu, or compatible COBOL compiler.

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

Microsoft Windows XP (Client only)

Java 2 SDK (or JRE) 1.4.x

VC.net 2003 Professional; no additional compiler software is required on client-only systems.

CORBA C++ over IIOP; Tuxedo /WS

None

Novell SUSE Linux Enterprise Server 9 (32-bit) on Pentium

Java 2 SDK (or JRE) 1.5.0_4

gcc/g++ 3.3.3

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

Novell SUSE Linux Enterprise Server 9 (64-bit) on Itanium

Java 2 SDK (or JRE) 1.4.2_08

gcc/g++ 3.3.3

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

Red Hat Linux Enterprise Server 4.0 (64-bit) on Itanium

Java 2 SDK (or JRE) 1.4.2_08

gcc version 3.4.3 20041212 (Red Hat 3.4.3-9.EL4) + compat-libstdc++-33-3.2.3-47.3.ia64.rpm

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

Sun Microsystems Solaris 9 (32-bit) on SPARC

Java 2 SDK (or JRE) 1.4.x

SUN ONE Studio 8 or later compatible; Server Express 4.0.0 (COBOL) from Micro Focus, ACUCOBOL-GT 6.1 or later from Acucorp, NetCOBOL version 7.x or later from Fujitsu, or other compatible COBOL compiler; required only for BEA Tuxedo development environment

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

Sun Microsystems Solaris 9 (64-bit) on SPARC

Java 2 SDK (or JRE) 1.5.0_3

Sun Studio 10

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

Sun Microsystems Solaris 10 (32-bit) on SPARC

Java 2 SDK (or JRE) 1.5.0_01

Sun Studio 10

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI

Sun Microsystems Solaris 10 (64-bit) on SPARC

Java 2 SDK (or JRE) 1.5.0_01

Sun Studio 10

CORBA C++ over IIOP; CORBA C++ Native; Tuxedo /WS

CORBA C++; ATMI


1. The Java 2 JRE is needed for run-time environment.

Note: There are sample COBCC files for the NetCOBOL compiler by Fujitsu on the BEA dev2dev site. Please check BEA dev2dev Tuxedo product Web site for sample COBCC files at the following URL.

http://dev2dev.bea.com/tuxedo/

Database Support

BEA Tuxedo ATMI and CORBA C++ applications support the XA standard. This facilitates inter-operation with any XA-compliant software system including database management systems.

Security Related Software Supported

The following security software is supported on all BEA Tuxedo platforms:

Table 3 lists the BEA Tuxedo clients and connections that support SSL when the SSL Certificate software is installed and the clients and connections that are not supported.

Table 3 BEA Tuxedo Support for SSL 3.0

SSL is supported for...

SSL is not supported for...

BEA Tuxedo CORBA C++ and IIOP clients.

BEA Tuxedo ATMI /WS client connections to the BEA Tuxedo 9.0 Workstation Listener/Handler (WSL/WSH).1

BEA Jolt client connections to BEA Jolt Listener/Handler (JSL/JSH).


1. BEA Tuxedo 9.0 56-bit or 128-bit encryption is available for link-level encryption of these connections and also for link-level encryption of connections between machines and domains.


 

 


BEA Tuxedo End-of-Life Information

BEA Systems, Inc. periodically finds it necessary to discontinue support for certain older products to ensure the highest level of quality and support for our customers going forward. BEA has a policy of providing advanced notification to our customers so migration strategies and plans can be made.

To access end-of-life (EOL) information for the BEA Tuxedo product, access the BEA eSupport web site at the following link.

http://support.bea.com

Log in to the Support site or register to get a login ID to access EOL information. After logging in, click the Product News and EOL Information link in the left navigation area of the Support page.

 


Deprecated Features in BEA Tuxedo 8.1 (Not Supported in Tuxedo 9.0)

When a product feature is deprecated, it is identified as a feature that will not be supported and may be removed in the next release of the product. The following features were deprecated in Tuxedo 8.1 and will no longer be supported in this release of Tuxedo.

 


Online Documentation

The BEA Tuxedo product documentation is available from the following locations:

Accessing the Documentation CD-ROM on Microsoft Windows Systems

To access the online documentation on CD-ROM, proceed as follows:

  1. Insert the BEA Tuxedo Documentation CD-ROM into the drive.
  2. Using Windows Explorer, click index.htm in the following directory of the Online Documentation CD-ROM:
  3. docs\tuxedo\tux90\index.htm

    The documentation home page is displayed in your browser.

Accessing the Documentation CD-ROM on UNIX Systems

To access the online documentation, proceed as follows:

  1. Insert the BEA Tuxedo Documentation CD-ROM into the drive.
  2. Mount the CD-ROM. This step might not be required for Solaris systems.

Note: For mounting instructions for the supported UNIX platforms, refer to Appendix A of Installing the BEA Tuxedo System.

  1. Start the Internet Explorer browser and set the browser to /mnt/docs/tuxedo/tux90/index.htm (where mnt is the CD-ROM mount point) and press Enter.

The documentation home page is displayed in your browser.

Accessing the Java API Documentation

Documentation for the BEA Jolt 9.0 is automatically installed on each machine on which the BEA Tuxedo software has been installed. This is in addition to the Java API documentation available on the online documentation CD-ROM.

The BEA Tuxedo API documentation is installed in the following location. TUXDIR represents the top-level directory where BEA Tuxedo is installed:

On Windows Systems:

For BEA Jolt: %TUXDIR%\udataobj\jolt\doc\index.html

On UNIX Systems:

For BEA Jolt: $TUXDIR/udataobj/jolt/doc/index.html

Using a Microsoft Internet Explorer browser, open the index.htm start page in that directory.

Copying the Product Documentation to Your System

Although it is not necessary to copy the online documentation to your system, you can do so. Depending on the speed of your computer, you may want to copy the content of the CD-ROM to a local drive for better response time.

To make the content of the CD-ROM available on the network, put the CD-ROM in a server's CD-ROM reader and designate it as shared. This option is an alternative to taking up approximately 250 MB on the server's hard drive.

Another option is to copy the contents of the Documentation CD-ROM to a Web server on your corporate intranet.

Copying the Product Documentation to Microsoft Windows Systems

To copy the content of the online documentation CD-ROM to your system, proceed as follows:

  1. Insert the online documentation CD-ROM into the CD-ROM reader.
  2. Using Windows Explorer, double-click the CD-ROM drive icon. Windows Explorer displays a doc folder at the root of the CD-ROM.
  3. In the top directory, select the doc folder and copy the content of the CD-ROM using Edit—>Copy on the Windows Explorer menu bar, or press Ctrl+c.
  4. Paste the copy on your local drive (for example, your C: drive) using
    Edit—>Paste on the Windows Explorer menu bar, or press Ctrl+v.

Note: The content of the CD-ROM can also be copied by using the drag-and-drop feature of Windows Explorer.

Copying the Product Documentation to UNIX Systems

To copy the content of the Online Documentation CD-ROM to your system, proceed as follows:

  1. Mount the CD-ROM. This step might not be required for Solaris systems.

Note: For mounting instructions for the supported UNIX platforms, see Installing the BEA Tuxedo System.

  1. Change directory to the target directory where you want to place the files. For example: cd /mydirectory/docs.
  2. Copy the entire CD-ROM content using a recursive copy command. For example:
    cp -r /mnt/cdrom/*.

Printing from a Web Browser

You can print a copy of the online documents, one file at a time, from your Web browser. Before you print, make sure that the chapter or appendix you want to print is displayed and selected in your browser. We recommend the Adobe Acrobat PDF format as a better format for printing hard copies of the BEA Tuxedo documentation, instead of printing HTML files from the browser.

Printing Adobe Acrobat PDF Files

The BEA Tuxedo documentation also includes Adobe Acrobat PDF files of all the online documents. You can use the Adobe Acrobat Reader to print all or a portion of each document, as follows:

  1. On the online documentation home page, click the PDF Files button.
  2. Scroll to the entry for the document you want to print.

 


Product Constraints

Table 4 describes product constraints for BEA Tuxedo 9.0 and provides information about recommended workarounds.

Table 4 Product Constraints 

    1.

Tuxedo XDR encode/decode functions cannot correctly encode integer data types larger than 32-bit


Description

The XDR encode/decode functions that Tuxedo uses to pass data between different machine types currently cannot encode 64-bit integer data types containing values which would not fit in a 32-bit datatype. So if the VIEW/VIEW32 long type data is out of 32-bit range, it will be truncated during XDR encode/decode.


Platforms

AIX, HP, and Solaris.


Workaround

None.

    2.

Reserved Repository IDs.


Description

Use of Repository as an interface repository ID in a #pragma ID OMG IDL directive, or use of pk_ as the beginning part of such an ID, causes a conflict with IDs used internally in the BEA Tuxedo system. Their use results in undefined behavior.


Platforms

All.


Workaround

If you use the #pragma ID OMG IDL directive, do not use Repository or any identifier that begins with pk_ as the repository identifier.

    3.

Restrictions to using the Dynamic Invocation Interface (DII).


Description

When you use DII, you may encounter problems if you do not observe certain restrictions.


Platforms

All.


Workarounds

Adhere to the following restrictions:

  • If you use CORBA::Request::set_return_type(), you must set the location where you want the ORB to place the result for the specified request. This can be done by using CORBA::Any::replace() (after setting the return type) on the Any reference returned by CORBA::Request::return_value().

  • The CORBA 2.2 specification appears to imply that when using DII the user need not specify the return type or any out only arguments; or, if specified, the user need not specify the location in which to store the result or out values. In any case, the BEA Tuxedo software requires that you specify the return type, any out only arguments, and the location in which to store the result or out values.

  • When using CORBA::ORB::send_multiple_requests_deferred(), if any of the individual requests results in an error (that is, throws a locally detected exception), the exception is propagated to the user and any requests in the sequence after the said request will not be sent (that is, the behavior is as if the CORBA::INV_TERM_ON_ERR flag had been specified). The workaround is to not use this function; instead, call CORBA::Request::send_deferred() on each request in the sequence with appropriate try/catch statements around each call.

    4.

Remote BEA Tuxedo client logon/authenticate binary userdata cannot contain NULL's.


Description

With an AuthType level of Tobj::TOBJ_APPAUTH, remote BEA Tuxedo client binary user_data passed into the logon/authenticate API cannot contain NULL's.


Platforms

All.


Workaround

It is possible for binary user_data to contain legitimate NULL's. One solution is to use the native mode rather than the IIOP mode. The native mode does not have the problem.

    5.

Client invocation times out after 60 seconds by default.


Description

The default behavior for a client application invoking a BEA Tuxedo IIOP Server Listener/Handler or server application is to time out if 60 seconds elapse without a response. The client application receives a NO_RESPONSE, NO_RESOURCES, or COMM_FAILURE exception.


Platforms

All.


Workaround

The default timeout can be changed for the application by adjusting SCANUNIT and BLOCKTIME in the UBBCONFIG file for the application, or by decreasing the load on the server.

    6.

Known problem with fonts when running the University sample applications.


Description

When running the University sample applications, the availability and size of fonts varies from platform to platform and even from machine to machine, depending on the installation. As a result, text sizes may appear too large or too small on some platforms.


Platforms

All.


Workaround

None.

    7.

Transactions with deferred, synchronous requests experience problems.


Description

When using DII, if you initiate deferred synchronous requests in the context of a transaction, the transaction does not complete successfully.


Platforms

All.


Workaround

Wait until you have received responses for deferred synchronous requests before you commit the transaction. Otherwise, results are unpredictable.

    8.

C++ reserved words in IDL for operation names.


Description

Do not use C++ reserved words as operation names in IDL files. Using C++ reserved words as operation names might cause the IDL compiler to fail.


Platforms

All.


Workaround

Change an operation name in the IDL file to a name that is not a C++ reserved word.

    9.

Mapping of CORBA and FML data types for applications that allow interoperability between BEA Tuxedo ATMI and BEA Tuxedo CORBA.


Description

BEA Tuxedo applications use FML field buffers that support a limited number of data types as described in the Programming BEA Tuxedo ATMI Applications Using FML. If you want BEA Tuxedo and BEA Tuxedo CORBA applications to interoperate, you must handle the mapping between the corresponding data types carefully. For example, a CORBA::Long is not a long for all platforms. Hence, there needs to be a conversion when reading from or writing to FML buffers after and prior to doing tpcalls from BEA Tuxedo applications. If a BEA Tuxedo application were to make a BEA Tuxedo call passing a CORBA::long as an FML long, a straight forward use would be as follows:

Fadd32(fmlbuf, LongFmlFld, 0, (char*) &WLE_CORBA_long, 0);

which you would issue prior to doing a tpcall such as:

tpcall((char*)SomeTuxService, (char*) fmlbuf,
(char**) &fmlbuf, sizeof(fmlbuf), 0)

Such a call will succeed on most platforms, but will fail on Compaq Tru64 UNIX.

Note: Any applications that use the BEA Tuxedo Notification Service to allow interoperability between BEA Tuxedo events and BEA Simple or CosNotification Structured Events would be affected by this problem.


Platforms

All.


Workaround

For BEA Tuxedo and BEA Tuxedo CORBA applications to interoperate, you must change the Fadd32 statement from:

Fadd32(fmlbuf, LongFmlFld, 0, (char*) &WLE_CORBA_long, 0);

to:

long FML_long = WLE_CORBA_long;

Fadd32(fmlbuf, LongFmlFld, 0, (char*) &FML_long, 0);

A reverse conversion would likewise be required to receive a long value returned from a tpcall and used as a CORBA::Long.

The University Wrapper sample application shows an example of this, where the ACCOUNT_NO is a long in the BEA Tuxedo Billing application wrapped by the BEA Tuxedo billw_server. The BEA Tuxedo univw_server and billw_server use a CORBA::Long for the AccountNumber and handle the conversion appropriately as follows:

CORBA::Double Teller_i::get_balance(
BillingW::AccountNumber account)
{
long account_l = account;
:

call_tux(m_tuxbuf, "CURRBALANCE");
:
}

    10.

The C++ IDL compiler does not generate correct codes for _copy_value() method if defined valuetype graph contains cycles.


Description

The CORBA OMG specification is vague about how to avoid infinite loops when copying a valuetype graph that contains cycles. For example:

//IDL
valuetype A;
valuetype B {
public A foo;
};
valuetype A {
public B bar;
};

If the _copy_value() function of valuetype A is invoked, it will call _copy_value() function of valuetype B, while _copy_value() function of valuetype B will call _copy_value() function of valuetype A, then infinite loops are in the _copy_value() function when invoked.


Platforms

All.


Workaround

Override the _copy_value() function and make it so it can deal with the loops in a manner specific to the valuetype involved or avoid defining a valuetype graph that contains cycles.

    11.

The C++ IDL compiler does not support using C++ keyword as an identifier for valuetype.


Description

The generated code by the C++ IDL compiler for valuetype that includes C++ keywords as an identifier is incorrect.


Platforms

All.


Workaround

Avoid using C++ keywords as the identifier for valuetype.

    12.

The pure virtual accessor and modifier functions for valuetype private state members are not protected.


Description

Tuxedo IDL compiler does not comply with CORBA specification when compiling valuetype with private state members. CORBA specification requires that the private members' pure virtual accessor and modifier functions should be protected, but the generated pure virtual accessor and modifier functions by Tuxedo IDL compiler are public. For examples:

//IDL
module A {
    valuetype V{
        ......
        private V m_v;
        ......
    };
};


// The generated code:
namespace A{
    class V : public virtual ::CORBA::ValueBase
    {
        ...
        public:
            // accessor and modifier for m_v
            virtual ::A::V * m_v() const = 0;
            virtual void m_v(::A::V *) = 0;
    }; // class V
}


Platforms

All.


Workaround

None.

    13.

CORBA Object-By-Value semantics are not supported in "InProc" invokes.


Description

If the CORBA server acting as a client invokes an IOR for an object that is activated in the same server process, then this is considered an "InProc" invokes and the method is invoked directly with no GIOP message generated.

The Object-By-Value semantics are not supported in "InProc" invokes scenario. If valuetype/valuebox is passed as an argument or returned as a return value in "InProc" invokes scenario, the CORBA::INTERNAL exception will be raised.

For example:

valuetype A {
    ...
};
interface foo {
    void op1(in A arg1);
};
interface bar {
    void op2(in foo arg2);
};

If the op2() method of "bar" object invokes op1() method of "foo" object passed in, and both "foo" and "bar" objects are deployed in the same server process, a CORBA::INTERNAL exception will be thrown.


Platforms

All.


Workaround

Avoid passing valuetype/valuebox in "InProc" invokes scenario, or deploy CORBA objects in different server processes.

    14.

Valuetypes that formed circular graphs will cause a CORBA server memory leak.


Description

CORBA specification allows that Valuetypes can be used to form arbitrary, potentially circular graphs. But the reference counts of circular Valuetypes may never drop to zero, this will cause server memory leak. CORBA specification is vague about how to resolve this problem in C++. BEA Tuxedo CORBA does not provide a mechanism to resolve such problems. This means if Valuetypes formed circular graphs, the CORBA server will have memory leak.

For examples:

// IDL
valuetype A;
valuetype B;

valuetype A {
    public B foo;
}

valuetype B {
    public A bar;
}

Valuetype A and B formed a circular graph.


Platforms

All.


Workaround

Avoid defining Valuetypes that will form circular graphs.

    15.

Request-level interceptors do not support Object-by-Value syntax.


Description

The marshalling stream is modified when request-level interceptors call DataInputStream::read_Value() to decode valuetypes. The Tuxedo ORB will not re-try and consequently fails to unmarshall the input stream because the stream no longer contains a properly formatted GIOP message.


Platforms

All.


Workaround

None.


 

 


Known Problems in BEA Tuxedo 9.0

The following sections describe known problems with the BEA Tuxedo software and include recommended workarounds. The problems are listed by the Change Request (CR) number. The CR number is provided to facilitate the tracking of these problems.

Contact your BEA Customer Support Center for assistance in the tracking of any unresolved problems. When contacting the BEA Customer Support Center, please refer to the CR number.

Table 5 lists known problems for BEA Tuxedo 9.0.

Table 5 Known Problems for Tuxedo 9.0

CR012652

Sequences and arrays contained by a CORBA::Any cannot be passed remotely due to their lack of a repository ID.


Problem

Sequences and arrays contained within a CORBA::Any cannot be passed remotely. These types do not have a repository ID in the syntax specified for transferring them across the wire. For a description of the Common Data Representation (CDR) Transfer Syntax, see Table 13-2 of The Common Object Request Broker: Architecture and Specification, Revision 2.2.

The repository ID is used by the receiving ORB to unmarshal the type contained by the Any. Without the ID, the ORB cannot obtain sufficient information to unmarshal the data type. This restriction may be removed in a future release.


Platforms

All.


Application Type

CORBA C++.


Workaround

Sequences and arrays can be used within other data types, such as structures, or they can be used directly as parameters.

CR012697

When you use VIEWs, strings are null terminated and characters truncated.


Problem

There is an inconsistency between BEA Jolt and native BEA Tuxedo clients. BEA Jolt does not know what a client and server agreed to exchange—a string or a null-terminated string.


Platforms

All


Workaround

Accommodate a null in the definition of the string.

CR014128

ISL will not start if there is an underscore (_) in the IP name.


Problem

The ISL fails to boot if the -n option has a hostname that contains an underscore. The error written in the user log (ULOG) is:

ISNAT_CAT:1242: ERROR: Bad Internet type of listening address provided: <node name>


Platform

Microsoft Windows.


Workaround

Ensure that the ISL is configured correctly with host and port values.

CR016275

Cannot have two data types for the same field name in input and output VIEWs.


Problem

The member in a VIEW is qualified by the structure name, so the input view and output view may use the same name for a member, but with different data types. However, BEA Jolt does not support this feature and some existing BEA Tuxedo services cannot be accessed by BEA Jolt client. A typical service that uses this feature is a gateway; it translates one data type to another data type with the same name.


Platforms

All


Workaround

Use the VIEW name to qualify the field name. For example, INVIEW and OUTVIEW both have a field birthdate, but one is an integer and the other is a string.

svc.setlnt["INVIEW.birthdate",19980308];

svc.call[null];

String bdate = svc.getStringDef["OUTVIEW.birthdate",null]

CR017633

User's jrepository file needs to be converted to use the services in JREPSVR.


Problem

Because the JREPSVR in BEA Jolt 1.1 has been changed to use FML32 instead of FML16, BEA Jolt 1.1 users should update their BEA Jolt Repository file (jrepository) to use the services in JREPSVR. This buffer type update is recommended, but not required because the old FML16 buffer type can still work with the new JREPSVR.


Platforms

All


Workaround

BEA Jolt 1.1 user should update the BEA Jolt Repository file (jrepository) to use the services in JREPSVR.

CR017675

Changing FML data types does not update JSH with changes.


Problem

It does not appear that after changing the FML field data type from int to string the JSH gets updates.


Platforms

All


Workaround

After you change the FML field definitions, reboot JSL/JSH.

CR018177

client_response() or target_response() method.


Problem

Invocations on a CORBA::Object from a C++ interceptor in the client_response() or target_response() method is not supported. The results of such an operation are not predictable.


Platforms

All.


Workaround

None.

CR018211

RLI administration restrictions.


Problem

The RLI administrative functions of registering, unregistering, and changing interceptor order are not supported while the BEA Tuxedo application is running.

The RLI administrative functions must only be done before issuing the tmboot command or after issuing the tmshutdown command. BEA Tuxedo application results are not predictable if interceptors are administered while the application is running.


Platforms

All.


Workaround

Do not register, unregister, or change the interceptor order while the BEA Tuxedo application is running.

CR018476

Missing host:port on ISL -n option causes Application and TMNTS servers to crash.


Problem

If you define an ISL without a -n host:port entry in a UBBCONFIG file, an application server that uses the notification server (TMNTS) and TMNTS crashes.


Platforms

All.


Workaround

According to RFC 810, the document that specifies the syntax for IP hostnames, hostnames cannot contain an underscore (_) character. Therefore, a listening address such as //my_computer.com:8000 is considered invalid and processes such as ISL and tlisten fail to start.

This is a problem on Microsoft Windows NT systems because hostnames with underscore characters are often used.

If you have a Windows NT system whose hostname contains an underscore, do one of the following:

  • Rename the machine so that its hostname does not contain an underscore, and change the corresponding name in the Domain Naming System (DNS) files or, if you are not using DNS, change the corresponding name in all the local HOST files.

  • Add a DNS alias (without an underscore) to the machine by adding a CNAME record.

  • Add an alias to the %WINDIR%\System32\drivers\etc\hosts file:
    123.45.67.89 my_computer.com mycomputer.com
    where the first entry is the IP address of the machine.

Then perform the following procedure:

    1. Reboot the machine.

    2. In the UBBCONFIG file, use my_computer.com when specifying the PMID entry for this machine in the MACHINES section.

    3. In all other places in the UBBCONFIG file, such as the NETWORK or SERVERS sections, or when starting listening processes, such as tlisten on the command line, use mycomputer.com as the hostname.

CR019447

Signatures get dropped when floating point values are used.


Problem

When a process is determining whether to keep or disregard a previously attached signature on a message buffer, it recalculates the signature on that buffer. If the new signature does not match the old one, then the previously verified signature on the buffer is silently dropped by the system.

The behavior of doubles and floats in this context may cause problems. Signatures are calculated on the encoded representation. For buffer types supplied by the BEA Tuxedo system, this calculation causes doubles and floats to be encoded as XDR doubles. XDR doubles may not have the same precision as the native doubles or floats on your machine.

Therefore, when a buffer containing a floating-point number or double precision floating-point number is transported to a machine with different floating-point precision and decoded on that machine, the resulting value may differ from the original value.

When the decoded number is then re-encoded from native format to XDR format, the encoding may be different. Therefore, the signature will not be verified and will be silently dropped, even if the application did not change the buffer at all.


Platforms

All.


Workaround

If you are using buffer types that are not supplied by the BEA Tuxedo system, replace the _tmencdec function in the types switch to use an encoded format with as much precision as the native format (everywhere).

CR019611

tpcall() fails when it is invoked (with the TPNOCHANGE flag set and FML or FML32 buffers) by clients on pre-Release 7.1 nodes.


Problem

In an MP configuration running multiple releases of the BEA Tuxedo system, a native client running on a release 6.5 (or earlier) node invokes tpcall() for a service on a release 7.1 node. If tpcall() sends an FML or FML32 buffer and the TPNOCHANGE flag is set, the call fails with tperrno set to TPEOTYPE.

This problem does not occur for Workstation clients on pre-release 7.1 nodes.


Platforms

All.


Workaround

Do not set the TPNOCHANGE flag in tpcall() when pre-release 7.1 native clients are calling, with FML buffers, services on a release 7.1 node.

CR020175

Automatic calls to tpterm() may not work for multithreaded and multicontexted clients.


Problem

The BEA Tuxedo system automatically calls tpterm() if a client exits without calling it explicitly. In a multicontexted and multithreaded environment, however, release 7.1 and later systems cannot detect the number of contexts that are active when the client terminates; only a single call to tpterm() is made. As a result, only one context is shut down.

Other limitations, especially when unsolicited thread notification is used, may also exist.


Platforms

All.


Workaround

Make sure that before a multicontexted client exits, it explicitly calls tpterm() for all active contexts.

CR020514

There is a 1K limit on authentication tokens on GWTDOMAIN links.


Problem

The amount of data that can be sent in authorization tokens over GWTDOMAIN links may not exceed 1024 bytes for security reasons.


Platforms

All.


Workaround

There is no workaround for a security provider that needs tokens larger than 1024. A security provider may be able to compress tokens.

CR025411

SET operation fails to reset the state of the class from ACTIVE to OPEN.


Problem

The SET operation is as follows:

TA_OPERATION SET
TA_CLASS T_APPQSPACE
TA_APPQSPACENAME MYQSPACE1
TA_QMCONFIG D:\temp\tmp.1\files/QUE1
TA_LMID L1
TA_STATE OPE

The output does not show the TA_STATE as OPEN, instead it shows it as ACTIVE only.

Note: This happens for tpadmcall only. The SET operation passes for tpcall, tpacall and tpenque.


Platforms

Microsoft Windows 2003 Server.


Workaround

Use tpcall or tpacall instead of tpadmcall.

CR031385

Value of TA_CURDISPATCHTHREADS field in TA_SERVER class in not updated properly.


Problem

The value of the TA_CURDISPATCHTHREADS field in the TA_SERVER class is not updated properly on Windows 2003 whenever there is a new thread started for the server.


Platforms

Microsoft Windows 2003 Server.


Workaround

None.

CR031816

Requests on methods using multithreading appear to time out prematurely.


Problem

In some timing situations involving multithreaded applications, a method can time out too early. A symptom of this problem is an error message similar to the following in the log file: LIBTUX_CAT:669 "ERROR: Message operation failed because of the invalid message queue identifier."

Note that this error message can also result from insufficient configuration settings for options such as MAXACCESSORS and MAXWSCLIENTS. Verify these settings before increasing the timeout settings.


Platforms

All.


Workaround

Increase the UBBCONFIG file settings for BLOCKTIME and SCANUNIT. For example: SCANUNIT 5, BLOCKTIME 6000.

CR039550

Memory leak using poll_next_response() for native client.


Problem

When running a CORBA client in native mode, calls to poll_next_response() create a small memory leak. Because poll_next_response() is typically invoked iteratively, this may eventually result in a NO_MEMORY exception.


Platforms

All.


Workaround

One solution is to use IIOP mode rather than native mode. IIOP mode does not have the problem. Another is to insert a short pause in the iterative loop so that the leak does not expand too quickly. Even a 10 millisecond pause in the loop will greatly slow down the leaking. As large a pause as is acceptable is best.

CR042034

ud32 crashes when SYSTEM_ACCESS=PROTECTED and with -C tpsysadm.


Problem

The ud32 -C tpsysadm crashes when SYSTEM_ACCESS in the configuration file is set to PROTECTED.


Platforms

All.


Workaround

None.

CR042294

ACL Security Failure on tpconnect does not return disconnect to OSI-TP Gateway.


Problem

Whenever a tpconnect (TPSENDONLY) is issued by a client to a service for which the ACL Security fails (client user ID not found in a group for which the service is allowed), a nw_disconnect is not returned to the OSI TP 4.0 Gateway. The following error messages are output to the ULOG:

111324.DALNTSMP44!CONVSERV.240.310.0: LIBTUX_CAT:1515: WARN: Access control violation - user 2 on SITE1 tried to access SERVICE TOUPPER 111324.DALNTSMP44!CONVSERV.240.310.0: LIBTUX_CAT:6187: WARN:

AUDIT_POSTOP

SECURITY FAILURE: who = , operation_name = CONNECT OPERATION,

operation_target = TOUPPER


Platforms

All.


Workaround

If it is a valid client, create the ACL entry.

CR045148

Tlisten has a typo on its usage.


Problem

The usage of tlisten shows as:

tlisten -l naddr [-d dev] [ -u {uid-# |uid-name}]
[-z {0|40|56|128}]
[-Z {0|40|56|128}]

-l naddr should be -l nlsaddr as it appears in the document. This typo misleads the user to enter in an incorrect input.


Platforms

All.


Workaround

Use this usage instead:

tlisten -l nlsaddr [-d dev] [ -u {uid-# | uid-name}] [-z {0|40|56|128}]

[-Z {0|40|56|128}]

CR045947

NO_MEMORY exception on HP.


Problem

Testing of the Active Object Map (AOM) limit for 100,000 active objects gets the NO_MEMORY exception that reports insufficient physical memory. The HP system, on which the test fail, had about 850 MB of physical memory. The Solaris system, which had 1.025 GB, worked okay for the test.


Platforms

HP-UX


Workaround

None

CR046254

TA_DMCODEPAGE returns garbage.


Problem

A DMIB test case tries to create a remote service entry using ud32; its TA_DMCODEPAGE was not passed in as part of the input. The operation succeeds without any issues, but in the return packet, the TA_DMCODEPAGE parameter is returned as garbage.


Platforms

All.


Workaround

Ignore the output for TA_DMCODEPAGE in the return packet.

CR050552

SSL URL syntax parsing not working correctly.


Problem

A URL address list containing randomized address groups followed by comma-separated lists of addresses is not being parsed correctly.


Platforms

All.


Workaround

Do not mix URL types in a list.

CR051108

Tlisten.pw file not the same between BEA WebLogic Enterprise 5.1 and BEA Tuxedo 8.1 or 9.0.


Problem

The creation of the tlisten.pw is different between BEA WebLogic Enterprise 5.1 and BEA Tuxedo 8.1 or later. The impact to the customer is in a mixed environment when there are BEA Tuxedo 8.1 or later masters and BEA WebLogic Enterprise 5.1 non-masters (potentially the same thing could be true for previous versions of BEA Tuxedo ATMI). When booting, the user will get a security violation in the ULOG when trying to connect the other system that has the previous version.

Note: When viewing the files, the contents may look the same, but they are not, the file termination string is different by one character. The only way to ensure they are the same is to do a copy or file transfer.


Platforms

All.


Workaround

To resolve this problem or prevent it from happening, a single version of the ${TUXDIR}/udataobj/tlisten.pw file should be copied to all systems in the domain(s). This file can either be taken from the BEA Tuxedo 8.1 or later home directory or the previous version's home directory.

CR071576

tlisten.pw file not the same between WLE 5.1 and Tuxedo 8.1 or later


Problem

In a mixed environment with Tuxedo 8.1 or later MASTERS and WLE 5.1 non-MASTERS, you will get a security violation in the ULOG when trying to connect the WLE 5.1 system.

This same issue may be true for previous versions of Tuxedo-ATMI.


Platforms

All.


Workaround

Copy a single version of the $TUXDIR/udataobj/tlisten.pw file to all systems in the domain. You can use this file from the Tuxedo 8.1 or later installation or from the previous version's home directory.

When viewing the files, the content may look the same, but they are not. The file termination string is different by 1 character. The only way to ensure the files are the same is to do a copy or file transfer.

CR071624

FML function Fgetalloc and CFgetalloc gives GPF in Windows 2003.


Problem

Fgetalloc gives GPF when proper FBFR*, fieldid is passed.


Platforms

Windows 2003 Server


Workaround

The problem can be fixed in one of the following ways in fml_nt.mak:

  • Use buildclient directly to compile from .c files into .exe files, setting CFLAGS (not CCFLAGS) to specify any extra compiler options.

  • Add the /MD flag to the cl -c line.

CR071960

buildclient and buildserver fails with unresolved references.


Problem

buildclient and buildserver fails with unresolved references.


Platforms

All


Workaround

When building a client or server with the XML library (libtxml), export CC= the C++ compiler before using the buildclient or buildserver command.

CR089272, CR217048

Jolt 8.1 and 9.0 do not work with WLS 6.1 SP4 when security context is enabled.


Problem

An exception is sent when a client request to WebLogic Server 6.1 (when jolt pool is configured) with Jolt 8.1 or 9.0 and the security context is enabled.


Platforms

All.


Workaround

There were changes made to the security feature in WebLogic Server 7.0. Due to that, Jolt had to be changed to work with the new security in WebLogic Server. The result is that if security context propagation is enabled, then Jolt 8.1 or 9.0 clients cannot be used with WebLogic Server releases earlier than 7.0.

CR092413

Inconsistent number of retries to connect to remote domain.


Problem

The number of retries to connect to remote domains are inconsistent when RETRY_INTERVAL value is different for different remote domains in a local domain.


Platforms

All.


Workaround

The retry message is only printed once in the ULOG even when MAXRETRY > 1 and multiple retries are attempted. Check the ULOG for the following:

The ULOG will show "INFO: Stopped retrying domain" if the remote domain could not be reached.

Otherwise, the ULOG will show "Connection established."

CR092441

On a 64-bit platform running Tuxedo 6.5, tppost of a VIEW or VIEW32 to Tuxedo 8.1 or 9.0 sometimes fails with LIBTUX_CAT:1555.


Problem

On a 64-bit platform running Tuxedo 6.5, tppost() of a VIEW or VIEW32 buffer to a Tuxedo 8.1 or later node sometimes fails with:

LIBTUX_CAT:1555: ERROR: Unsolicited message encoding/decoding failed (_tmencdec(TMDECODE) tperrno=12).


Platforms

All.


Workaround

Depending on the specific set of fields contained in the VIEW or VIEW32 buffer, the Tuxedo 6.5 node may not be allocating sufficient space to decode the buffer. The problem either always happens or never happens for a specific VIEW or VIEW32. If this problem is occurring in your application, please contact BEA Customer Support to obtain a rolling patch for the Tuxedo 6.5 node.

CR092647

tmboot fails in MP mode configuration between Tuxedo 8.1 or later and WLE 5.1.


Problem

tmboot with Master as Tuxedo 8.1 or later and WLE 5.1 as non-Master fails with error message in ULOG.


Platforms

All


Workaround

Apply the WLE 5.1 RP60 or greater to resolve this issue.

CR092705

tpcall from Tuxedo 8.1 or 9.0 to Tuxedo 7.1 fails with TPESYSTEM error in Domain configuration.


Problem

If connection policy is INCOMING_ONLY in Tuxedo 8.1 or 9.0 and ON_DEMAND on Tuxedo 7.1, all the services are shown in suspend mode, and client call fails TPENOENT error.


Platforms

All.


Workaround

This is a problem with base Tuxedo 7.1 release. You must apply Tuxedo 7.1 RP 135 or later to resolve this issue.

CR092867

All enqueue fails after Unprivileged user enqueues between WLE 5.1 and Tuxedo 8.1 or later, when security is set to MANDATORY_ACL.


Problem

All enqueue fails after unprivileged user enqueues when security is MANDATORY_ACL and the configuration is MP mode.

SHM mode works fine in Tuxedo 8.1 and later.


Platforms

All.


Workaround

Ensure that only authorized users access services during the limited period when the application is partially upgraded from WLE 5.1 to Tuxedo 8.1 or 9.0.

CR216274

The performance of GWTDOMAIN will downgrade dramatically if the two domains located at one AIX machine.


Problem

This issue has somewhat of a relationship with the ngale algorithm when the two end points of TCP located at one AIX box. Under such situation, the communication just involves system buffer transitions, and contest with IPC operations. Nagle algorithm results in performance downgrade dramatically.


Platforms

AIX


Workaround

When you turned off the ngale in TCP, the behavior will be normal.

Tuxedo GPNET provides an environment variable called SETTCPNODELAY to control the nagle algorithm usage. Set SETTCPNODELAY to any value before GWTDOMAIN startup.

CR220004

Interop: Server group cannot be migrated from Tuxedo 9.0 to Tuxedo 6.5 via MIB request.


Problem

The server group cannot be migrated from Tuxedo 9.0 to Tuxedo 6.5 via MIB request. For example, ud32 accepts a MIB request input file as:

TA_OPERATION SET

TA_CLASS T_GROUP

TA_STATE MIGRATING

TA_SRVGRP GROUP1

The reason is an operation code of interoperability was not handled well after Tuxedo 6.5.


Platforms

All.


Workaround

Use tmadmin to do the group migration. For example, with the following tmadmin commands:

>shutdown -R -g GROUP1

>migg GROUP1

CR222951

Tuxedo 9.0 may consume more memory


Problem

Due to the newly added features of Tuxedo 9.0, adding plenty of new code and data into underlying Tuxedo shared libraries (e.g. libengine.so), some of them now have much bigger size than they previously did in Tuxedo 8.1. The size increase of shared libraries cause running Tuxedo system and application processes depending on those libraries to consume more memory than before.


Platforms

All.


Workaround

Add memory capacity if upgrading an existing application. See Installation Upgrade Considerations section of Release Note.

CR223832

cnsbind utility core dumps on AIX platform. Although it core dumps, it still can finish its work.


Problem

This occurs when exiting and when enabling CORBA trace.


Platforms

AIX.


Workaround

Do not use CORBA trace.

CR218842, CR219402

CORBA: limitation of C++ Compiler on AIX 5.3


Problem

There is a limitation on CORBA code to be compiled with C++ compiler on AIX 5.3. Type CORBA::Any or structure containing an item of this type cannot be used to declare a global or static object. Otherwise, the execution will crash when exiting due to referring to already-destructed TypeCode.


Platforms

AIX


Workaround

Use these types to declare dynamic objects.

CR217411

SNMP: SMUX agent does not start on Windows.


Problem

Start snmp_integrator.exe as a service with start parameters -p and -r. Start tux_snmpd.exe as a service with parameters -r. It exits with error "Could not start the <agentname> service on local computer".


Platforms

Windows


Workaround

Configure the correct TUXDIR as the system environment before starting up the SNMP agent.

CR195891

Outbound IIOP connection cannot end by releasing the reference to the remote object.


Problem

After the outbound user limit (set by -o and -u parameters of ISL CLOPT) being reached, the server tries to release a user by assigning an empty pointer to the reference of the remote object. In 8.0RP292, assigning 0 to the reference can release a user. In Tuxedo 8.1 and 9.0 it cannot.


Platforms

Windows


Workaround

None

CR228589

Jolt Runtime MBeans could not be accessed using the console.


Problem

The Jolt Connection Pool monitoring pages in the Administration Console are unable to access the Jolt Runtime MBeans, and therefore Jolt connection pools cannot be monitored or reset using the Administration Console.


Platforms

All


Workaround

Access the Jolt Runtime MBeans using WebLogic Scripting Tool (WLST).

CR236565

CORBA: The generated stub/skeleton C++ files for an array of valuetype cannot be compiled.


Problem

The C++ IDL compiler does not support array of valuetype definition. For example,

//IDL valuetype A{ ......

}


typedef A A_array[10];


The generated C++ code for the above IDL file cannot pass compilation.


Platforms

All.


Workaround

None.

CR238601

CORBA valuetype: stub code for value box of some underlying boxed types does not provide enough overloaded operators or accessor/modifer functions.


Problem

IDL compiler does not generate enough overloaded operators or accessors/modifiers functions in the C++ stub code for valuebox classes of some underlying type. These operators or functions are convenient instruments to manipulate data/members of those underlying boxed type of the valuebox class.


See the following list.

  • valuebox class of sequence types: overloaded subscriptor operators are not provided.

  • valuebox class of array types: overloaded subscriptor operators are not provided.

  • valuebox class of string types: overloaded subscriptor operators are not provided.

  • valuebox class of wstring types: overloaded subscriptor operators are not provided.

  • valuebox class of struct types: underlying struct member accessor/modifier functions are not provided.

  • valuebox class of union types: underlying union member accessor/modifier functions, union discriminant functions are not provided.

  • valuebox class of any types: overloaded insertion/extraction operators of any type are not provided.


Platforms

All.


Workaround

First get the value/instance of the underlying boxed type using accessor method _value() of the valuebox class. Then use relevant overloaded operators or accessor/modifier functions of the real boxed type.

CR241622

CORBA valuetype: valuetype with array member cannot be constructed and a core dump results.


Problem

If there are array type members defined in a valuetype in the IDL file, the generated C++ codes are not correct.

For example,

//IDL
typedef long LongArr[10];
valuetype A {

......

public LongArr arr_val;

......

};


The generated C++ file may cause a runtime problem.


Platforms

All.


Workaround

None.

CR244880

Valuetype with underlying non-basic typed sequence members is not supported.


Problem

Valuetype definition with sequence members only support the following basic underlying types: signed/unsigned short, signed/unsigned long, octet, float, double, signed/unsigned long long, long double.

For example,

//IDL
valuetype item {
    ......
};
typedef sequence<item, 10> ItemSeq;
typedef sequence<short, 5> ShortSeq;
valuetype V {
    public ShortSeq s_val; // support
    public ItemSeq i_val; // Do not support
};


Platforms

All.


Workaround

None.

CR244894

Implementation of valuetype custom marshaling does not process wide chars correctly.


Problem

CORBA specification provides custom marshaling to override the default marshaling/unmarshaling model of valuetype. Tuxedo CORBA ORB does not process wide chars correctly when custom marshaling. The read_wchar_array() method of CORBA::DataInputStream and the write_wchar_array() method of CORBA::DataOutputStream do not process wide chars properly.


Platforms

All.


Workaround

None.


 

 


Documentation Addenda

This topic includes the following sections:

Documentation Addenda for BEA Tuxedo 9.0

Table 6 lists documentation addenda.

Table 6 BEA Tuxedo 9.0 Documentation Addenda 

CR019784

Some Windows NT and UNIX syntax errors in BEA Administration Console Online Help.


Problem

The syntax for pathnames (specifically the use of slashes and backslashes) on UNIX and Windows systems is reversed in various sections of the Online Help for the BEA Administration Console.


Workaround

Pathnames on UNIX systems are specified with slashes. Pathnames on Windows systems are specified with backslashes.

NA

The Run Simpapp step is incorrect in the BEA Administration Console Online Help.


Problem

The procedure provided for "Step 6: Run Simpapp" is incorrect in the Online Help for the BEA Administration Console.


Workaround

Modify this procedure as follows:

    1. Change the item number 2 in step 6 to read as follows:
    From the command shell that you used in step 1, set and export the TUXCONFIG environment variable as follows:
    $ TUXCONFIG=your_simp_dir/tuxconfig
    $ export TUXCONFIG

    2. Ignore item 5 in step 6.

CR092416

MBSTRING is treated the same as CARRAY. Use memcpy with MBSTRING instead of strcpy.


Problem

Error occurs if using strcpy instead of memcpy when you copy the string data after tpalloc("MBSTRING").


Workaround

Use memcpy with MBSTRING.

CR094270

GW_KEEPALIVE env does not work in Tuxedo 8.1 or 9.0.


Problem

Documentation specifies enabling TCP Keepalive using the GW_KEEPALIVE environment variable.

For BEA Tuxedo 8.1 or later, TCP Keepalive is enabled through the DMCONFIG file.


Workaround

If you are using TCP Keepalive with Tuxedo 7.1 and need to migrate to Tuxedo 8.1 or later, configure this feature using DMCONFIG. For information refer to the File Formats, Data Descriptions, MIBs, and System Processes Reference for how to configure DMCONFIG file to use TCP Keepalive in Tuxedo 8.1 or later.

Multithreaded CORBA C++ Client Considerations

Table 7 lists a multithreaded CORBA C++ client consideration.

Table 7 Multithreaded CORBA C++ Client Considerations

NA

Multithreaded CORBA C++ clients are supported.


BEA Tuxedo provides support for multithreaded CORBA client applications, for both the thread-per-request and the thread-per-object concurrency strategies. Build a multithreaded CORBA client as you would any CORBA client application. Whether the client application functions as a multithreaded client application depends on the environment in which it is run.

Note the following considerations for multithreaded CORBA client applications running in the BEA Tuxedo environment:

  • Multithreaded CORBA client applications using IIOP are supported.

  • Multithreaded native CORBA client applications are not supported.

  • Multithreaded joint client/servers are not supported.

  • A multithreaded CORBA client application is limited to a singe Bootstrap object.

  • A multithreaded CORBA client application is limited to a single logon to the BEA Tuxedo domain.

  • CORBA client applications that use static invocation can use multiple threads.

  • CORBA client applications that use the dynamic invocation interface (DII) cannot be multithreaded.

Documentation CD-ROM Search Applet Limitations

The BEA Tuxedo 9.0 documentation CD-ROM includes a standalone Java search applet to help you find topics. This section describes current limitations with the search applet.

UNC Pathnames

The Java search applet on the BEA Tuxedo 9.0 Online Documentation CD-ROM uses precompiled search databases of topics. You must adhere to one of the following options to use the Documentation CD-ROM search feature:

You cannot use the search applet if you accessed the CD-ROM or a copy of its content through a Universal Naming Convention (UNC) path. For example, UNC paths are used by the Windows NT Network Neighborhood. The search applet will not interpret the relative paths to the matched, target *.htm pages because the UNC path is added to the beginning of each link. Use one of the four recommended methods described in the preceding list.

You can use UNC paths, such as accessing the documentation CD-ROM on a Network Neighborhood system's shared CD-ROM device, for all other relative hyperlinks on the CD-ROM. Only the search applet's results list is affected by this UNC limitation.

CLASSPATH Environment Variable

On some UNIX platforms, you may encounter a browser error when you open the Online Documentation CD-ROMs Search page. For example:

Unable to start a java applet: Can't find 'java40.jar' in your CLASSPATH. 
Read the release notes and install java40.jar properly before restarting.

If the search applet does not work on your UNIX platform, try using the latest Netscape browser for the platform and add the Netscape Java ARchive (JAR) file to your CLASSPATH environment variable. The path to the JAR file is in the directory in which you installed Netscape.

For example:

CLASSPATH=mytools/netscape/communicator/program/java/classes/java40.jar 

After you revise the CLASSPATH, exit Netscape and then restart Netscape in the updated environment. When you access the Search page, the search feature should work properly.

 


How to Obtain Patches

To obtain patches, access the BEA Customer Support page at http://www.bea.com/support/ and open a New Case to request the patches. BEA customers can gain access to support information by accessing the Customer Support page and registering for a Web account.

You can also contact Customer Support by using the contact information provided on the BEA Tuxedo 9.0 Customer Support Card, which is included in the product box.

When contacting Customer Support, be prepared to provide the following information:

 

Skip navigation bar  Back to Top Previous Next