How to set the environment for coexistence of IBM WebSphere eXtended Transaction Runtime (WXTR) Version 1.0 and IBM TXSeries for Multiplatforms Version 7.1?
You can enable IBM WebSphere eXtended Transaction Runtime (WXTR) Version 1.0 and IBM TXSeries for Multiplatforms (TXSeries) Version 7.1 to coexist on an AIX server by setting the environment appropriately. As both WXTR and TXSeries share common environment variables and libraries, the appropriate environment variables need to be set before accessing either the WXTR container or TXSeries region.
Complete the following steps to run WXTR and TXSeries on the same AIX server:
1. Copy the libsarpc.a file from <TXSeries_Install_Directory>/lib directory to /usr/lib directory and the sarpcd file from <TXSeries_Install_Directory>/bin directory to /usr/bin directory respectively, with the same permissions and ownerships.
2. Delete the libsarpc.a file from <TXSeries_Install_Directory>/lib and <WXTR_Install_Directory>/lib directories. Delete the sarpcd file from<TXSeries_Install_Directory>/bin and <WXTR_Install_Directory>/bin directories.
3. Ensure that the permissions and ownerships of the copied files are appropriately set. Read and Execute permissions should be provided to all and the ownership should be set to cics:cics.
4. Set the profile for WXTR and TXSeries
- Set the profile for WXTR by changing the CICSPATH, LIBPATH, PATH and NLSPATH environment variables before accessing the WXTR container.
- Set the profile for TXSeries by changing the CICSPATH, LIBPATH, PATH and NLSPATH environment variables before accessing the TXSeries region.
Note: While setting the environment variables, ensure the following:
- In PATH environment variable, /usr/bin is set prior to <TXSeries_Install_Directory>/bin or <WXTR_Install_Directory>/bin path.
- In LIBPATH, /usr/lib is set prior to <TXSeries_Install_Directory>/lib or <WXTR_Install_Directory>/lib path.
- Ensure that the variables, CICSPATH and NLSPATH refer to the respective product.
The following environment variables need to be changed in /etc/environment and /etc/profile. You need to open a new session to reflect these changes.
A sample profile for WXTR and TXSeries is given below :
<WXTR_Install_Directory> refers to <WAS_HOME>/WXTR in AIX.
<WAS_HOME> refers to WebSphere Application Server installation directory .
<TXSeries_Install_Directory> refers to /usr/lpp/cics in AIX.
Note: You need to repeat steps 1 through 3 if you install ifix/testfix or fixpack for either WXTR or TXSeries at later point of time. Ensure that you complete step 4 every time before accessing the respective product.
5. Start the WXTR container and TXSeries region on their respective sessions. (This indicates the same session where all the mentioned changes are reflected).
Problems and workaround:
- When WXTR and TXSeries are configured with the same database in DB2, a timestamp conflict error can occur on either side while stopping/starting/creating a WXTR container or TXSeries region. You can resolve this by running the cicsdb2conf command on the region or container which is giving the error. For example:
cicsdb2conf -r <region_name/container_name> -C -i <db2_instance_name> -a <db_name> -u <user>, <password>
You can avoid this problem if you configure the WXTR container and TXSeries region with different databases.
- The startCICSServices command might fail to start a WXTR container and log the following error in the console log file:
Could not load program /usr/IBM/WebSphere/AppServer/WXTR/bin/cics:
Symbol resolution failed for cics because:
Symbol ConCO_RestartCics (number 59) is not exported from dependent
Examine .loader section symbols with the 'dump -Tv' command.
./startCICSServices -s cold