RP/Tux 7.1/Tux 8.1 - Significant delay on remote tpcall (Doc ID 775748.1)

Last updated on NOVEMBER 04, 2016

Applies to:

Oracle Tuxedo / Tuxedo / 7.1,8.1
Information in this document applies to any platform

Goal

Description:
Tux 7.1
RP 313
OS: AIX 4.3.3
There is a significant response time delay to the service calls made from a remote client to the second of two Tuxedo
instance located on the same machine.

B.  Recreation Configuration
The recreation configuration requires three Tuxedo instance networked between two machines; for example,
        MACHINE         Master Tux Instance
        Node1           Tux1 - all servers are on Node1, but clients can connect from Node1 or Node2
        Node2           Tux2 - all servers are on Node2, but clients can connect from Node1 or Node2
        Node2           Tux3 - all servers are on Node2, but clients can connect from Node1 or Node2
C.  Recreation steps:
    1.  Node1 Client connects to Tux1
    2.  Node1 Client issues service calls to Tux1 with GOOD response times
    3.  Node1 Client disconnects from Tux1 and connects to Tux2
    4.  Node1 Client issuse service calls to Tux2 with GOOD response times
    5.  Node1 Client disconnects from Tux2 and connects to Tux3
    6.  Node1 Client issuse service calls to Tux3 with POOR response times

D.  Sample Program Setup and Build Procedures
    1.  Build the client and server using these commands
        buildclient -o simpcl -f simpcl.c
            buildserver -o simpserv -f simpserv.c -s TOUPPER
     2.  Machine One Tuxedo Setup
        a)  Edit these files for machine one environment
            * c99930_tux.env
            * c99930_machine.env
            * c99930_ubb
            * c99931_tux.env
            * c99931_machine.env
            * c99931_ubb
        b)  Repeat these steps for c99930 and c99931 on machine one
            1)  Set enviornment using c9993N_tux.env
            2)  Compile c9993N_ubb
            3)  Copy simpserv into APPDIR directory
            4)  Start listener for c9993N on machine one
            5)  Start listener for c9993n on machine two
            6)  Start c9993N tux instance on machine one
    2.  Machine Two Tuxedo Setup
        a)  Edit these files for machine two environment
            * c99935_tux.env
            * c99935_machine.env
            * c99935_ubb
       b)  Set enviornment using c99935_tux.env
       c)  Compile c99936_ubb
       d)  Copy simpserv into APPDIR directory
       e)  Start listener for c99935 on machine one
       f)  Start listener for c99935 on machine two
       g)  Start c99935 tux instance on machine one

E.  Running The Test
    1.  Login to machine two
    2.  Set environment for c99935 using c99935_tux.env
    3.  Run simpcl client to connect to c99935 then c99931 then c99930, making 20 service calls per connection; that
is:
        simpcl 1 20 99935 99931 99930

    The calls to c99930 are significantly slower than the calls to c99935 and c99931.

    The issue can also be recreated by connecting to just c99930 and c99931 from a remote client (machine two) - the
3rd tux instance is not really needed.  The issues seems to happen whenever a remote client changes connections
between two Tuxedo intances on the same machine; for example:
  1.  Login to machine two
  2.  Set environment for c99931 using c99931_tux.env
  3.  Run simpcl client to connect to c99931 then c99930 making 20 service calls per connection; that is:
        simpcl 1 20 99931 99930

    The calls to 99930 will be significantly slower than the calls to c99931 and order does not matter.

    There is no performance issue if the client is run on machine one.

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms