Tmax Management

This chapter introduces Tmax management tools provided for efficient management of Tmax.

1. Overview

After the Tmax system has been fully configured and is running, the administrator will need access to the management functions to dynamically modify the configuration of the system or add servers/services. The Tmax management application also enables the administrator to monitor services, including their processing state, processing count, average processing time, queuing count, and expected waiting time. Using this information, the administrator will be able to decide when to load additional server processes or terminate excess processes.

The Tmax management program, tmadmin, is used to dynamically manage the Tmax system while it is running. Administrators can dynamically manage the system by using tmadmin and command interpreter.

2. tmadmin

The Tmax management program, tmadmin, is a command interpreter similar to the UNIX command line. The program waits for an input command and interprets and executes the command. In a system comprised of multiple nodes in a domain, tmadmin enables centralized management of the entire domain from a single node, or localized management from each node.

  • Usage

    $ tmadmin [-l] [-s|m] [-h] [-f [config_file]]
              [-n [node_name]] [-v] [-V] [-p] [-t] [-i lic_info]
    Option Description

    [-l]

    Option to allow each node to manage its own system in a multi-node system that is managed centrally through racd.

    [-s]

    Option to use read only mode. This option enables users to load up to 10 tmadmin tools, but users will not be able to dynamically modify the system. (Default mode)

    [-m]

    Option to use the master mode. Users will be able to dynamically modify the system. It is recommended that only one administrator use the master mode. If more than one user modifies the system configuration, fatal system errors can occur. Do not modify the configuration file, instead follow the preset manual.

    [-h]

    Online Help

    [-f [config_file]]

    Option to specify the name of the configuration binary file. Only needs to be used when the configuration binary does not use the default name (tmconfg).

    [-n [node_name]]

    Option to monitor the specified node. When used in a multi-node environment, tmadmin only monitors the information on the specified node for convenient system management.

    [-v]

    Option to check the Tmax version number. This option can be used to check the version from any location within the system.

    [-V]

    Option to check the version of the execution file.

    [-p]

    Option to print out the result screen when performing st –p, st –s, si, ci, or cfg command. (more function).

    [-t]

    Option to output the start and end times to execute the command.

    Execute tmadmin with the -t option to output the time in the following format.

    • Format

      [TIME][Type   ] : hh:MM:ss:millisec

      The following describes each Type option.

      • START : Displays the start time of a command.

      • END : Displays the end time of a command in the console, including the time taken for execution on remote nodes.

      • R_END : Displays the end time when a command executed from the console completes on a remote node. This time is recorded on the local node where tmadmin is executed, not on the remote node.

      • RP_START : Displays the start time before executing a command when using a tmadmin repeat command.

      • RP_END : Displays the elapsed time for executing a command when using a tmadmin repeat command, including the time taken by remote node execution.

    [-i lic_info]

    Option to display the license information in the license.dat file.

Command Execution

In tmadmin, the Tmax system can be started up or shut down through a command, and the administrator can search and modify the configuration of the running system. It can also be used to check the server process state and service processing state.

The tmadmin program is executed with the following command.

$tmadmin

Once executed, a prompt will appear to indicate that tmadmin has been properly started.

--- Welcome to Tmax Admin (Type "quit" to leave) ---
$$1 tmax1 (tmadm):

To terminate tmadmin, use the 'quit' or 'q' command.

$$1 tmax1 (tmadm):quit

The following commands can be used in tmadmin.

  • Configuration information commands

    Command Description

    config(cfg)

    Displays configuration.

    configopt(cfgopt)

    Displays current settings that can be modified dynamically among the configured options such as TMMOPT.

    licinfo

    Displays license information.

    tmaxinfo(ti)

    Displays Tmax system information.

  • Status information commands

    Command Description

    ajgwinfo(ajgwi)

    Displays JEUS async gateway information.

    clhsinfo(clhsi)

    Checks the connection status between CLHs in a multi node environment.

    cliinfo(ci)

    Displays information about clients connected to the system.

    gwinfo(gwi)

    Checks the channel states of the gateways defined in the GATEWAY section.

    jgwinfo(jgwi)

    Displays JEUS gateway information.

    nontxgwinfo(ntxgwi)

    Displays Tmax non-transaction gateway information.

    repeat(r)

    Repeats the command.

    rqstat(rqs)

    Displays RQ status, or processes services accumulated in the disk queue.

    smtrc

    Checks the service status using GID.

    stat(st)

    Provides statistics on process and service states.

    svrinfo(si)

    Displays server information.

    tmmsinfo(tmmsi)

    Checks the connection status between TMMs in a multi node environment.

    txgwinfo(txgwi)

    Displays Tmax gateway information.

    txquery(txq)

    Displays information about transaction processing.

    wsgwinfo(wsi)

    Displays Web service gateway information.

  • Administrative commands

    Command Description

    admnoti(an)

    Sends events to TCS, UCS, and RDP servers through admin.

    advertise(adv), unadvertise(unadv)

    Advertises/unadvertises a name of a particular service.

    cfgadd(ca)

    Dynamically adds a service.

    chlog

    Dynamically changes the log level of TMM, CLH, or a specific server at runtime.

    chtrc

    Manages trace activity.

    cleandynsvc(cleands)

    Removes dynamically registered services on servers containing 0 server process.

    discon(ds)

    All clients currently connected are forcibly disconnected from the system.

    logstart(logs), logend(loge)

    Starts/ends logging.

    notify_reconnect_clh(nrc)

    Notifies the server process to reconnect to a specific CLH process.

    qpurge(qp)

    Deletes tasks that are waiting in the queue.

    rebootsvr(rbs)

    Reboots a server program.

    mrebootsvr(mrbs)

    Reboots a server program in a multi-node configuration.

    reconnect_clh(rc)

    Reconnects CLH to other nodes.

    reopen_db

    Reestablishes database connection for all TMS and server processes in a server group.

    restart(rst)

    Restarts a server process.

    restat

    Resets the statistics on a specific server process or all processes.

    resume(rs)

    Resumes a server process.

    set

    Dynamically modifies the current configuration.

    setopt

    Dynamically modifies settings among options defined in the configuration, such as TMMOPT.

    suspend(sp)

    Suspends a running server process.

    txcommit, txrollback

    Reissues Commit or Rollback to terminate the transaction, if a fault occurs during transaction processing.

    wsgwreload(wsrld)

    Applies or modifies service information of a web service gateway.

  • Others

    Command Description

    !

    Repeats the previous command.

    quit(q)

    Terminates tmadmin.

    help(h)

    Displays a list of available options.

    history(hist)

    Displays a list of previously used commands.

    nodeset(ns)

    Limits tmadmin to only monitor information from the specified node.

    nodeunset(nus)

    Releases restriction of monitoring information only from a specific node.

    tmd

    Starts a virtual client emulator, which can be used to check services without creating an actual client.

3. Configuration Information Commands

3.1. config(cfg)

This command displays system configuration information. It enables users to check the configuration information, including the default value, of the domain, node, server group, server, and service. For details about the information accessed through this command, refer to Setting Configuration File.

  • Usage

    $$1 tmax1 (tmadm): config (cfg) [-d] [-n] [-g[server_group_name]]
                                    [-v[server_name]][-s [service_name] [-x]]
                                    [-w [gateway_name]] [-r] [-b] [-f] [-pr]
    Option Description

    [-d]

    Option to display information about domain configuration. Displays all items in the DOMAIN section and all information on the domain.

    [-n]

    Option to display node settings. Displays all items in the NODE section and node settings defined on the system.

    [-g [server_group_name]]

    Option to display server group settings. If the server group name is specified, only information about the server group is displayed, otherwise information about all server groups is displayed. All items related to the SVRGROUP section can be displayed for each server group.

    [-v [server_name]]

    Option to display server settings. If a server name is specified, only information about the server is displayed, otherwise information about all servers is displayed. For each server, all items related to the SERVER section, server numbers(svr_no), and data dependent routing information (DDRI) are displayed.

    [-s [service_name] [-x]]

    Option to display service settings. If a service name is specified, only information about the service is displayed, otherwise information about all services is displayed. For each service, all items related to the SERVICE section is displayed. Using the [-x] option additionally display the txtime information.

    [-w [gateway_name]]

    Option to display gateway settings. If a gateway name is specified, only information about the gateway is displayed, otherwise information about all gateways is displayed.

    [-r]

    Option to display routing settings.

    [-b]

    Option to display backup settings.

    [-f]

    Option to display Topend function information.

    [-pr]

    Option to display Topend product information.

  • Example

    • Domain settings (-d)

      The following is an example of checking the domain settings.

      $$1 tmaxi7 (tmadm): cfg -d
          domain_name = tmax1,
               shmkey = 70000,
               minclh = 1,
               maxclh = 2,
               maxuser = UNLIMITED,
               portno = 8888,
               racport = 3333,
               cmtret = YES,
               blocktime(bt) = 20,
               txtime(tt) = 0,
               nliveinq(ni) = 30,
               security = NONE,
               cpc = 1,
               maxfunc = 0,
               clichkint = 0,
               idletime = 0,
               node_count = 1,
               svg_count = 3,
               svr_count = 5,
               cousin_count = 0,
               cousin_gcount = 0,
               backup_count = 0,
               backup_gcount = 0,
               rout_count = 0,
               rout_gcount = 0,
               maxsacall = 8,
               maxcacall = 16,
               nclhchkint = -1,
               maxconv_node = 16,
               maxconv_server = 8,
               maxnode = 32,
               maxsvg = 32,
               maxspr = 64,
               maxsvr = 64,
               maxsvc = 512,
               maxcpc = 32,
               maxtms = 32,
               maxrout = 16,
               maxroutsvg = 32,
               maxrq = 2,
               maxgw = 2,
               maxcousin = 16,
               maxcousinsvg = 32,
               maxbackup = 16,
               maxbackupsvg = 32,
               maxtotalsvg = 64,
               maxprod = 0,
               tipsvc = ,
               crypt = NO
               maxthread = 128,
               tmmloglvl = DETAIL,
               clhloglvl = DETAIL,
               tmsloglvl = DETAIL,
               loglvl = DETAIL,
               cllblock = NO,
               tdl = NO,
               maxconvn = 16,
               maxconvs = 8,
               domainid = 0,
               fdlversion = 1

      The following describes information displayed when executing the command.

      Option Description

      node_count

      Number of nodes in the domain.

      svg_count

      Number of server groups in the domain.

      svr_count

      Number of servers in the domain.

      svc_count

      Number of services in the domain.

      cousin_count

      Number of groups defined as COUSIN.

      cousin_gcount

      Number of server groups defined as COUSIN.

      backup_count

      Number of groups defined as BACKUP.

      backup_gcount

      Number of server groups defined as BACKUP.

      rout_count

      Number of routing objects defined in the ROUTING element.

      rout_gcount

      Number of routing units for each range, which is defined in the range item of each routing object.

    • All node settings (-n)

      The following is an example of checking all node settings.

      $$2 tmaxi7 (tmadm): cfg -n
          node_name = tmaxi7, hostname = tmaxi7, node_no = 1,
               load = 0,
               shmkey = 70000,
               minclh = 1,
               maxclh = 2,
               curclh = 1,
               maxuser = UNLIMITED,
               Supported maximum user per node = 16105,
               Supported maximum user per handler = 16105,
               clhqtimeout(cqt) = 0,
               portno = 8888,
               racport = 3333,
               tmaxhome = /home/tp1/build2/,
               tmaxdir = /home/tp1/build2/,
               appdir = /home/tp1/build2/appbin/,
               pathdir = /home/tp1/build2/path/,
               tlogdir = /home/tp1/build2/log/tlog/,
               slogdir = /home/tp1/build2/log/slog/,
               ulogdir = /home/tp1/build2/log/ulog/,
               envfile = ,
               svgcount = 3,
               svrcount = 5,
               svccount = 2,
               sprcount = 1,
               tmscount = 0,
               cpccount = 0,
               ipcperm = 1c0,
               clichkint = 0,
               idletime = 0,
               tmmopt = ,
               clhopt = ,
               tlmopt = ,
               realsvr = ,
               rscpc = 4,
               maxsvg = 32,
               maxsprs = 64,
               maxsvr = 64,
               maxtmss = 32,
               maxcpc = 32,
               maxgwsvr = 2,
               maxrqsvr = 2,
               maxgwcpc = 8,
               maxrqcpc = 8,
               restart = YES,
               maxrstart = -1,
               gperiod = 86400,
               autobackup(ab) = YES,
               extport = 0,
               maxthread = 128,
               cllblock(cb) = NO,
               clireqblock(crb) = NO,
               slog_realname = NO,
               mac = NO,
               tmapm = NO,
               cllconnlb = RR,
               cllbindip = YES,
               tdl = NO,
               smsupport = NO

      The following describes information displayed when executing the command.

      Option Description

      node_no

      Node number defined in the system.

      svgcount

      Number of server groups on the node.

      svrcount

      Number of servers on the node.

      svccount

      Number of services that can be called by the node within the domain.

      sprcount

      Number of server processes available on the node.

      tmscount

      Number of TMSes available on the node.

      cpccount

      Number of CPCs available on compatible servers in the node.

      curclh

      Number of running CLH processes in the node.

      maxsprs

      Maximum number of server processes that can run.

      maxtms

      Maximum number of TMS processes.

    • Server group settings (-g)

      The following is an example of checking the server group settings.

      $$2 tmaxi7 (tmadm): cfg -g svg2
          svg_name = svg2, svg_no = 3 ,
               xaoption = ,
               openinfo = Oracle_XA+Acc=P/scott/tiger+SesTm=60,
               closeinfo = ,
               appdir = ,
               ulogdir = ,
               svgtype = TMAX,
               envfile = ,
               tmsname = tms_ora,
               mintms = 2,
               maxtms = 3,
               tmstype = STD,
               tmsthreads = 0,
               tmsopt = ,
               tmsrecovery = YES,
               tmsrange = DOMAIN,
               tmsxatime = 0,
               load(ld) = -9,
               tms starti = 0,
               tms endi = 2,
               restart = YES,
               maxrstart = -1,
               gperiod = 86400,
               autobackup = YES,
               dummy = NO,
               dbname = ORACLE ,
               rmid = 0
    • Server settings(-v)

      The following is an example of checking the server settings.

      $$4 tmaxi7 (tmadm): cfg -v svr2
      svr_name = svr2, svr_no = 4,
               svgno = 2,
               cursvr = 0,
               clopt = ,
               forksvr = N,
               nameext = N,
               seq = -1,
               minsvr = 1,
               maxsvr = 1,
               ulogdir = ,
               maxqcount(mq) = -1,
               asqcount(aq) = -1,
               conv = NO,
               ddri = DDR_NO_ROUT,
               lifespan(ls) = -1,
               restart(rs) = YES,
               maxrstart(mr) = -1,
               gperiod(gp) = 86400,
               svrtype = TMAX_STD,
               schedule = FA,
               cpc = 1,
               dummy = NO,
               aus = NO,
               mac = NO,
               roc = NO,
               multiclh = YES,
               ctx_ereply = NO,
               ignore_clhqtimeout = NO,
               svrqtimeout(sqt) = -1,
               tmapm(ta) = -1
    • Service settings(-s)

      The following is an example of checking the service settings.

      $$5 tmaxi7 (tmadm): cfg -s
      ---------------------------------------------------------------------------------
      svc_name     funcname  prio(pr)  autotran  svctime(st)  routno  svrname    svgno
      ---------------------------------------------------------------------------------
      _hms01                      50          NO          0      -1    _hms01        4
      TOLOWER                     50          NO          0      -1    svr2          2
      TOUPPER                     50          NO          0      -1    svr2          2
      HMS                         50          NO          0      -1    svr_hms       2
      FDLTOLOWER                  50          NO          0      -1    svr3          2
      FDLTOUPPER                  50          NO          0      -1    svr3          2
      FDLDEL                      50          NO          0      -1    fdltest       3
      FDLSEL                      50          NO          0      -1    fdltest       3
      FDLINS                      50          NO          0      -1    fdltest       3
      FDLUPT                      50          NO          0      -1    fdltest       3
      gw2301X                     50          NO          0      -1    gw2301X       0
    • Gateway configuration information (-w)

      The following is an example of checking the gateway settings.

      $$7 tmaxi7 (tmadm): cfg -w
          gw_name = gw2301X, node_no = 0, gw_no = 0,
          gw_type = TMAX,
          portno = 4020,
          rgwaddr = 192.168.1.89,
          rgwportno = 4010,
          backup_rgwaddr = ,
          backup_rgwportno = -1,
          backup_rgwaddr2 = ,
          backup_rgwportno2 = 0,
          backup_rgwaddr3 = ,
          backup_rgwportno3 = 0,
          cpc = 2,
          timeout = 30,
          direction = BIDIR,
          maxinrgw = 32,
          clopt = ,
          ptimeout = -1,
          ptimeint = -1,
          gwchkint = -1,
          gwconnect_timeout = -1,
          nliveinq = -1

3.2. configopt(cfgopt)

This command displays current settings that can be modified dynamically among the defined options such as TMMOPT.

  • Usage

    $$1 tmax1 (tmadm): configopt (cfgopt) [-tmm | -gw gwname ]
    Option Description

    -tmm

    Option to check the current settings that are dynamically configurable among options defined in the TMMOT element.

    -gw gwname

    Option to check the current settings that are dynamically configurable among options defined in the CLOPT setting in the GATEWAY element.

  • Example

    • TMMOPT setting(-d)

      The following is an example of checking the TMMOPT setting.

      $$1 node1 (tmadm): cfgopt -tmm
      ------------------------------------------------------------------------
              -tmm configurable value
      ------------------------------------------------------------------------
               accept retry count               (-A) = 100
               max forked threshold             (-F) = 95
               booting timeout                  (-t) = 10
               auto failback                    (-D) = 1
               node check try count             (-R) = 0
      ------------------------------------------------------------------------

      The following describes items that are displayed when the command is executed.

      Option Description

      accept retry count (-A)

      Number of server process access requests that can be accepted immediately. Refer to the -A option of TMMOPT.

      max forked threshold (-F)

      Maximum number of concurrent requests that can be processed when creating a new process due to TMM starting an additional server process or restarting a process. Refer to the -F option of TMMOPT.

      booting timeout (-t)

      Access timeout for a server process that was started via ASQCOUNT. Refer to the -t option of TMMOPT.

      auto failback (-D)

      Option to automatically terminate server processes of a backup server group during failback. Set to 1 to enable, or 0 to disable.

      node check try count (-R)

      By default, if the primary node in a backup server group fails, a failover operation (by the backup server group) takes place immediately after the specified NLIVEINQ time has elapsed. With this option, the system makes the specified number of reconnection attempts to the TMM of the node. If all attempts fail, a failover operation is performed. The value must be greater than or equal to 1. The default is 0. For more information, refer to "TMMOPT setting" in NODE Element.

    • CLOPT configuration in the GATEWAY element (-d)

      The following shows how to view the CLOPT configuration information for gateways.

      $$1 node1 (tmadm): cfgopt -gw gw1
      ------------------------------------------------------------------------
              -gw configurable value
      ------------------------------------------------------------------------
               debug log level                  (-D) = 0
      ------------------------------------------------------------------------

      The following describes each information item displayed by JEUS gateways when executing the command. The available configuration items may vary depending on the gateway type.

      Option Description

      debug log level (-D)

      Displays the currently configured debug logging level.

3.3. licinfo

This command displays the currently running Tmax license information.

  • Usage

    $$1 tmax1 (tmadm): licinfo
  • Example

    The Tmax license information is displayed as follows:

    $$11 tmax1 (tmadm): licinfo
    
            ###############################################
              Current License Image (node: tmax1)
            ###############################################
    
    License seqno: TRS-xxxx-xxx-xxx
    License issue date: 2021/01/01
    License type: REAL
    Edition: Standard
    Licensed sub-products:
            Distributed transaction support
            Reliable Queue subsystem
            Hybrid Messaging System
            Session Queue subsystem
            Separate UCS type server license : 16384 CPCs
            Multi-Domain transaction gateway
            Multi-Domain non-transaction gateway
            Jeus gateway
            Jeus asynchronous gateway
            Tuxedo gateway
            Tuxedo asynchronous gateway
            Web-Service gateway
            Tmax XA gateway
            HostLink gateway
            TCP/IP (thread) gateway
            X.25 gateway
            Serial(RS232) gateway
            WebT components
            Torus components
            Entera gateway
            Topend gateway
            Anylink license
            OpenFrame license
    License check by hostname: gnibm
    Unlimited license

3.4. tmaxinfo(ti)

This command displays the currently connected Tmax system information.

  • Usage

    $$1 tmax1 (tmadm): ti
  • Example

    The system version, the maximum number of users (maxuser), and additional details are displayed as follows:

    $$11 tmaxi7 (tmadm): ti
    
    Tmax System Info: REAL version 5.0 SP #2:
    
             maxuser = UNLIMITED,
             Supported maximum user per node = 1380
             Supported maximum user per handler = 691
             domaincount = 1,
             nodecount = 1,
             svgrpcount = 4,
             svrcount = 6, svccount = 11
             rout_groupcount = 0, rout_elemcount = 0
             cousin_groupcount = 0, cousin_elemcount = 0
             backup_groupcount = 0, backup_elemcount = 0
    
    Tmax All Node Info: nodecount = 1:
    ------------------------------------------------------------------
      no   name     portno  racport  shmkey  shmsize  minclh  maxclh
    ------------------------------------------------------------------
       0   tmaxi7     7733   3333    79120   552652       1      3

    The following describes each information item displayed when executing the command.

    Option Description

    nodecount

    Number of nodes in the system.

    svgrpcount

    Number of server groups in the system.

    svrcount

    Number of servers in the system.

    svccount

    Number of services in the system.

    rout_groupcount

    Number of routing objects defined in the ROUTING element.

    rout_elemcount

    Number of routing units for each range, which is defined in the range setting item for each routing object.

    cousin_groupcount

    Number of groups defined as COUSIN.

    cousin_elemcount

    Number of server groups defined as COUSIN.

    backup_groupcount

    Number of groups defined as BACKUP.

    backup_elemcount

    Number of server groups defined as BACKUP.

4. Status Information

4.1. clhsinfo(clhsi)

The nodes in a multi node environment must be connected each other. If node connections are unstable due to using a firewall or obsolete equipment, connections between nodes may be lost interrupting service processing. Such connection issues can be checked by using clhsinfo and tmmsinfo to check the connection status between nodes.

  • Usage

    $$1 tmax1 (tmadm): clhsinfo
  • Example

    The following is an example of using clhsinfo when minclh and maxclh are set to 1 and 2, respectively.

    tmaxh4@starbj81:/EMC01/starbj81/tmax/config>tmadmin
    TMADMIN for rnode (tmaxh2): starting to connect to RAC
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$1 tmaxh4 (tmadm): clhsinfo
    
    CLH 0:
    ---------------------------------------
      nodename    clhno     cpc   status
    ---------------------------------------
      tmaxh2          0       2    RDY
      tmaxh2          1       0    NRDY
    ---------------------------------------
    
    CLH 1 is not available
    Msg from rnode(tmaxh2):
    CLH 0:
    ---------------------------------------
      nodename    clhno     cpc   status
    ---------------------------------------
      tmaxh4          0       2    RDY
      tmaxh4          1       0    NRDY
    ---------------------------------------
    
    CLH 1 is not available

    The following describes each information item displayed when executing the command.

    Option Description

    nodename

    Node name.

    clhno

    CLH number.

    cpc

    CPC number.

    status

    CLH status between nodes.

    The following describes each node status.

    • NRDY(NOT_READY) : Not connected or disconnected with the target CLH.

    • RDY(READY) : Correctly connected.

4.2. cliinfo(ci)

Displays information about currently connected clients.

  • Usage

    $$1 tmax1 (tmadm): ci [–s] [-c] [-P] [-p [portno, ...]]
    Option Description

    [-s]

    Total number of connected clients.

    [-c]

    Clients connected in encryption mode. tmax_port, qpcount, and emcount of these clients are additionally displayed.

    [-P]

    tmax_port, qpcount, and emcount of all connected clients are additionally displayed.

    [-p [portno, ...]]

    Ports connected to Tmax. tmax_port, qpcount, and emcount are additionally displayed.

  • Example

    The following shows how to use the command.

    $$1 tmax1 (tmadm): ci
    CLH 0:
    ---------------------------------------------------------------------------
       cli_id    clid    status    count   lastin_time   ipaddr      usrname
    ---------------------------------------------------------------------------
         0   0x00200000    RDY         0         10       192.168.1.43
         1   0x00200001    RDY         0         91       192.168.1.43   tmax
    
    ...
    
    $$1 tmaxi9 (tmadm): ci -c
    CLH 0:
    -------------------------------------------------------------------------------------------------------------
     cli_id     clid     status  count  qpcount  emcount  lastin_time  ipaddr             usrname     tmax_port
    -------------------------------------------------------------------------------------------------------------
    
          2  0x00000002  RUN         0       0       0            1  127.0.0.1:40676                    7189
          3  0x00000003  RUN         0       0       0            1  127.0.0.1:40677                    7389
          4  0x00000004  RUN         0       0       0            1  127.0.0.1:40678                    7289
    
    -------------------------------------------------------------------------------------------------------------
    Total Connected Clients(CRYPTED) = 3
    -------------------------------------------------------------------------------------------------------------
    
    $$1 tmaxi9 (tmadm): ci -p 7189,7289,7389,7489,7589
    CLH 0:
    -------------------------------------------------------------------------------------------------------------
     cli_id     clid     status  count  qpcount  emcount  lastin_time  ipaddr             usrname      tmax_port
    -------------------------------------------------------------------------------------------------------------
    
          0  0x00000000  RUN         0       0       0            1   127.0.0.1:58235                      7189
          1  0x00000001  RUN         0       0       0            1   127.0.0.1:58236                      7389
          2  0x00000002  RUN         0       0       0            1   127.0.0.1:58238                      7489
          3  0x00000003  RUN         0       0       0            1   127.0.0.1:58237                      7589
          4  0x00000004  RUN         0       0       0            1   127.0.0.1:58239                      7289
    
    -------------------------------------------------------------------------------------------------------------
    Total(7189,7289,7389,7489,7589) Connected Clients = 5
    -------------------------------------------------------------------------------------------------------------
    
    $$8 tmaxh9 (tmadm): ci -P
    CLH 0:
    --------------------------------------------------------------------------------------------------------------
     cli_id     clid     status  count  qpcount  emcount  lastin_time  ipaddr             usrname       tmax_port
    --------------------------------------------------------------------------------------------------------------
    
          7  0x00000007  QED         0       0       0            27  192.168.1.34:63307                    12399
          8  0x00000008  QED         0       0       0            27  192.168.1.34:63308                    12399
          9  0x00000009  QED         0       0       0            27  192.168.1.34:63309                    12399
         10  0x0000000a  QED         0       0       0            27  192.168.1.34:63310                    12399
         11  0x0000000b  QED         0       0       0            27  192.168.1.34:63311                    12399
    
    --------------------------------------------------------------------------------------------------------------
    Total Connected Clients = 5
    --------------------------------------------------------------------------------------------------------------

    The following describes each information item displayed when executing the command.

    Option Description

    cli_id

    Client ID.

    clid

    Combination of the node number, CLH number, and cli_id in hexadecimal.

    status

    Current status of the client.

    The following describes each client status:

    • RDY : Client is correctly connected to CLH.

    • NRDY : Only TCP/IP socket is currently connected, but TPSTART message has not yet been sent.

    • QED : Client service requests are accumulated in the server queue.

    • CTING : Client is trying to connect to CLH.

    • UNR : Client is executing tpend(), or NCLH is down.

    • RUN : Service requested by the client is executing.

    count

    Number of services processed.

    qpcount

    Number of messages purged from queue.

    emaxcount

    Indicates how many times the queued messages have reached the max setting value.

    lastin_time

    Period of time during which a client waits after calling a service.

    ipaddr

    Client IP address. Using the -P or -p option additionally provides the port number.

    usrname

    User name defined in the usrname field for the PSTART_T struct.

    tmax_port

    Tmax access port.

    Too many abnormal client connections to CLH that are hanging can prevent other clients from connecting to CLH. Clients that do not send a TPSTART connection message within 60 seconds after the socket is connected will automatically be disconnected. When they are disconnected, the following error will occur.

    (I) CLH0209 internal error : disconnect client because client didn't send tpstart
     msg for 60 sec.(192.168.1.43) [CLH0058]

4.3. gwinfo(gwi)

This command displays the connection status of a remote gateway from tmadmin. It also displays detailed information such as if the gateway is currently connected to the main node or the backup node and which nodes are connected to the gateway.

It can be used to check the connection information of all gateways (except for web service gateways).

  • Usage

    $$1 tmax1 (tmadm): gwinfo [-w gw_name] [-t gw_type]
    Option Description

    [-w gw_name]

    Displays a specific gateway.

    gw_name is the name configured in the GATEWAY element.

    [-t gw_type]

    Displays specific gateway types.

    Enter a type defined in the GATEWAY element. (Example: TMAX)

    • TMAX

    • TMAXNONTX

    • JEUS

    • JEUS_ASYNC

    • TUXEDO

    • TUXEDO_ASYNC

    • XAGW

  • Example

    The gwinfo command results vary depending on whether the connected node is the main node or the backup node.

    • If connected to the main node

      10/user2/starbj81>tmadmin
      --- Welcome to Tmax Admin (Type "quit" to leave) ---
      
      $$1 tmaxs1 (tmadm): gwinfo
      ----------------------------------------------------------------
        gw_no   channel    type    foreign_address              status
      ----------------------------------------------------------------
         0   OUTCH      PRIM     tmaxc1(192.168.1.12:9400)     RDY
         1   OUTCH      PRIM     tmaxc1(192.168.1.12:9400)     RDY
         4   INCH          -     tmaxc1(192.168.1.12:1434)     RDY
         5   INCH          -     tmaxc1(192.168.1.12:1436)     RDY
         6   INCH          -     tmaxh2(192.168.1.48:58094)    RDY
         7   INCH          -     tmaxh2(192.168.1.48:58093)    RDY

      The following describes each information item displayed when executing the command.

      Option Description

      gw_no

      Gateway number.

      channel

      Displays whether the channel is INBOUND or OUTBOUND.

      type

      Displays whether the connected node is the main or the backup node.

      foreign_address

      IP address of the connected remote gateway.

      status

      Connection status to webt, jtmax, and webtasync. For more information about the status, refer to system status.

    • If connected to the backup node

      $$1 tmax1 (tmadm): gwinfo
      ----------------------------------------------------------------
        gw_no   channel    type    foreign_address              status
      ----------------------------------------------------------------
            0   OUTCH      BACK    tmaxh2(192.168.1.48:9200)     RDY
            1   OUTCH      BACK    tmaxh2(192.168.1.48:9200)     RDY
            6   INCH         -     tmaxh2(192.168.1.48:58091)    RDY
            7   INCH         -     tmaxh2(192.168.1.48:58092)    RDY

4.4. jgwinfo(jgwi) / ajgwinfo(ajgwi)

These commands display the connection status to JTmax or WebtAsync. It can also be used to check whether the gateway is currently connected to a main or a backup node.

Jgwinfo is used to display Java(JEUS) gateway information, and ajgwinfo is used to display Async Java(ASYNC_JEUS) gateway information.

  • Usage

    • jgwinfo

      $$1 tmax1 (tmadm): jgwinfo
    • ajgwinfo

      $$1 tmax1 (tmadm): ajgwinfo
  • Example

    • jgwinfo

      The following is an example of using the command.

      10/user2/starbj81>tmadmin
      --- Welcome to Tmax Admin (Type "quit" to leave) ---
      
      $$1 tmaxs1 (tmadm): jgwinfo
      -------------------------------------------------------------------------------
       gw_no name            channel type  foreign_address                    status
      -------------------------------------------------------------------------------
           0 gw1             OUTCH   PRIM  unknown(192.168.35.47:6555)         RDY

      The following describes each information item displayed when executing the command.

      Option Description

      gw_no

      Gateway number.

      name

      Gateway name.

      channel

      Displays whether the channel is INBOUND or OUTBOUND.

      type

      Displays whether the connected node is the main or the backup node.

      foreign_address

      IP address of the connected remote gateway.

      status

      Connection status to webt, jtmax, and webtasync. For more information about the status, refer to "system status".

    • ajgwinfo

      When connected to a backup node:

      10/user2/starbj81>tmadmin
      --- Welcome to Tmax Admin (Type "quit" to leave) ---
      
      $$1 tmax1 (tmadm): ajgwinfo
      -------------------------------------------------------------------------------
       gw_no name            channel type  foreign_address                    status
      -------------------------------------------------------------------------------
           1 gw2             OUTCH   BACK  unknown(192.168.35.47:6555)         RDY

4.5. repeat(r)

This command repeatedly displays status information. It can be used as in the following. Repeating a command is useful for monitoring status information and debugging task processing.

  • Usage

    $$1 tmax1 (tmadm): r -k n -i s command to repeat
    Option Description

    -k n

    Specifies the number of repetition (n).

    -i s

    Specifies the interval, in seconds, between repetitions (s).

    command to repeat

    Specifies the command to be repeated.

  • Example

    In the following example, st -s is to be executed at 5-second intervals 30 times.

    $$1 tmax1 (tmadm): r -k 30 -i 5 st -s

    In the following example, st -p is executed at 5-second intervals for 30 seconds.

    $$1 tmax1 (tmadm): r -k 30 -i 5 st -p

4.6. rqstat(rqs)

This command displays the status of the currently active RQs. It can also be used by an administrator to manipulate the disk queue.

  • Usage

    $$1 tmax1 (tmadm): rqstat (rqs) [-a] [-l] [-s rqname] [-f rqname] [-c rqname]
    Option Description

    [-a]

    Displays the status of all RQs in a list.

    [-l]

    Displays a list of available RQs.

    [-s rqname]

    Displays the specified RQ status.

    [-f rqname]

    Handles services queued in the specified RQ.

    [-c rqname]

    Deletes the specified RQ backlog.

    To process RQ with the [-f] and [-c] options, it must be executed in the master mode by using the tmadmin -m option.

  • Example

    • View all RQs (-a)

      Each record shows the following items.

      $$1 tmaxi9 (tmadm): rqs -a
      
                   rq1 RDY  0 0 0 0 0 5 5
      total count : 1

      The results are displayed in the following format.

      rq name status request reply fail requestenqueued requestdequeued replyenqueued replydequeued

      The last record shows the total count.

    • View available RQ (-I)

      The following is an example of querying for available RQs.

      $$1 tmax1 (tmadm): rqs -l
      list of available RQs:
      rq1 rq2
    • View RQ status (-s)

      The following shows the status of the specified RQ.

      $$1 tmax1 (tmadm): rqs -s rq1
      ----------------------------------------------------------------
      Number of queue entries
      ----------------------------------------------------------------
      request                       0
      reply                         0
      fail                          0
      ----------------------------------------------------------------
      Accumulated queue activities
      ----------------------------------------------------------------
      request enqueued             0
      request dequeued             0
      reply enqueued               10
      reply dequeued               0
      ----------------------------------------------------------------
    • Handle RQ services (-f)

      The following processes services accumulated in the RQ.

      $$1 tmax1 (tmadm): rqs -f rq2
      RQ(rq2) flushed
    • Clean RQ (-c)

      The following cleans a congested RQ.

      $$1 tmax1 (tmadm): rqs -c rq2
      RQ(rq2) statics cleared

4.7. smtrc

When the SMSUPPORT element in the NODE section of the configuration file is set to Y, executing 'st –p –x' displays GID of the running services.

  • Usage

    $$1 tmax1 (tmadm): smtrc [-a] GID0 GID1
    Option Description

    [-a]

    Option to display additional information including server process index(spri), user CPU time, system CPU time, and return information.

    GID0

    First four bytes of SysMaster GID in hexadecimal.

    GID1

    Last four bytes of SysMaster GID in hexadecimal.

  • Example

    The following is an example of executing smtrc to output the GID after executing 'st –p –x'.

    $$1 tmax1 (tmadm): st –p -x
    
    CLH 0:
    --------------------------------------------------------------
    svr_name    svgname    spr_no  status    count    avg     svc
                   PID     fail_cnt  err_cnt  min_time  max_time
                   SysMaster_GID
    --------------------------------------------------------------
       evtsvr     svg1       36      RDY         0      0.000     -1
                    17980      0       0        0.000    0.000
                    00000000-00000000-00000000
       svr1         svg1      37     RUN         0      0.000    SDLTOUPPER
                    17981      0       0       0.000    0.000
                    00000000-00000101-00000000
       svr2         svg1      38    RUN          0      0.000   SDLTOUPPER2
                    17982      0      0       0.000      0.000
                    00000000-00080101-00000000
       svr3         svg1      39    RUN          0      0.000   SDLTOUPPER3
                    17983      0      0       0.000      0.000
                    00000000-00100101-00000000
       svr_sys      svg1     40     RDY         3      0.000     -1
                    17984      0      0      0.000      0.000
                    00000000-00000000-00000000
    ----------------------------------------------------------------
       TOTAL COUNT = 3
       TOTAL SVCFAIL COUNT = 0
       TOTAL ERROR COUNT = 0
       TOTAL AVG = 0.000
       TOTAL RUNNING COUNT = 3
    
    $$1 tmax1 (tmadm): smtrc 0 0101
    CLH 0:
    -------------------------------------------------------------
       sysmaster_global_id              status             svc_name
    -------------------------------------------------------------
    00000000:00000101:00000000        SVC_RUNNING         SDLTOUPPER2
    
    45670701 tmaxi1 (tmadm): smtrc -a 0 0101
    CLH 0:
    ----------------------------------------------------------------
       sysmaster_global_id              status             svc_name
       ctime          svctime    spri    ucpu    scpu
    ----------------------------------------------------------------
    00000000:00000101:00000000        SVC_RUNNING         SDLTOUPPER2
    14:05:32:159       0.000     38     0.000   0.000
    00000000:00000101:00010000        SVC_RUNNING         SMTRACE
    14:05:32:159       0.000     40     0.000   0.000
    00000000:00000101:00010000        SVC_DONE            SMTRACE
    14:05:32:159       0.000     40     0.000   0.000

    The following describes each information item displayed when executing the command.

    Option Description

    sysmaster_global_id

    SysMaster GID.

    status

    Status of the service.

    svc_name

    Service name.

    ctime

    Log creation time.

    svctime

    Log service time.

    spri

    Index of the server processes that executed the service.

    ucpu

    User CPU time.

    scpu

    System CPU time.

4.8. stat(st)

This command displays the status of various elements in the system, including server processes. Information that can be displayed through this command includes the current state of server processes, the names of services being processed, the number of processed services, the state of services, and the number of service requests in the service queue. The stat command is abbreviated as st.

  • Usage

    $$1 tmax1 (tmadm): stat (st) {-v | -p | -s | -t | -q | -e}
                 -v [server_process_name] [-pod]
                 -p [server_process_name] [-x [-j] | -X | -d [-j]] [-o sort_conditions [-n maxline]]
                 -s [service_name] [-x | -X | -p | -l] [-o sort_conditions [-n maxline]]
                 -t [TMS_name] [-x]
                 -q [destination_name] [-c]
                 -e [event] [-s | -d | -C | -S]
    Option Description

    -v [server_process_name] [-pod]

    Option to display information about server processes. (same as si)

    If the [-pod] option is used, "(POD)" is always displayed with the POD server status. If this option is not used, RDY or NRDY is displayed when a POD server is running or not running respectively. POD server’s status is not important because it automatically starts when there is a service request even when the status is NRDY. Use this option to avoid mistaken a POD server in the NRDY status as a server error.

    -p [server_process_name] [-d] [-j]

    Option to display information about server processes. Servers registered in the Tmax configuration file can use MIN and MAX to start multiple processes, and this option is used to check the status of each server. If a server process name is specified, only information about the server process is displayed, otherwise information about all server processes is displayed.

    The overall system processing state is displayed on the last line of the 'st –p' command execution result. Statistical information including total processing count, average processing time, and the total number of active services are displayed.

    Using the [-d] option displays the elapsed time for server processes in RUN state. Otherwise, a dash ('-') is displayed instead.

    Using the [-j] option with 'st -p -x' or 'st -p -d' displays the results in a single line.

    -s [service_name] [-p] [-l]

    Option to display information about services. If a service name is specified, only information about the service is displayed, otherwise information about all services is displayed.

    Using the [-p] option displays the status of each server process running the service. This option is useful when certain server processes are suspended, as it allows checking the status process by process.

    In a multi-node environment, using the [-l] option displays a list of services registered in each node, excluding those provided by servers running in remote nodes.

    -t [TMS_name]

    Option to display dynamic information about TMS provided by the system. If a TMS name is specified, only information about the TMS is displayed, otherwise information about all TMSs is displayed.

    [-x]

    Option to display the following details when using 'st –p' or 'st –s' command to search for the state of server processes or services. Must be used with either [–s] or [–p] option. For more details, refer to Detailed Info (-x).

    • Fail count, Error count, and Process ID(PID) provided by OS

    • Minimum/maximum service processing times (min_time, max_time)

    • System, user CPU time (utime, umin_time, umax_time, stime, smin_time, smax_time) (However, if the server process or service is GATEWAY, this value is displayed as 0.)

    Adding the [–t] option additionally shows the following details.

    • Transaction ID (XID), XA processing status (xastate)

    • For multi-threaded TMS, each thread status

    [-X]

    • When using with the [-s] option

      Searches for the local status of COUSIN services in the form of status1 (status2). (Example: RDY(NRDY))

      (Status2) is the actual local status. This option prevents the problem of a local status always being displayed as RDY in a COUSIN environment. Must be used with the [–s] option.

    • When using with the [-p] option

      Searches for suspended server processes. A suspended server process is displayed as RDY(BLK).

      Only some of the server processes can be suspended. In such a case, the server status is displayed as RDY when using 'stat -v', and each suspended process is displayed with '(BLK)' appended to the end of the actual status string when using 'stat -p -X'.

    [-o sort_conditions [-n maxline]]

    Option to sort output results by the specified condition. Dynamic information about server processes and services provided by the Tmax system can be sorted by the specified condition. This option must be used together either with the [–p] or [–s] option.

    When used with the [-p] option, the available conditions are: ca, ce, aa, and ae. When used with the [-s] option, the available conditions are: ca, aa, cq, aq, and qa. For details, see Descending Sort Conditions.

    The following syntax specifies the sort order:

    • [ -o ca ]: descending order

    • [ -o ca- ]: ascending order

    Using the [-n maxline] option allows specifying the number of displayed messages lines (number of server processes or services).

    -q [destination_name] [-c]]

    Option to display information about HMS destinations.

    Displays a list of destinations defined in the configuration file, and the messages being processed at each destination.

    Using the [-c] option additionally displays details about each client for the specified destination.

    -e [event] [-s | -d | -C | -S]

    Option to display subscription information managed by CLH through tpsubscribe.

    Executing 'st -e' displays the number of subscriptions and posts for events managed by each CLH. If an event name is specified, only information for that event is displayed. If no event name is specified, information for all events is displayed.

    The following sub-options are available:

    • -s : Displays the number of subscriptions on each CLH.

    • -d : Displays detailed subscription information on each CLH.

    • -C : With the -d option, restricts the output to clients only.

    • -S : With the -d option, restricts the output to servers only.

  • Example

    • Server process information (–p)

      The following is an example of checking server process information.

      $$1 gnibm (tmadm): st -p
      
      CLH 0:
      ------------------------------------------------------------------------------
      svr_name     svgname     spr_no     status      count        avg           svc
      ------------------------------------------------------------------------------
      _rqsvg       rqsvg           34        RDY          0   0.000000         -1
      svr1         svg1            36        RDY        100   0.000051         -1
      svr2         svg1            37        RUN         31   1.240783    TOLOWER
      svr2         svg1            38        RUN         31   1.240783    TOLOWER
      svr3         svg1           137        RDY        100   0.000062         -1
      svr_ucs      svg1           138        RDY          0   0.000000         -1
      svr_conv     svg1           139        RDY          0   0.000000         -1
      svr_rq       svg1           140        RDY          0   0.000000         -1
      fdltest      svg2           141        RDY        100   0.000926         -1
      tbrtest      svg4           142        RDY         80   0.000588         -1
      ---------------------------------------------------------------------------------
      TOTAL COUNT = 442
      TOTAL AVG = 0.414
      TOTAL RUNNING COUNT = 2

      The following describes each information item displayed when executing the command.

      Option Description

      svr_name

      Server process name.

      svgname

      Name of the server group that the server process belongs to.

      spr_no

      ID of the server process.

      status

      Current status of the server process.

      The following describes each system status:

      • RDY : Ready.

      • NRDY :Not ready. The tpstart has been executed and client is connected to a socket, but data cannot be transmitted from the server. This status may occur due to a network problem.

      • RUN : Running.

      • Unregisted : Unregistered. Shown to the client immediately after tpend execution before the status is changed.

      • BLK : All processes of the service are suspended.

      • PBLK :Some server processes of the service are suspended.

      • UNADV : All server processes of the service are in the unadvertise status.

      • PUNADV : Only some server processes of the service are in the unadvertise status.

      count

      Number of processed services.

      avg

      Average process time.

      svc

      Name of the service currently being processed. If no service is being processed, -1 is displayed.

      The st command also supports wildcard characters. For example, executing st –p s* displays only the information of server names (svr_name) that begin with 's'.

      $$3 gnibm (tmadm): st -p s*
      
      CLH 0:
      ------------------------------------------------------------------------------
      svr_name     svgname     spr_no     status      count        avg           svc
      ------------------------------------------------------------------------------
      svr1         svg1            36        RDY        100   0.000051         -1
      svr2         svg1            37        RUN         73   1.264606    TOLOWER
      svr2         svg1            38        RUN         73   1.264590    TOLOWER
      svr3         svg1           137        RDY        100   0.000062         -1
      svr_ucs      svg1           138        RDY          0   0.000000         -1
      svr_conv     svg1           139        RDY          0   0.000000         -1
      svr_rq       svg1           140        RDY          0   0.000000         -1
      ---------------------------------------------------------------------------------
      TOTAL COUNT = 346
      TOTAL AVG = 0.632
      TOTAL RUNNING COUNT = 2

      The following shows an example of executing 'st –p -j'.

      $$1 redhat73 (tmadm): st -p svr2 -d
      
      CLH 0:
         ------------------------------------------------------------------------------
         svr_name     svgname     spr_no     status      count        avg           svc
                          PID       scheduled
         ------------------------------------------------------------------------------
         svr2         svg1            37        RUN          0   0.000000    TOLOWER
                        27302    3.719207
         svr2         svg1            38        RDY          0   0.000000         -1
                        27301           -
         ---------------------------------------------------------------------------------
         TOTAL COUNT = 0
         TOTAL RUNNING COUNT = 1

      The following shows an example of executing 'st –p -d -j'.

      $$2 redhat73 (tmadm): st -p svr2 -d -j
      
      CLH 0:
         ------------------------------------------------------------------------------
         svr_name     svgname     spr_no     status      count        avg           svc         PID       scheduled
         ------------------------------------------------------------------------------
         svr2         svg1            37        RUN          0   0.000000    TOLOWER       27302    8.570694
         svr2         svg1            38        RDY          0   0.000000         -1       27301           -
         ---------------------------------------------------------------------------------
         TOTAL COUNT = 0
         TOTAL RUNNING COUNT = 1
    • Service information (–s)

      The following displays service information.

      $$4 gnibm (tmadm): st -s
      
      CLH 0:
      -----------------------------------------------------------------------------------------------------
      svc_name                      svr_name       count     q_cnt   aq_cnt     q_avg         avg    status
      -----------------------------------------------------------------------------------------------------
      TOLOWER                           svr2           86       12       98  49.216270    2.564295      RDY
      TOUPPER                           svr2           88       12       98  49.216564    0.000020      RDY
      FDLTOLOWER                        svr3            0        0        0  0.000000    0.000000      RDY
      FDLTOUPPER                        svr3          100        0        0  0.000000    0.000062      RDY
      SDLTOLOWER                        svr1          100        0        0  0.000000    0.000051      RDY
      SDLTOUPPER                        svr1            0        0        0  0.000000    0.000000      RDY
      _rq1                              _rqsvg          0        0        0  0.000000    0.000000      RDY
      LOGIN                             svr_ucs         0        0        0  0.000000    0.000000      RDY
      TBRDEL                            tbrtest        20        0        0  0.000000    0.000563      RDY
      FDLINS                            fdltest       100        0        0  0.000000    0.000926      RDY
      TOUPPER_CONV                      svr_conv        0        0        0  0.000000    0.000000      RDY
      TBRSEL                            tbrtest        40        0        0  0.000000    0.000328      RDY
      FDLUPT                            fdltest         0        0        0  0.000000    0.000000      RDY
      TBRINS                            tbrtest        10        0        0  0.000000    0.000890      RDY
      TBRUPT                            tbrtest        10        0        0  0.000000    0.001373      RDY

      The following describes each information item displayed when executing the command.

      Option Description

      svc_name

      Name of the service.

      svr_name

      Name of the server running the service.

      count

      Number of processed service requests.

      q_cnt

      Number of service requests currently waiting.

      aq_cnt

      Total number of service requests, including those that were momentarily waiting.

      q_avg

      Average waiting time for the service.

      avg

      Average processing time of the service.

      status

      Current status of the service. For more information about service statuses, refer to "System Status".

      Executing 'st -s *L' displays only the information of services that end with 'L'.

      $$6 gnibm (tmadm): st -s *L
      
      CLH 0:
      -----------------------------------------------------------------------------------------------------
      svc_name                      svr_name       count     q_cnt   aq_cnt     q_avg         avg    status
      -----------------------------------------------------------------------------------------------------
      FDLDEL                            fdltest         0        0        0  0.000000    0.000000      RDY
      FDLSEL                            fdltest         0        0        0  0.000000    0.000000      RDY
      TBRDEL                            tbrtest        20        0        0  0.000000    0.000563      RDY
      TBRSEL                            tbrtest        40        0        0  0.000000    0.000328      RDY

      The following shows an example of executing 'st –s TOUPPER -p'.

      $$7 redhat73 (tmadm): st -s TOUPPER -p
      
      CLH 0:
         ---------------------------------------------------------------------
         svc_name          svr_name          spr_no       PID        status
         ---------------------------------------------------------------------
         TOUPPER           svr2                  37     16228           BLK
         TOUPPER           svr2                  38     16227           RDY
    • TMS information(-t)

      The following displays TMS information.

      $$7 gnibm (tmadm): st -t
      
      CLH 0:
      ------------------------------------------------------------------------------------
      tms_name     svgname    spr_no      status   count    avg      cqcount aqcount qavg
      ------------------------------------------------------------------------------------
      tms_ora      svg2            0       RDY       76    0.007035      0      6     0.001955
      tms_ora      svg2            1       RDY       24    0.010558   (  0)    (  6)     (0.001955)
      tms_tbr      svg4            3       RDY       40    0.009124      0      0     0.000000
      tms_tbr      svg4            4       RDY        0    0.000000   (  0)    (  0)     (0.000000)

      The following describes each information item displayed when executing the command.

      Option Description

      tms_name

      Name of the TMS.

      svgname

      Name of the server group contaiting the TMS.

      spr_no

      Process ID of the TMS.

      status

      The current status of the TMS. For more information, refer to "System Status".

      count

      Number of TMS requests processed.

      avg

      Average TMS processing time.

      cqcount

      Number of service requests currently waiting.

      aqcount

      Total number of service requests, including those that were momentarily waiting.

      qavg

      Average service waiting time.

      For multi-threaded TMS, the thread status can be provided as well.

      $$1 tmax1 (tmadm): st -t -x
      CLH 0:
      ------------------------------------------------------------------------------------
      tms_name     svgname    spr_no(tid) status   count    avg   cqcount aqcount qavg
       PID         XID                    xastate
      ------------------------------------------------------------------------------------
      tms_ora_mt   svg2a           3       RUN        0    0.000000      0      0     0.000000
       44040492    000:000:13505         commit
      tms_ora_mt   svg2a           3(  1)  RDY        0%   0.00   (  0)
                   -                       -
      tms_ora_mt   svg2a           3(  2)  RDY        0%   0.00   (  0)
                   -                       -
      tms_ora_mt   svg2a           3(  3)  RDY        0%   0.00   (  0)
                   -                       -
      tms_ora_mt   svg2a           3(  4)  RDY        0%   0.00   (  0)
                   -                       -
      ---------------------------------------------------------------------------------
    • Detailed information (-x)

      The following shows an example of executing 'st –p'.

      $$9 gnibm (tmadm): st -p -x
      
      CLH 0:
      ------------------------------------------------------------------------------
      svr_name     svgname     spr_no     status      count        avg           svc
                       PID   fail_cnt    err_cnt      min_time         max_time
                        utime     umin_time     umax_time         stime     smin_time     smax_time
      ------------------------------------------------------------------------------
      svr1         svg1            36        RDY        100   0.000051         -1
                     65601838          0          0   0.000036   0.000106
                     0.000001   0.000000   0.000013   0.000001   0.000000   0.000033
      fdltest      svg2           141        RDY        100   0.000926         -1
                     62849402          0          0   0.000675   0.002264
                     0.000061   0.000048   0.000240   0.000034   0.000029   0.000053
      tbrtest      svg4           142        RDY         80   0.000588         -1
                     62587274          0          0   0.000237   0.009868
                     0.000024   0.000013   0.000329   0.000010   0.000008   0.000019
      ---------------------------------------------------------------------------------
      TOTAL COUNT = 580
      TOTAL SVCFAIL COUNT = 0
      TOTAL ERROR COUNT = 0
      TOTAL AVG = 0.428
      TOTAL RUNNING COUNT = 0

      The following shows an example of executing 'st –s’다.

      $$10 gnibm (tmadm): st -s -x
      
      CLH 0:
      --------------------------------------------------------------------------------------
      svc_name       svr_name       count     q_cnt   aq_cnt     q_avg         avg    status
                                     fail_cnt  err_cnt                mintime        maxtime
                      utime    umintime    umaxtime       stime       smintime       smaxtime
      --------------------------------------------------------------------------------------
      TOLOWER            svr2          100        0       98  63.730579    2.564289      RDY
                                            0        0               2.564236       2.565636
                   0.000006    0.000004    0.000013    0.000014        0.000012     0.000027
      TOUPPER            svr2          100        0       98  63.730919    0.000020      RDY
                                            0        0               0.000017       0.000064

      The following describes each information item displayed when executing the command.

      Option Description

      PID

      PID of the server process.

      fail_cnt

      Number of failures that occurred in the server process/service.

      err_cnt

      Number of errors that occurred in the server process/service.

      mintime

      Minimum time used to handle a service.

      maxtime

      Maximum time used to handle a service.

      utime

      User time consumed whenever a server process executes a service.

      umin_time

      Minimum consumed user time.

      umax_time

      Maximum consumed user time.

      stime

      System time consumed whenever a server process executes a service.

      smin_time

      Minimum consumed system time.

      smax_time

      Maximum consumed system time.

    • Sort results (–o)

      The following shows an example of adding the [-o] option when executing 'st –p'.

      $$1 tmax1 (tmadm): st –p –o ca
      CLH 0 :
      ------------------------------------------------------------------------
      svr_name   svgname         spr_no     status      count    avg    svc
      ------------------------------------------------------------------------
      svr2          svg1           37     RDY         10     0.000062     -1
      svr1          svg1           36     RDY          6     0.000928      -1
      svr3          svg1           38     RDY          2     0.000511      -1
      ------------------------------------------------------------------------
      TOTAL COUNT = 18
      TOTAL AVG = 0.000
      TOTAL RUNNING COUNT = 0

      The following shows an example of adding the [-o] option when executing 'st –s'.

      $$13 gnibm (tmadm): st -s -o ca
      
      CLH 0:
      --------------------------------------------------------------------------------------
      svc_name       svr_name       count     q_cnt   aq_cnt     q_avg         avg    status
      --------------------------------------------------------------------------------------
      TOUPPER            svr2          100        0       98  63.730919    0.000020     RDY
      SDLTOLOWER         svr1          100        0        0  0.000000    0.000051      RDY
      TOLOWER            svr2          100        0       98  63.730579    2.564289     RDY
      FDLTOUPPER         svr3          100        0        0  0.000000    0.000062      RDY
      FDLINS             fdltest       100        0        0  0.000000    0.000926      RDY
      TBRSEL             tbrtest        40        0        0  0.000000    0.000328      RDY
      TBRDEL             tbrtest        20        0        0  0.000000    0.000563      RDY
      TBRINS             tbrtest        10        0        0  0.000000    0.000890      RDY
      TBRUPT             tbrtest        10        0        0  0.000000    0.001373      RDY
      TPENQ              svr_rq          0        0        0  0.000000    0.000000      RDY
      • Descending order condition

        Condition Description

        ca

        Number of processed requests (count)

        aa

        Average processing time (avg)

        cq

        Number of requests currently in the queue (cq_count)

        aq

        Average number of requests in the queue (aq_count)

        qa

        Average queuing time (q_avg)

        ce

        Sorts by server based on the number of requests processed by each server.

        ae

        Sorts by server based on the average processing time of each server.

      • Ascending order condition

        Condition Description

        ca-

        Number of processed requests (count)

        aa-

        Average processing time (avg)

        cq-

        Number of requests currently in the queue (cq_count)

        aq-

        Average number of requests in the queue (aq_count)

        qa-

        Average queuing time (q_avg)

        ce-

        Sorts by server based on the number of requests processed by each server.

        ae-

        Sorts by server based on the average processing time of each server.

    • Specifying the number of lines of an output message (-n)

      The following is an example of specifying the number of lines of an output message to 2.

      $$15 gnibm (tmadm): st -p -o ca -n 2
      
      CLH 0:
      ------------------------------------------------------------------------------
      svr_name     svgname     spr_no     status      count        avg           svc
      ------------------------------------------------------------------------------
      svr1         svg1            36        RDY        100   0.000051         -1
      svr2         svg1            37        RDY        90   1.282161         -1
      -------------------------------------------------------------------------------
      TOTAL COUNT = 580
      TOTAL AVG = 0.428
      TOTAL RUNNING COUNT = 0

      The following is an example of specifying the number of lines of an output message to 3.

      $$1 gnibm (tmadm): st -s -o ca -n 3
      
      CLH 0:
      ------------------------------------------------------------------------------------
      svc_name     svr_name       count     q_cnt   aq_cnt     q_avg         avg    status
      ------------------------------------------------------------------------------------
      TOUPPER          svr2          90        0       98  63.730919    0.000020      RDY
      SDLTOLOWER       svr1          80        0        0  0.000000     0.000051      RDY
      TOLOWER          svr2          70        0       98  63.730579    2.564289      RDY
    • HMS destination information (-q)

      The following is an example of querying information about HMS Destination.

      $$1 tmax1 (tmadm): st -q
      ----------------------------------------------------------------------------------
      G  dest       cqcount   type   apqcnt   acqcnt  f_dscrd  t_dscrd cons_cnt prod_cnt
      ----------------------------------------------------------------------------------
      -  queue01         58  QUEUE      169      111        0        0       30        5
      -  topic01         32  TOPIC       42      283        0        0       28        3

      The following describes each information item displayed when executing the command.

      Item Description

      G

      If the destination is set to GLOBAL, this is displayed as 'O', otherwise it is displayed as a hyphen (-).

      dest

      Destination name defined in the HMS section of the configuration file.

      cqcount

      Number of messages that have not been processed at the destination.

      type

      Destination type.

      • QUEUE

      • TOPIC

      apqcnt

      Total number of accumulated messages up to now.

      acqcnt

      The total number of messages that have been processed by a consumer. Since a Topic message is not considered to be complete until all consumers receive the message, acqcnt may become larger than apqcnt.

      f_dscrd

      Number of messages that could not be processed.

      t_dscrd

      Number of messages, with TTL set, that have expired.

      cons_cnt

      Number of consumers connected to the destination.

      prod_cnt

      Number of producers connected to the destination.

      The following shows the details about the clients of a particular destination.

      $$1 tmax1 (tmadm): st -q queue01 -c
      ------------------------------------------------------------------------------
          sesi     clid     cname      clitype qcnt  cnt  f_dscrd t_dscrd   listener
      ------------------------------------------------------------------------------
             0    0x39d prodasync        ARCV    49    0    0    0         ASYNCSVC
           0x1        0 prod41           SND      0   32    0    0
           0x1        0 prod42           SND      0   11    0    0
           0x1        0 cons51           RCV      3    0    0    0
           0x1        0 cons52           RCV      9    0    0    0
      
      $$2 tmax1 (tmadm): st -q topic01 -c
      ------------------------------------------------------------------------------
          sesi     clid     cname      clitype qcnt  cnt  f_dscrd t_dscrd   listener
      ------------------------------------------------------------------------------
           0x1        0 prod11           PUB      0    2    0    0
           0x1        0 prod12           PUB      0    1    0    0
           0x1        0 cons11           SUB     30    0    0    0
           0x2      0x2 prod21           PUB      0   16    0    0
           0x2      0x2 prod22           PUB      0    8    0    0
           0x2      0x2 cons21           SUB     23    0    0    0
           0x3        0 prod31           PUB      0    3    0    0
           0x4      0x4 cons41           ADSUB   32    0    0    0          ASYNCSVC2

      The following describes each information item displayed when executing the command.

      Field Description

      sesi

      Number of the session that created the client.

      clid

      Client ID.

      cname

      Client name.

      clitype

      Type of the client connected to the destination

      • SND: Queue type sender (created by hms_create_sender())

      • PUB: Topic type publisher (created by hms_create_publisher())

      • RCV: Queue type receiver (created by hms_create_receiver())

      • SUB: Topic type subscriber (created by hms_create_subscriber())

      • DSUB: Topic type durable subscriber (created by hms_create_durable_subscriber())

      • ARCV: Queue type receiver created in an async session

      • ASUB: Topic type subscriber created in an async session

      • ADSUB: Topic type durable subscriber created in an async session

      qcnt

      Number of messages that each subscriber actually possesses.

      cnt

      Number of messages sent or received by each client.

      f_dscrd

      Number of messages that could not be processed.

      t_dscrd

      Number of messages, with TTL set, that have expired.

      listener

      Name of the service that will receive a message for a consumer created by an ASYNC session.

    • Subscription information (–e)

      The following displays the information of subscriptions managed by CLH.

      $$6 gnibm (tmadm): st -e
      
      -----------------------------------------------------------------
        clh  eventname         subscriptions  postCount  entryPostCount
      -----------------------------------------------------------------
          0  hello1                      100          1             100
          0  hello10                     200          0               0
          0  hello17                     100          2             200
          0  hello2                      300          0               0
          0  hello20                     100          0               0
          0  hello9                      500          0               0
      -----------------------------------------------------------------
      Total event topic = 6
      Total subscriptions = 1300
      -----------------------------------------------------------------

      The following describes each information item displayed when executing the command.

      Field Description

      eventname

      Name of the event specified in tpsubscribe().

      subscriptions

      Number of subscriptions to the event.

      postCount

      Number of times tppost() was executed for the event.

      entryPostCount

      Number of subscribers that received the event when tppost() was called.

      The following shows an example of executing 'st -e -d'.

      $$4 gnibm (tmadm): st -e -d
      
      --------------------------------------------------------------------------------------
      clh  eventname     clid(or spri)   sd  createTime  lastTime  postCount  svc(or qname)
      --------------------------------------------------------------------------------------
        0  hello1        svrsub(165)      0  02:41:12    02:55:13          1  (SVC)SUBSCRIBE
        0  hello10       svrsub(66)       9  02:41:11    -                 0  (SVC)SUBSCRIBE
        0  hello19       0x00000069       1  12:45:43    -                 0  -
        0  hello19       0x00000069       2  12:45:43    -                 0  -
      --------------------------------------------------------------------------------------
       Total subscriptions = 4
      --------------------------------------------------------------------------------------

      The following describes each information item displayed when executing the command.

      Field Description

      eventname

      Name of the event specified in tpsubscribe().

      clid(or spri)

      ID of the subscriber that called tpsubscribe().

      • clid: Client ID. (see the 'ci' command)

      • spri: Server (e.g., 'svrname(spri)')

      sd

      SD value returned by tpsubscribe().

      createTime

      Time when tpsubscribe() was called. If more than 20 hours have elapsed, the date is displayed instead of the hour.

      lastTime

      Time when the subscriber last received the event through tppost(). If more than 20 hours have elapsed, the date is displayed instead of the hour.

      postCount

      Number of times the subscriber received the event through tppost().

      svc(or qname)

      Name of the service or RQ specified by the server calling tpsubscribe(). When tppost() is called, the event is sent to the specified service or RQ.

4.9. svrinfo(si)

This command displays information about each currently active server process.

  • Usage

    $$1 tmax1 (tmadm): si
  • Example

    The following is an example of using the command.

    $$5 tmaxs1 (tmadm): si
    ------------------------------------------------------------------------
    clh   svrname   (svri)   status   count   qcount  qpcount  emcount
    ------------------------------------------------------------------------
    0    scoresdl  (  0)     NRDY         0        0        0       0
    0    bank2     (  1)     RDY          0        0        0       0
    0    svr1      (  2)     RDY          0        0        0       0
    0    svr2      (  2)     RDY          0        0        0       0
    0    svr3      (  2)     NRDY         0        0        0       0
    0    api       (  2)     RDY          0        0        0       0
    0    syncrtn   (  2)     RDY          0        0        0       0
    0    ucs       (  2)     NRDY         0        0        0       0
    0    ucssvr    (  2)     RDY          0        0        0       0
    0    broad     (  2)     NRDY         0        0        0       0
    0    selins    (  2)     NRDY         0        0        0       0

    The following describes each information item displayed when executing the command.

    Field Description

    clh

    CLH number.

    svrname

    Server name.

    (svri)

    Server ID.

    status

    Current status of a server. For more information, refer to "System Status".

    count

    Number of processed requests.

    qcount

    Number of enqueued requests on the server.

    qpcount

    Number of requests deleted from the queue.

    emcount

    Number of requests returned due to exceeding the maximum number of enqueued requests.

4.10. tmmsinfo(tmmsi)

This command displays the connection information between TMMs in a multi-node environment.

  • Usage

    $$1 tmax1 (tmadm): tmmsinfo
  • Example

    The following shows an example of executing the command.

    tmaxh4@starbj81:/EMC01/starbj81/tmax/config>tmadmin
    TMADMIN for rnode (tmaxh2): starting to connect to RAC
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$1 tmaxh4 (tmadm): tmmsinfo
    ------------------------------------------
      no   nodename     livectime    status
    ------------------------------------------
       1   tmaxh2        13:53:53    RDY
    Msg from rnode(tmaxh2):
    ------------------------------------------
      no   nodename     livectime    status
    ------------------------------------------
       0   tmaxh4        13:53:08    RDY

    The following describes each information item displayed when executing the command.

    Field Description

    no

    TMM number.

    nodename

    Node name.

    livectime

    Time when the channel was last used.

    status

    Node status.

    The following describes each node status:

    • NRDY(NOT_READY) : The node is not yet connected or has been disconnected.

    • RDY(READY) : The node is correctly connected.

    • REG(REGISTERED) : The node is currently being connected to another node.

    • UNR(UNREGISTERED) : The node is shutting down via tmdown.

    • NSTRT(NCLHSTARTED) : The node’s CLH has started while the node is currently being connected to another node.

    • CTNG(TRYINGTOCONNECT) : The node is connected only to the TCP/IP sockets and has not yet sent message to the target node.

    • NPING(ALIVECHECK) : The node is connected and performing alive checks.

    • NPING2(ALIVECHECK2) : The node is connected but does not respond to alive checks.

4.11. txgwinfo(txgwi) / nontxgwinfo(ntxgwi)

These commands display the connection status to a remote gateway. It can also be used to check whether the gateway is currently connected to a main or a backup node and to which specific node it is connected to.

Txgwinfo (txgwi) is used to display Tmax Gateway information, while nontxgwinfo (ntxgwi) is used to display Tmax non-transaction (TMAXNONTX) Gateway information.

  • Usage

    • txgwinfo

      $$1 tmax1 (tmadm): txgwinfo
    • nontxgwinfo

      $$1 tmax1 (tmadm): nontxgwinfo
  • Example

    The following is an example of using each command.

    • txgwinfo

      10/user2/starbj81>tmadmin
      --- Welcome to Tmax Admin (Type "quit" to leave) ---
      
      $$1 tmaxs1 (tmadm): txgwinfo
      ----------------------------------------------------------------
        gw_no   channel    type    foreign_address              status
      ----------------------------------------------------------------
         0   OUTCH      PRIM     tmaxc1(192.168.1.12:9400)     RDY
         1   OUTCH      PRIM     tmaxc1(192.168.1.12:9400)     RDY
         4   INCH          -     tmaxc1(192.168.1.12:1434)     RDY
         5   INCH          -     tmaxc1(192.168.1.12:1436)     RDY
         6   INCH          -     tmaxh2(192.168.1.48:58094)    RDY
         7   INCH          -     tmaxh2(192.168.1.48:58093)    RDY

      The following describes each information item displayed when executing the command.

      Option Description

      gw_no

      Gateway number.

      channel

      Displays whether the channel is INBOUND or OUTBOUND.

      type

      Displays whether the connected node is the main or the backup node.

      foreign_address

      IP address of the connected remote gateway.

      status

      Connection status to webt, jtmax, and webtasync. For more information about the status, refer to "System Status".

    • nontxgwinfo

      When connected to a backup node:

      $$1 tmax1 (tmadm): nontxgwinfo
      ----------------------------------------------------------------
        gw_no   channel    type    foreign_address              status
      ----------------------------------------------------------------
            0   OUTCH      BACK     tmaxh2(192.168.1.48:9200)     RDY
            1   OUTCH      BACK     tmaxh2(192.168.1.48:9200)     RDY
            6   INCH          -     tmaxh2(192.168.1.48:58091)    RDY
            7   INCH          -     tmaxh2(192.168.1.48:58092)    RDY

4.12. txquery(txq)

This command displays information about transactions currently being processed.

  • Usage

    $$1 tmax1 (tmadm): txquery(txq) [-x] [-t] [-g svgname] [-w [-r] [-G gwname]]
                                    [<upper-global-xid><lower-global-xid>]
    Option Description

    [ -x ]

    Option to search for information about each transaction branch.

    [ -g svgname ]

    Option to search for transaction branch of the group with the svgname.

    [ -w ]

    Option to search for a domain subtransaction tree.

    [ -r ]

    Option to search with the XID of the remote domain.

    [ -G gwname]

    Option to search for the domain gateway of gwname.

    [-t]

    Option to search for the XID and SVG number of transactions initiated by a remote domain that are still pending and have not yet been committed or rolled back.

    upper-global-xid

    First 4 bytes of gtid of the xid to search for.

    lower-global-xid

    Last 4 bytes of gtid of the xid to search for.

  • Example

    • Transaction search

      The following is an example of querying for transactions.

      $$14 tmax1 (tmadm): txq
      CLH0:
      ---------------------------------------------------------------------
      cli_id   txstime  txqcount txrcount   XID       txstate   xastate
      ---------------------------------------------------------------------
      c0023   8:33:34      1         0   000:000:00022 TXBEGIN    TX_OK
      c0024  18:33:34      1         0   000:000:00023 TXBEGIN    TX_OK
      c0025  18:33:34      1         0   000:000:00024 TXBEGIN    TX_OK
      c0026  18:33:34      1         0   000:000:00025 TXBEGIN    TX_OK
      c0027  18:33:34      1         0   000:000:00026 TXBEGIN    TX_OK
      c0028  18:33:34      1         0   000:000:00027 TXBEGIN    TX_OK
      c0029  18:33:34      1         0   000:000:00028 TXBEGIN    TX_OK
      c0030  18:33:34      1         0   000:000:00029 TXBEGIN    TX_OK
      c0031  18:33:34      1         0   000:000:00030 TXBEGIN    TX_OK

      The following describes each information item displayed when executing the command.

      Field Description

      cli_id

      ID of the currently connected client.

      txstime

      Time when the transaction was executed.

      txqcount

      Number of transactions waiting in the queue.

      txrcount

      Number of transactions already processed.

      XID

      Transaction ID.

      txstate

      Current transaction status.

      • TXBEGIN

      • TXCOMMIT

      • TXROLLBACK

      xastate

      XA status.

    • Transaction information (-x)

      The following is an example of querying for transaction information.

      $$6 tmaxh4 (tmadm): txquery -x
      CLH 0:
      ----------------------------------------------------------------
      cli_id  clid   txstime txqcount txrcount   XID             txstate
      xastate bqualno   nodename      svgname     txbstate    xabstate
      ----------------------------------------------------------------
        c1526 0x000005f6 15:13:35  4      0    34800000:0008c087 TXBEGIN
       TX_OK   (B)00000000   tmaxh4    svg12301X      BEGIN         XA_OK
               (B)00000001   tmaxh4      gw2301X      BEGIN         XA_OK
               (B)00000002   tmaxh4      gw2302X      BEGIN         XA_OK
               (B)00000003   tmaxh4    svg12302X      BEGIN         XA_OK
        c1527 0x000005f7 15:13:35  4       0    34800000:0008c089 TXBEGIN
        TX_OK   (B)00000000   tmaxh4    svg12301X     BEGIN         XA_OK
                (B)00000001   tmaxh4      gw2301X     BEGIN         XA_OK
                (B)00000002   tmaxh4      gw2302X     BEGIN         XA_OK
                (B)00000003   tmaxh4    svg12302X     BEGIN         XA_OK
    • Searching for transactions of a group (-g)

      The following is an example of querying for transactions of a group.

      $$7 tmaxh4 (tmadm): txq -g svg12301X
      
      CLH 1:
      ----------------------------------------------------------------
        cli_id    clid   txstime txqcount  txrcount     XID     txstate
      xastate  bqualno    nodename    svgname     txbstate      xabstate
      ----------------------------------------------------------------
        c1595 0x0000463b 15:14:10   1       0   34800001:0008e953 TXBEGIN
      TX_OK   (B)00000000   tmaxh4   svg12301X     BEGIN         XA_OK
        c1596 0x0000463c 15:14:10    1       0    34800001:0008e956 TXBEGIN
      TX_OK
         (B)00000000         tmaxh4    svg12301X     BEGIN         XA_OK
        c1597 0x0000463d 15:14:10    1       0  34800001:0008e957 TXBEGIN
      TX_OK   (B)00000000   tmaxh4    svg12301X     BEGIN        XA_OK
    • Transaction tree search (-w)

      The following is an example of querying a transaction tree.

      $$9 tmaxh4 (tmadm): txquery -w
      
      CLH 0:
      ----------------------------------------------------------------
        gw_no txstime txqcount txrcount    XID    RXID   txstate xastate
      ----------------------------------------------------------------
        g0004 17:00:00    2     0 34800000:0008c38e 39800000:0003bcf7 PHASE2 TX_OK
        g0004 17:00:00    2     0 34800000:0008c38f 39800000:0003bcf8 PHASE1 TX_OK
        g0004 17:00:00    2     0 34800000:0008c391 39800000:0003bcf9 PHASE2 TX_OK
        g0004 17:00:00    2     0 34800000:0008c39a 39800000:0003bd00 PHASE1 TX_OK
        g0004 17:00:00    2     0 34800000:0008c3a1 39800000:0003bd08 PHASE1 TX_OK
        g0004 17:00:00    1     0 34800000:0008c3a3 39800000:0003bd09 sTXBEGIN TX_OK
        g0005 17:00:00    2     0 34800000:0008c38b 3e800100:000177f6 PHASE2 TX_OK
        g0005 17:00:00    2     0 34800000:0008c38d 3e800101:00014ff7 PENDING TX_OK
        g0005 17:00:00    2     0 34800000:0008c390 3e800101:00014ff8 PENDING TX_OK
        g0005 17:00:00    2     0 34800000:0008c392 3e800000:0006e050 PHASE1 TX_OK
        g0005 17:00:00    2     0 34800000:0008c396 3e800000:0006e052 PHASE1 TX_OK
        g0005 17:00:00    2     0 34800000:0008c397 3e800100:000177f8 PHASE1 TX_OK
        g0005 17:00:00    2     0 34800000:0008c398 3e800000:0006e055 PHASE1 TX_OK
        g0005 17:00:00    2     0 34800000:0008c399 3e800101:00014ff9 sTXBEGIN TX_OK
        g0005 17:00:00    2     0 34800000:0008c39c 3e800100:000177f9 PENDING TX_OK
        g0005 17:00:00    2     0 34800000:0008c39d 3e800000:0006e05a sTXBEGIN TX_OK
        g0005 17:00:00    2     0 34800000:0008c39e 3e800101:00014ffa PHASE1 TX_OK
        g0005 17:00:00    1     0 34800000:0008c39f 3e800000:0006e05b sTXBEGIN TX_OK
        g0005 17:00:00    1     0 34800000:0008c3a2 3e800100:000177fa sTXBEGIN TX_OK
        g0004 17:00:00    2     0 34800000:0008eb51 39800001:0003e50d PHASE2 TX_OK
        g0004 17:00:00    2     0 34800000:0008eb53 39800001:0003e510 PHASE2 TX_OK
        g0004 17:00:00    2     0 34800000:0008eb58 39800001:0003e516 PHASE1 TX_OK
        g0004 17:00:00    2     0 34800000:0008eb5b 39800001:0003e519 sTXBEGIN TX_OK
        g0005 17:00:00    2     0 34800000:0008eb4d 3e800001:0007084f PHASE2 TX_OK
        g0005 17:00:00    2     0 34800000:0008eb50 3e800001:00070852 PHASE2 TX_OK
        g0005 17:00:00    2     0 34800000:0008eb52 3e800001:00070854 PHASE2 TX_OK
        g0005 17:00:00    1     0 34800000:0008eb56 3e800001:00070858 sTXBEGIN TX_OK
        g0005 17:00:00    1     0 34800000:0008eb5a 3e800101:00014ffb sTXBEGIN TX_OK
        g0005 17:00:00    1     0 34800000:0008eb5c 3e800001:0007085b sTXBEGIN TX_OK

      The following is an example of using the [-w] and [-r] options.

      ### txquery -w -r ###
      $$11 tmaxh4 (tmadm): txquery -w -r
      
      CLH 1:
      ----------------------------------------------------------------
        gw_no txstime txqcount txrcount       XID           RXID      txstate xastate
      ----------------------------------------------------------------
        g0004 17:00:00    2     0 34800001:0008ed0a 39800001:0003e6bc PENDING TX_OK
        g0004 17:00:00    2     0 34800001:0008ed0b 39800001:0003e6bd PENDING TX_OK
        g0004 17:00:00    2     0 34800001:0008ed0c 39800001:0003e6be PHASE1 TX_OK
        g0004 17:00:00    2     0 34800001:0008ed0f 39800001:0003e6c1 PHASE1 TX_OK
        g0005 17:00:00    2     0 34800001:0008ed00 3e800001:000709aa PHASE2 TX_OK
        g0005 17:00:00    2     0 34800001:0008ed03 3e800101:00015046 PHASE2 TX_OK
        g0005 17:00:00    2     0 34800001:0008ed04 3e800100:00017846 PHASE2 TX_OK
        g0005 17:00:00    2     0 34800001:0008ed05 3e800001:000709b1 PENDING TX_OK
        g0005 17:00:00    2     0 34800001:0008ed06 3e800100:00017847 PENDING TX_OK
        g0005 17:00:00    2     0 34800001:0008ed07 3e800001:000709b2 sTXBEGIN TX_OK
        g0005 17:00:00    2     0 34800001:0008ed08 3e800100:00017848 PENDING TX_OK
        g0005 17:00:00    2     0 34800001:0008ed09 3e800100:00017849 PHASE2 TX_OK
        g0004 17:00:00    2     0 34800001:0008c53f 39800000:0003bea9 PHASE2 TX_OK
        g0004 17:00:00    2     0 34800001:0008c540 39800000:0003beab PHASE2 TX_OK
        g0004 17:00:00    2     0 34800001:0008c545 39800000:0003beaf PHASE1 TX_OK
        g0004 17:00:00    2     0 34800001:0008c546 39800000:0003beb0 PHASE1 TX_OK
        g0004 17:00:00    2     0 34800001:0008c548 39800000:0003beb2 sTXBEGIN TX_OK
        g0005 17:00:00    2     0 34800001:0008c51c 3e800000:0006e192 PHASE2 TX_OK
        g0005 17:00:00    2     0 34800001:0008c536 3e800000:0006e1a5 PHASE2 TX_OK
        g0005 17:00:00    2     0 34800001:0008c537 3e800100:00017845 PHASE2 TX_OK
        g0005 17:00:00    2     0 34800001:0008c539 3e800000:0006e1a7 PHASE2 TX_OK
        g0005 17:00:00    2     0 34800001:0008c53e 3e800000:0006e1ad PENDING TX_OK
        g0005 17:00:00    2     0 34800001:0008c541 3e800101:00015047 PENDING TX_OK
        g0005 17:00:00    2     0 34800001:0008c542 3e800000:0006e1af PENDING TX_OK
        g0005 17:00:00    2     0 34800001:0008c543 3e800101:00015048 PENDING TX_OK
        g0005 17:00:00    2     0 34800001:0008c544 3e800101:00015049 PHASE1 TX_OK

4.13. wsgwinfo(wsi)

This command displays web service gateway information.

  • Usage

    $$1 tmax1 (tmadm): wsgwinfo [-i svrid[ svrid]]
    Option Description

    [-i svrid [ svrid]]

    Svrid list to check.

  • Example

    The following is an example of using the command.

    10/user2/starbj81>tmadmin
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$1 tmaxs1 (tmadm): wsgwinfo
    ------------------------------------------------------------------------
    svrid    load_time                     current_client    max_attach_time
    ------------------------------------------------------------------------
    2        Wed Jan 13 12:43:39 2010      0                 0.0sec
    ------------------------------------------------------------------------

    The following describes each information item displayed when executing the command.

    Field Description

    svrid

    Gateway’s svr index.

    load_time

    Startup time of the web service gateway.

    current_client

    Number of clients that are currently connected.

    max_attach_time

    Maximum time spent for processing a single service.

5. Administrative Commands

5.1. admnoti(an)

This command sends events to the TCS, UCS, and RDP servers through tmadmin.

tmadmin sends event requests to the specified servers, which then invoke user-defined callback functions to process the events. If no callback functions have been registered in a server process, events for that process are ignored.

If the -l or -n option is not specified, the same requests are sent to all nodes via RACD. When TMM receives a command from tmadmin, it forwards the requests to each server process and immediately returns success to tmadmin. Therefore, it is not possible to verify whether all server processes actually received the events. If a server process receives an event while running a service, it first completes the service before invoking the callback function to process the event.

When tmadmin receives a response, it prints: * "send request(reqno:%d(request number)) %d(number of processes) times" * "send OK" if there is at least one process that can receive the next event * "Failed to send request" if no process can receive the event

  • Usage

    $$1 tmax1 (tmadm): an [-a | -g svgname | -v svrname | -p spri | -P pid]
                          [notification message]
    Option Description

    [-a]

    Sends events to all server processes. This is a required option and cannot be used with any other required option.

    [-g svgname]

    Sends events to all server processes in the specified svgname. This is a required option and cannot be used with any other required option.

    [-v svrname]

    Sends events to all server processes in the specified svrname. This is a required option and cannot be used with any other required option.

    [-p spri]

    Sends events to server processes in the specified spri. This is a required option and cannot be used with any other required option.

    [-P pid]

    Sends events to server processes in the specified pid. This is a required option and cannot be used with any other required option.

    [notification message]

    Message to send to the callback function. This option is optional.

  • Example

    The following is an example of using the command.

    $$2 tmaxc1 (tmadm): rc node2
    
    $$2 tmaxc1 (tmadm): rc node3 -a
  • Register a callback function to receive events from server programs

    To receive events using the following API, a callback function must be registered in each server program. For more information, refer to Tmax Reference Guide.

    typedef int (*TPADMNOTI)(int seqno, int len, char *args);
    int tpregancb(TPADMNOTI callback);
    int tpunregancb();

5.2. advertise(adv) / unadvertise(unadv)

These commands register (advertise)/unregister(unadvertise) a specific service name.

When a service is advertised, the name of the service will be registered in the Service Name Table, which CLH manages for each server. When the service is unadvertised, it will be deleted from the Service Name Table.

In other words, advertise allows the server process to advertise its new service, and unadvertise allows the server process to unadvertise its service. When an unadvertised service is called, a TPENOENT error will occur. However, even though a certain service is unadvertised in one server process, the service routine can be executed if another server process is providing the service.

  • Usage

    • Advertise

      $$1 tmax1 (tmadm): advertise {-s svc_name [-p pid]}
      Option Description

      -s svc_name

      Registers a service name.

      [-p pid]

      Registers the PID of a server process.

    • Unadvertise

      $$1 tmax1 (tmadm): unadvertise {-s svc_name [-p pid]}
      Option Description

      -s svc_name

      Unregisters a service name.

      [-p pid]

      Unregisters the PID of a server process.

  • Example

    • Unadvertising a service (unadvertise -s)

      The following is an example of unadvertising a service whose name is TOUPPER and server process ID is 15287. Before executing advertise or unadvertise, check the service status using the st command.

      $$1 tmax1 (tmadm): st -p -x
      
      CLH 0:
      ----------------------------------------------------------------
      svr_name     svgname    spr_no    status     count     avg      svc
                        PID     fail_cnt  err_cnt  min_time  max_time
                       utime  umin_time  umax_time   stime  smin_time  smax_time
      ----------------------------------------------------------------
      svr2         svg1           36       RDY          0       0.000     -1
                    15285           0       0      0.000      0.000
                    0.000      0.000      0.000      0.000      0.000      0.000
      svr2         svg1           37       RDY          0       0.000     -1
                    15286           0       0      0.000      0.000
                    0.000      0.000      0.000      0.000      0.000      0.000
      svr2         svg1           38     RDY          0      0.000     -1
                    15287           0       0      0.000      0.000
                    0.000      0.000      0.000      0.000      0.000      0.000
      ----------------------------------------------------------------
         TOTAL COUNT = 0
         TOTAL SVCFAIL COUNT = 0
         TOTAL ERROR COUNT = 0
         TOTAL RUNNING COUNT = 0
      
      $$1 tmax1 (tmadm): unadvertise -s TOUPPER –p 15287
      TOUPPER is unadvertise
      $$8 tmaxh4 (tmadm): st -s
      
      CLH 0:
      ----------------------------------------------------------------
      svc_name  svr_name   count   cq_cnt   aq_cnt   q_avg    avg   status
      ----------------------------------------------------------------
      TOUPPER    svr2           0       0       0       0.000   0.000  PUNADV
    • Advertising a service (advertise -s)

      The following is an example of advertising an unadvertised service. Before executing advertise or unadvertise, check the service status using the st command.

      $$1 tmax1 (tmadm): st -p -x
      
      CLH 0:
      ----------------------------------------------------------------
      svr_name     svgname    spr_no    status     count     avg      svc
                        PID     fail_cnt  err_cnt  min_time  max_time
                       utime  umin_time  umax_time   stime  smin_time  smax_time
      ----------------------------------------------------------------
      svr2         svg1           36       RDY          0       0.000     -1
                    15285           0       0      0.000      0.000
                    0.000      0.000      0.000      0.000      0.000      0.000
      svr2         svg1           37       RDY          0       0.000     -1
                    15286           0       0      0.000      0.000
                    0.000      0.000      0.000      0.000      0.000      0.000
      svr2         svg1           38     RDY          0      0.000     -1
                    15287           0       0      0.000      0.000
                    0.000      0.000      0.000      0.000      0.000      0.000
      ----------------------------------------------------------------
         TOTAL COUNT = 0
         TOTAL SVCFAIL COUNT = 0
         TOTAL ERROR COUNT = 0
         TOTAL RUNNING COUNT = 0
      
      $$1 tmax1 (tmadm): advertise -s TOUPPER –p 15287
      TOUPPER is advertise
      
      $$11 tmaxh4 (tmadm): st -s
      
      CLH 0:
      ----------------------------------------------------------------
      svc_name    svr_name    count  cq_cnt  aq_cnt   q_avg    avg  status
      ----------------------------------------------------------------
      TOUPPER      svr2           0       0        0      0.000    0.000  RDY

5.3. cfgadd(ca)

This command is used to dynamically add a service to a specific server program while Tmax is running by only shutting down the related server. A server, server group, or node can also be added dynamically during operation. In Tmax 5.0 and later, a binary configuration file cannot be added dynamically without using the -a option of cfl. Therefore, a configuration file must be compiled with the -a option.

When restarting Tmax after performing a dynamic update using cfgadd, the new configurations must be applied to the original configuration file, and then compiled through cfl before booting.

For restrictions on dynamically adding a service by using cfgadd(ca), refer to Restrictions on dynamic addition using cfgadd(ca).

  • Usage

    $$1 tmax1 (tmadm) :  cfgadd (ca)  - i  cfgfile
    Option Description

    - i cfgfile

    Specifies the name of a configuration file for the service to be added.

Dynamically adding a service

The following is the process of executing cfgadd(ca) to dynamically add a service.

  1. Create a new configuration file to add.

    $vi new.m
  2. Add the created configuration file to the existing configuration file with the -a option. Execute cfl with the –o option to create a binary configuration file with a different name.

    $cfl -i org.m -a new.m -o tmchg
  3. Execute gst to create a service table.

    $gst -f tmchg
  4. Execute "tmadmin –m" and use cfgadd(ca) to add the service.

    $cfgadd -i tmchg
  5. Compile the server program.

    $compile c svr1
  6. Load the server process.

    $tmboot –S svr1
Dynamically adding a server

The following is the process of executing cfgadd(ca) to dynamically add a server.

  1. Create a new configuration file “tmchg.m”, and add additional settings to the file.

    <tmchg.m>

    *SERVER
    hello           SVGNAME = svg1
    *SERVICE
    HELLO           SVRNAME = hello
  2. Compile the new configuration file. Tmconfig.m is the existing configuration file, and tmchg.m is the new configuration file.

    cfl -i tmconfig.m -a tmchg.m -o tmchg
  3. Create a service table.

    gst -f tmchg
  4. Use cfgadd –i to add the configuration file.

    tmaxi1@dhjang ./config > tmadmin -m
    $$3 tmaxi1 (tmadm): si
    -------------------------------------------------------------
    clh  svrname (svri) status   count   qcount   qpcount  emcount
    -------------------------------------------------------------
    0   tmaxgw  (  0)    RDY      0        0        0        0
    0   toupper ( 18)    RDY      0        0        0        0
    
    $$4 tmaxi1 (tmadm): cfgadd -i tmchg
    config is successfully added
    $$5 tmaxi1 (tmadm): si
    -------------------------------------------------------------
    clh  svrname (svri) status   count   qcount   qpcount  emcount
    -------------------------------------------------------------
    0   tmaxgw  (  0)    RDY      0        0        0        0
    0   toupper ( 18)    RDY      0        0        0        0
    0   hello   ( 19)   NRDY      0        0        0       0

    The hello server is in the NRDY state.

  5. Enter the following command: tmboot -S hello -f tmchg

    tmaxi1@dhjang ./config > tmboot -S hello -f tmchg
    TMBOOT for node(tmaxi1) is starting:
    Welcome to Tmax demo system: it will expire 2002/8/31
    Today: 2002/8/19
            TMBOOT: SVR(hello) is starting: Mon Aug 19 15:37:44 2002
  6. Execute the si command to check if the server hello is now RDY.

    $$6 tmaxi1 (tmadm): si
    -------------------------------------------------------------
    clh  svrname (svri) status   count   qcount   qpcount  emcount
    -------------------------------------------------------------
    0   tmaxgw  (  0)    RDY      0        0        0        0
    0   toupper ( 18)    RDY      0        0        0        0
    0   hello   ( 19)    RDY      0        0        0       0
Dynamically adding a server group

The process for dynamically creating a new server group is essentially the same as that for dynamically adding a server. The only difference is the settings in the new configuration file. The configuration file must include settings for the server group being created, as well as the servers and services that will belong to the server group.

<tmchg.m>

*SVRGROUP
svg2        NODENAME = "aix5l"

*SERVER
svr3        SVGNAME = svg2, MIN = 1, MAX = 10

*SERVICE
FDLTOUPPER  SVRNAME = svr3
FDLTOLOWER  SVRNAME = svr3
Dynamically adding a node

The following is the process of executing cfgadd(ca) to dynamically add a node. It can also be used to add the node that a COUSIN server group belongs to.

The following is the process of executing cfgadd(ca) to dynamically add a node.

  1. Create a configuration file.

    <tmconfig.m>

    *DOMAIN
    tmax1           SHMKEY = @SHMEMKY@, MINCLH = 1, MAXCLH = 3,
                    TPORTNO = @TPORTNO@, BLOCKTIME = 300, MAXCPC = 100,
                    RACPORT = @TRACPORT@
    *NODE
    @HOSTNAME@      TMAXDIR = "@TMAXDIR@",
                    APPDIR  = "@TMAXDIR@/appbin",
    @RMTNAME@       TMAXDIR = "@RMTDIR@",
                    APPDIR  = "@RMTDIR@/appbin",
    
    *SVRGROUP
    svg1            NODENAME = "@HOSTNAME@",COUSIN = "svg2",LOAD = 2
    svg2            NODENAME = "@RMTNAME@",LOAD = 1
    
    *SERVER
    svr2            SVGNAME = svg1
    
    *SERVICE
    TOUPPER         SVRNAME = svr2
    TOLOWER         SVRNAME = svr2

    <tmconfig_add.m>

    *NODE
    @RMTNAME2@      TMAXDIR = "@RMTDIR2@",
                    APPDIR  = "@RMTDIR2@/appbin",
    
    *SVRGROUP
    svg1            NODENAME = "@HOSTNAME@",COUSIN = "svg2,svg3",LOAD = 2
    svg3            NODENAME = "@RMTNAME2@",LOAD = 1
  2. Execute racd on the newly added node.

    Node3>$ racd -k
  3. Compile the configuration file. Compile tmconfig_add.m, the configuration file to which the new node has been added. Execute cfl with the –o option to create a binary configuration file with a different name.

    node1>$cfl -i tmconfig.m -a tmconfig_add.m –o tmchg
    CFL is done successfully for node(node1)
    
    CFL: rcfl start for rnode (node2)
    CFL is done successfully for node(node2)
    
    CFL: rcfl start for rnode (node3)
    CFL is done successfully for node(node3)
  4. Compile the server. Compile the server of the node to be added.

    node3>$ gst -f tmchg
    node3>$ compile c svr2
  5. Add the node. Dynamically add the node with the cfgadd command of tmadmin. Note that the command must be executed on each node as 'tmadmin –l'.

    The following is an example of adding node3 when node1 and node2 already exist.

    # node1
    $ node1>tmadmin –l -m
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$2 node1 (tmadm): cfgadd -i tmchg
    (I) TMM0211 General Infomation : CFGADD started [TMM0902]
    (I) TMM0211 General Infomation : CFGADD completed [TMM0907]
    config is successfully added
    
    # node2
    $ node2>tmadmin –l -m
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$2 node2 (tmadm): cfgadd -i tmchg
    (I) TMM0211 General Infomation : CFGADD started [TMM0902]
    (I) TMM0211 General Infomation : CFGADD completed [TMM0907]
    config is successfully added
  6. Load the newly added node3.

    Node3>tmboot -n tmaxh4 -f tmchg
    TMBOOT for node(tmaxh4) is starting:
    Welcome to Tmax demo system: it will expire 2008/11/23
    Today: 2008/9/24
            TMBOOT: TMM is starting: Wed Sep 24 11:11:59 2008
            TMBOOT: CLL is starting: Wed Sep 24 11:11:59 2008
    (I) TMM0211 General Infomation : node register (nodeno = 0(0)) success [TMM0404]
    (I) TMM0211 General Infomation : node register (nodeno = 1(1)) success [TMM0404]
            TMBOOT: CLH is starting: Wed Sep 24 11:11:59 2008
    (I) CLH9991 Current Tmax Configuration: Number of client handler(MINCLH) = 1
                    Supported maximum user per node = 7966
                    Supported maximum user per handler = 7966 [CLH0125]
            TMBOOT: TLM(tlm) is starting: Wed Sep 24 11:11:59 2008
            TMBOOT: SVR(svr2) is starting: Wed Sep 24 11:11:59 2008
  7. Verify that the node has been added successfully.

    node1>tmadmin
    TMADMIN for rnode (node2): starting to connect to RAC
    TMADMIN for rnode (node3): starting to connect to RAC
    --- Welcome to Tmax Admin (Type "quit" to leave) ---
    
    $$1 node1 (tmadm): ti
    
    Tmax System Info: DEMO version 4.0 SP #3 Fix #8:
    
             expiration date = 2008/11/22
             maxuser = UNLIMITED,
             domaincount = 1,
             nodecount = 3,
             svgrpcount = 3,
             svrcount = 9, svccount = 6
             rout_groupcount = 0, rout_elemcount = 0
             cousin_groupcount = 1, cousin_elemcount = 3
             backup_groupcount = 0, backup_elemcount = 0
    
    Tmax All Node Info: nodecount = 3:
    ----------------------------------------------------------------
      no   name     portno  racport  shmkey  shmsize  minclh  maxclh
    ----------------------------------------------------------------
       0   node1     8350    3155     88350   225760       1      3
       1   node2     8350    3155     88350   225760       1      3
       2   node3     8350    3155     88350   225760       1      3
    
    $$2  (tmadm): st -s
    
    CLH 0:
       --------------------------------------------------------------
       svc_name    svr_name   count cq_cnt  aq_cnt  q_avg   avg   status
       --------------------------------------------------------------
       TOLOWER       svr2         0       0       0     0.000   0.000  RDY
       TOUPPER       svr2         0       0       0     0.000   0.000  RDY
    
    Msg from rnode(node2):
    
    CLH 0:
       --------------------------------------------------------------
       svc_name    svr_name   count cq_cnt  aq_cnt  q_avg   avg   status
       --------------------------------------------------------------
       TOLOWER       svr2         0       0       0     0.000   0.000  RDY
       TOUPPER       svr2         0       0       0     0.000   0.000  RDY
    
    Msg from rnode(node3):
    
    CLH 0:
       --------------------------------------------------------------
       svc_name    svr_name   count cq_cnt  aq_cnt  q_avg   avg   status
       --------------------------------------------------------------
       TOLOWER       svr2         0       0       0     0.000   0.000  RDY
       TOUPPER       svr2         0       0       0     0.000   0.000  RDY
Restrictions on dynamic addition using cfgadd(ca)

Dynamically adding a service, server, server group or node by using cfgadd(ca) has the following restrictions:

  • An item can only be added, not removed. To remove an item, remove it from the existing environment file and execute cfl before restarting Tmax.

  • An item name that exists in the configuration file cannot be duplicated in the newly added configuration file.

  • When the contents of a newly added configuration file are applied to the existing configuration file, they must be added to the end of each section. If items are inserted in the middle of the existing configuration or the order is changed, the operating environment information can be modified incorrectly. Attention is required.

  • When adding a new item, the newly added configuration file must be already applied to the existing configuration file that is used with the 'cfl -i' option.

  • Items can be added to the MAXNODE, MAXSVG, MAXSVR, MAXSPR, MAXSVC, MAXTMS, and MAXCPC settings.

  • When adding an XA server group, specify TMS and check that the program has been created.

  • RQ cannot be added dynamically.

  • A server group that has a COUSIN/BACKUP cannot be added or removed.

  • A gateway that has a COUSIN/BACKUP cannot be added or removed.

  • A service that is dynamically added to the server group, which has a COUSIN/BACKUP, cannot be removed.

  • When adding the service, server, and server group, CFL must be used to create a binary configuration file for the dynamic addition.

    If a binary configuration file, which is created using CFL without the '–a' option, is added dynamically, the following error message will be displayed.

    (E) ADM2048 Engine type mismatch (0): 'a' option must be used [ADM0417]
  • Limits on the number of dynamic additions at once

    • Tmax 5 SP1: Up to 64 gateways, 64 servers, and 512 services

    • Tmax 5 SP2: Limited only by available memory

5.4. chlog

The chlog command can be used to dynamically change the log level in order to rapidly handle specific error conditions. The module must be in debug mode to check the log using chlog. The cfg command can be used to confirm that the change to the log level has been applied successfully.

  • Usage

    $$1 tmaxs1 (tmadm) : chlog [-t|-c |-v [server_name]|-g [server_group_name]|-m]
                                -l [loglvl]
    Option Description

    [-t]

    TMM log level.

    [-c]

    CLH log level.

    [-v [server_name]]

    Log level of the specified server.

    [-g [server_group_name]]

    Log level of the specified server group.

    [-m]

    TMS log level.

    -l [loglvl]

    Actual log level.

    Select one of the following options listed in the order of increasing low level details.

    • COMPACT

    • BASIC

    • DETAIL

    • DEBUG1

    • DEBUG2

    • DEBUG3

    • DEBUG4

  • Example

    • Dynamically modifying the TMM log level (-t)

      The following is an example of dynamically changing the log level of TMM.

      tmaxh2:/data1/starbj81/tmax/config> tmadmin -l -m
      --- Welcome to Tmax Admin (Type "quit" to leave) ---
      
      $$1 tmaxh2 (tmadm): chlog -t -l DEBUG4
      log level is updated
      $3 tmaxh2 (tmadm): cfg -n
          node_name = tmaxh2, hostname = tmaxh2, node_no = 1
      ...
          tmmloglvl = DEBUG4,
      ...
    • Dynamically modifying the CLH log level (-c)

      The following is an example of dynamically changing the log level of CLH.

      tmaxh2:/data1/starbj81/tmax/config> tmadmin -m -l
      --- Welcome to Tmax Admin (Type "quit" to leave) ---
      
      $$1 tmaxh2 (tmadm): chlog -c -l COMPACT
      log level is updated
      $$2 tmaxh2 (tmadm): cfg -n
          node_name = tmaxh2, hostname = tmaxh2, node_no = 1
          tmmloglvl = DEBUG4,
          clhloglvl = COMPACT,
      ...
    • Dynamically modifying the TMS log level (-m, -g)

      The following is an example of dynamically changing the log level of TMS.

      $$3 tmaxh4 (tmadm): chlog -m -g svg32306X -l debug3
      log level is updated
      $$4 tmaxh4 (tmadm): cfg –g
          svg_name = svg32306X, svg_no = d
          tmsloglvl = DEBUG3,
      ...
    • Dynamically modifying the log level of a server group (-g)

      The following is an example of dynamically changing the log level of a specific server group.

      $$4 tmaxh2 (tmadm): chlog -g svg3 -l DETAIL
      log level is updated
      $$5 tmaxh2 (tmadm): cfg -g
          svg_name = svg3, svg_no = 10002
          loglvl = DETAIL
      ...

5.5. chtrc

TMAX_TRACE enables runtime tracing in a Tmax system. To use this function, TMAX_TRACE must be defined in the Tmax configuration file, and the chtrc command can be used in tmadmin to dynamically modify the configurations.

  • Usage

    chtrc [-g svgname |-v server| -i sprno]] -s newspec
    Option Description

    [-g svgname]

    Modify the spec of a server group.

    [-v server]

    Modify the spec of a server.

    [-i sprno]

    Modify the spec of a server process.

    -s newspec

    New spec.

  • Example

    • Modifying the spec of all servers on a node(-s)

      The following is an example of modifying the spec of all servers on a specific node in a single node environment.

      $$1 tmaxs1 (tmadm): chtrc -s newspec

      The following is an example of applying a new TRACE spec to a specific node in a multi node environment.

      $$1 tmaxh3 (tmadm): nodeset $HOSTNAME
      node is set to $HOSTNAME
      $$2 tmaxh3 (tmadm): chtrc –s newspec
    • Modifying server group spec (-g)

      The following is an example of modifying the spec of all servers of a specific server group.

      $$1 tmaxs1 (tmadm): chtrc -g svgname -s newspec
    • Modifying server spec (-v)

      The following is an example of modifying the spec of all servers of a specific server group.

      $$1 tmaxs1 (tmadm): chtrc -g svgname -s newspec

      The following is an example of modifying the spec of a specific server of a server group.

      $$3 tmaxs1 (tmadm): chtrc -g svgname -v server -s newspec
    • Modifying the spec of a specific server process (-i)

      The following is an example of modifying the spec of a particular server process.

      $$4 tmaxs1 (tmadm): chtrc -g svgname -i sprno -s newspec

5.6. cleandynsvc(cleands)

When a server built with mksvr restarts after an abnormal shutdown, dynamically registered services are not deleted. If the server fails to restart, some services may remain undeleted. Later, when the server is booted with mksvr and the list of services to be dynamically added has changed, this may cause issues. In such cases, the service list may need to be cleaned using tmadmin.

The cleandynsvc command deletes dynamically registered services from a server that has zero server processes.

  • Usage

    $$1 tmax1 (tmadm): cleands [-s [service_name]]
    Option Description

    [-s [service_name]]

    Name of the service to delete.

  • Example

    The following is an example of using the command.

    $$2 tmaxc1 (tmadm): cleands
    
    $$2 tmaxc1 (tmadm): cleands -s TOUPPER

5.7. discon(ds)

This command forcibly disconnects inactive clients that are connected but remain idle. Before the administrator issues this command, it is recommended to use the ci command to check the client information. The discon command is abbreviated as ds with the following options.

  • Usage

    $$1 tmax1 (tmadm): ds [-h clhno] [-f] {-a | -n | -i idle_time | -c cli_id | -A| -d clid}
    Option Description

    [-h clhno]

    Disconnects clients connected to the CLH.

    [-f]

    Immediately disconnects clients.

    {-a}

    Disconnects all clients connected to the CLH. If the [-h] option is not used, the client connected to CLH 0 is disconnected by default.

    {-n}

    Disconnects clients with inaccurate information. Buffer allocated by tpalloc() is not used.

    {-i idle_time}

    Disconnects clients from sessions that exceed the set amount of time (in seconds).

    {-c cli_id}

    Disconnects the client with the specified ID number. The ID number must be specified.

    {-A}

    Disconnects clients connected to all CLHs.

    { -d clid }

    Disconnects the client with the specified clid.

5.8. logstart(logs) / logend(loge)

The administrator can use these two commands to create a log which will allow them to access various information in real time to take immediate and appropriate actions for each situation. The tmadmin tool logs administrative data for statistics analysis. The log file will be created in the current directory. By viewing the log data, the administrator will be able to analyze the system performance to determine the peak times, unnecessary server processes, queue status, etc.

Logging will begin when the logstart command is executed, and terminate when the logend command is executed.

  • Usage

    • Start logging (logstart)

      $$1 tmax1 (tmadm): logstart filename
      Option Description

      filename

      Specify a log file name.

    • End logging (logend)

      $$1 tmax1 (tmadm): logend

5.9. notify_reconnect_clh(nrc)

The notify_reconnect_clh command notifies a running server process to reconnect to a specific CLH process. The server process attempts to reconnect to the CLH if it has been disconnected from the CLH.

  • Usage

    $$1 tmax1 (tmadm): nrc [clh_index] [spri_index ]
    Option Description

    [clh_index]

    CLH number starting from 0.

    [spri_index]

    Spri of the server process to which the notification is sent.

  • Example

    The following is an example of using the command.

    $$2 tmaxc1 (tmadm): nrc 0 42
    >> clh reconnect ok
    
    $$2 tmaxc1 (tmadm): nrc 0 -1
    >> error clh reconnect

5.10. qpurge(qp)

This command deletes the service requests that are waiting in the queue. This is usually used to remove abnormal number of accumulated requests. This command is most useful for banks, government offices and other such institutions that handle hundreds of thousands of tasks per day.

Deleted requests can be processed later when clients reissue the request. Since Tmax manages a queue for each server process, the administrator can empty a queue for a specific server process to enhance the system efficiency.

The queue purge command is abbreviated as qp. When a service request is deleted from the queue, a TPEQPURGE message (tperrno = 27) will be sent to the client that issued the request. Thus, the client will be able to reissue the request at a later time. When this command is used, information about the deleted requests and client IDs will be recorded in the slog.

  • Usage

    $$1 tmax1 (tmadm): qpurge {-v svr_name [-k number] | -s svc_name}
    Option Description

    -v svr_name

    Deletes requests accumulated in the queue of the specified server.

    [-k number]

    Purges some of the requests accumulated in the server Queue. Must be used with the –v option.

    If N is a number greater than 0, keep the first N number of service requests and purge any subsequent incoming requests.

    • -1 : Keeps as many as MAXQCOUNT requests in the queue, and purge any subsequent incoming requests.

    • 0 : Purges all service requests currently in the queue.

    -s svc_name

    Deletes requests accumulated in the queue for the specified service.

5.11. rebootsvr(rbs)

This command replaces the specified currently running server processes with new ones.

The directory TMAX_BKAPPDIR must be defined in .profile and the executable file of the new program must be placed under this directory. For example, move the file to $TMAXDIR/bk_appbin, and execute the following command.

rbs: Replacing a server file

The following is an example of using the command without any options.

  • Usage

    $$1 tmax1 (tmadm): rbs [-o] new_file old_file
    Option Description

    [-o]

    Shuts down all server processes matching old_file and reboots those matching new_flie.

    new_file

    Specifies a new file name.

    old_file

    Specifies an existing file name.

  • The following describes the process of replacing a server file.

    1. Add an environment variable in .profile as follows:

      export TMAX_BKAPPDIR=/data2/starbj81/tmax64/bk_appbin
    2. Create a directory 'bk_appbin' in the path specified to the environment variable.

      $mkdir bk_appbin
    3. Copy the executable files in the appbin directory to bk_appbin.

      $cp appbin/svr2 bk_appbin/
    4. Run tmadmin -m, and then rbs.

      • When the server is MIN=1 && MAX=1 or not running

        The server is suspended and resumed while being replaced.

        The following is an example of booting a server process 'svr2', which is currently set to MIN=1, MAX=1.

        $$1 tmax1 (tmadm): rbs svr2 svr2
        >> suspend ok
        >> down ok
        >> cp ok
        >> boot ok
        >> resume ok
        >> reboot svr /data2/starbj81/tmax64/appbin/svr2 finished
      • When there are two or more server processes with the same name

        If all these server processes are shut down at once to start a new process, some tasks may be interrupted. Therefore, in this case, the processes must be shut down one by one.

        The detailed procedure is as follows:

        1. Create a temporary file (_rbs00_svr1) for the svr1 file in the bk_appbin directory, and copy it to the appbin directory.
        2. Start a server process named _rbs00_svr1.
        3. Shut down the existing svr1 process.
        4. Start another _rbs00_svr1 process according to the minsvr setting value.
        5. Delete all temporary files from the appbin directory, except those currently running.
        6. Copy the svr1 file from bk_appbin to appbin.

        The following is an example of booting a server process 'svr2', which is set to MIN=3.

        $$1 node1 (tmadm): rbs svr2 svr2
        TMBOOT for node(node1) is starting:
                TMBOOT: SVR(svrname: svr2, execname: _rbs00_svr2) is starting: Fri Jul 11 10:42:53 2025
        TMBOOT for node(node1) is starting:
                TMBOOT: SVR(svrname: svr2, execname: _rbs00_svr2) is starting: Fri Jul 11 10:42:53 2025
        TMBOOT for node(node1) is starting:
                TMBOOT: SVR(svrname: svr2, execname: _rbs00_svr2) is starting: Fri Jul 11 10:42:53 2025
        
        >> 3 servers booted using tmp execfile _rbs00_svr2
        >> reboot svr /home/tp1/tmax/appbin/svr2 finished
    5. Run ps to check whether all processes are correctly running.

      $ps –ef | grep svr2
      tp1      1746749 1746733  0 10:42 pts/11   00:00:00 _rbs00_svr2
               -b 1746748 -S svr2 -s svr2 -d -1 -v 1746740
      tp1      1746751 1746733  0 10:42 pts/11   00:00:00 _rbs00_svr2
               -b 1746750 -S svr2 -s svr2 -d -1 -v 1746740
      tp1      1746753 1746733  0 10:42 pts/11   00:00:00 _rbs00_svr2
               -b 1746752 -S svr2 -s svr2 -d -1 -v 1746740

To apply the rbs command to servers that were additionally created or updated using mksvr, all target server processes must first be shut down. Therefore, terminate all existing server processes using the rbs -o option before starting new ones.

The execution order of the rbs -o option is as follows:

  1. The server is suspended. (suspend)

  2. All existing server processes are shut down. (down)

  3. A server process is copied from ${TMAX_BKAPPDIR}. (cp)

  4. A new server process is started. (boot)

  5. The server is resumed. (resume)

Example
$$1 tmax1 (tmadm): rbs -o svr2 svr2
>> suspend ok
>> down ok
>> cp ok
>> boot ok
>> resume ok
>> reboot svr /data2/starbj81/tmax64/appbin/svr2 finished
rbs -S/s: Preventing server conflict during server process replacement

Preventing server conflict means preventing multiple processes of different versions from executing the same service concurrently. When rbs is run with the [-S] and [-s svc_name] options, the server processes can be replaced without conflict during execution.

In particular, using the [-s svc_name] option ensures uninterrupted operation for services that remain unchanged during replacement.

  • Usage

    The overall procedure of executing [-S] and [-s svc_name] is the same as running the command without options, except that suspend and resume operations are added before shutting and and rebooting the server. These additional steps prevent existing server processes from executing services during replacement.

    $$1 tmax1 (tmadm): rbs [-S | -s svc_name,...] newfile svr_name [svg_name]
    Option Description

    [-S]

    Suspends/resumes all services on the server.

    [-s svc_name,...]

    Suspends/resumes a specified service on the server.

    newfile

    Specifies a new file name.

    svr_name

    Specifies a server to suspend.

    [svg_name]

    Specifies a server group where the server to suspend is included.

  • Example

    • Changing a specific service (-s)

      The following example shows how to change a specific service on the target server. In this case, the service named TOUPPER on the svr2 server is selectively suspended, while all other services continue to run.

      $$1 tmax1 (tmadm): rbs -s TOUPPER svr2_new svr2

      The following example shows how to change two specific services on the target server. In this case, the services named TOUPPER and TOLOWER are selectively suspended, while all other services continue to run. When specifying multiple service names, separate them with a comma (,) and do not include spaces.

      $$1 tmax1 (tmadm): rbs -s TOUPPER,TOLOWER svr2_new svr2
    • Chaning all services on a server (-S)

      The following example shows how to change all services on the target server. In this case, all services on the svr2 server are suspended.

      $$1 tmax1 (tmadm): rbs -S svr2_new svr2

      The following example shows how to change all services on the target server within the specified server group. In this case, all services on the svr2 server in the server group svg1 are suspended.

      $$1 tmax1 (tmadm): rbs -S svr2_new svr2 svg1
  • Executing rbs on servers bound with COUSIN in a node

    If two or more server groups are bound in a COUSIN setting within a node, all servers in that COUSIN server groups can be replaced through rbs.

  1. If no option (-s or -S) is specified, conflict prevention during rbs execution is not guaranteed.

  2. In a COUSIN configuration of a node, the server group-specific execution is not provided.

5.12. mrebootsvr(mrbs): Preventing multi-node server conflict

Preventing multi-node server conflict means preventing multiple processes of different versions from executing the same service concurrently in a multi-node environment. When running mrbs with the [-S] and [-s svc_name] options in a multi-node environment with load balancing, the server processes can be replaced without conflict during its execution.

In particular, using the [-s svc_name] option ensures uninterrupted operation for services that remain unchanged during replacement.

  • Usage

    $$1 tmax1 (tmadm): mrebootsvr(mrbs) [-S | -s svc_name,...] newfile svr_name
    Option Description

    [-S]

    Suspends all services on the server.

    [-s svc_name]

    Suspends a specified service on the server.

    newfile

    Specifies a new file name.

    svr_name

    Specifies a server to suspend.

  • Example

    • Changing a specific service (-s)

      The following example shows how to change a specific service on the target server. In this case, the service named TOUPPER on the svr2 server is selectively suspended, while all other services continue to run.

      $$1 tmax1 (tmadm): mrbs -s TOUPPER svr2_new svr2

      The following example shows how to change two specific services on the target server. In this case, the services named TOUPPER and TOLOWER are selectively suspended, while all other services continue to run. When specifying multiple service names, separate them with a comma (,) and do not include spaces.

      $$1 tmax1 (tmadm): mrbs -s TOUPPER,TOLOWER svr2_new svr2
    • Changing all services on a server (-S)

      The following example shows how to change all services on the target server. In this case, all services on the svr2 server are suspended.

      $$1 tmax1 (tmadm): mrbs -S svr2_new svr2

5.13. reconnect_clh(rc)

This command attempts to reconnect CLH to other nodes. Depending on the connection status, two modes are supported: reconnecting only disconnected nodes or reconnecting all nodes.

  • Usage

    $$1 tmax1 (tmadm): rc nodename [-a]
    Option Description

    nodename

    Name of the node to reconnect.

    [-a]

    Reestablishes all connections.

  • Example

    The following is an example of using the command.

    $$2 tmaxc1 (tmadm): rc node2
    
    $$2 tmaxc1 (tmadm): rc node3 -a

5.14. reopen_db

This command reestablishes database connection for all TMS and server processes in an XA server group.

  • Usage

    $$1 tmax1 (tmadm): reopen_db svgname
    Option Description

    svgname

    Name of the server group to reconnect to the database.

  • Example

    $$1 tmax1 (tmadm): reopen_db svg_ora
    DB reopen request sent (svrcnt : 1, tmscnt : 2)

Using this command requires the tmadmin -m option to execute in Master mode.

5.15. restart(rst)

This command terminates the currently running server processes and restarts as many as MIN number of server processes.

  • Usage

    $$1 tmax1 (tmadm): restart [-v [server_name]] [-g [server_group_name]]
    Option Description

    [-v [server_name]]

    Restarts the specified server. Without using the -g option, it applies to all server groups.

    [-g [server_group_name]]

    Restarts servers in the specified server group.

  • Example

    The following is an example of using the command.

    $$2 tmaxc1 (tmadm): restart -v svr01021
    >> suspend ok
    >> down ok
    >> boot ok
    >> resume ok
    >> reboot svr svr01021 finished
    
    $$2 tmaxc1 (tmadm): restart -g svg1
    >> suspend ok
    >> down ok
    >> boot ok
    >> resume ok
    >> reboot svr svr01021 finished
    >> suspend ok
    >> down ok
    >> boot ok
    >> resume ok
    >> reboot svr svr01022 finished

5.16. restat

This command resets the statistics of the specified server process or all server processes. It can only be used when tmadmin is running in Master mode.

  • Usage

    $$1 tmax1 (tmadm): restat [[-v [server_process_name]] | [-a]] [-r]
    Option Description

    [-v [server_process_name]]

    Resets statistics of the specified server process.

    [-a]

    Resets statistics of all server processes.

    [-r]

    Resets the number of restarts of the specified server process. Used either with the -v or -a option.

5.17. resume(rs)

This command causes the target server processes to resume scheduling. The target server processes will resume processing of the enqueued service requests, and accept any incoming service requests. The resume command is abbreviated as rs.

  • Usage

    $$1 tmax1 (tmadm): resume {-s svc_name [-p pid] | -v svr_name [-k num]}
    Option Description

    -s svc_name

    Option to resume service scheduling.

    [-p pid]

    Option to resumes services for the specified server process. Suspending/resuming the service for a specific server process may take a long time to wait for the processing to complete if the service is running. In this case, the service will be resumed if the tmadmin is forcibly terminated.

    Any service requests after suspend will be accumulated in the queue. This option is used with the [-s] option.

     resume(rs) -s svc_name [-p pid]

    -v svr_name

    Option to resume scheduling of the server process.

    [-k num]

    Option to resume the specified number of processes on the target server.

    Used with the [-v] option. As many suspended server processes as the specified number are resumed. If there are no suspended server processes, the command will be cancelled. The specified value must not exceed the MAX value of the server.

    To check for suspended server processes, execute the [stat -p -X] command.

    resume(rs) -v svr_name [-k 5]

    If at least one server process is resumed by the -k option, the server status will be changed to RDY. If there are no active processes, the status will be NRDY.

Note the following when using resume.

  • How to resume a suspended server

    It varies depending on the Tmax version.

    • Tmax 4 SP3 Fix#10, Tmax 4 SP8 Fix#1, Tmax 5 SP1 Fix#1 or later

      When a server process is suspended in tmadmin, it remains suspended even if tmboot is executed after tmdown. To run a service on the server process, it must be resumed after being restarted with tmboot.

    • Other versions

      When a server process is suspended in tmadmin, the process can be automatically resumed through tmboot after tmdown. A suspended server process cannot be directly restarted with tmboot without tmdown.

      $ tmboot -s svr02011
         TMBOOT for node(tmaxh4) is starting:
         Welcome to Tmax demo system: it will expire 2006/1/25
         Today: 2005/12/19
         (E) BOOT3020 svr02011 is suspended, resume(or tmdown) it first. [BOOT0038]
  • Suspending/resuming servers bound with COUSIN in a node

    If two or more server groups are bound in a COUSIN setting on a node, all servers within that COUSIN server groups can be suspended/resumed.

ASQCOUNT must be configured in the SVRGROUP element. To configure server processes in BLK, use the [-v] option.

5.18. set

This command dynamically modifies the settings in the configuration file.

Execute the cfg command to check which items in the configuration file can be modified. The items with an abbreviation inside brackets can be modified by using the set command.

  • Usage

    $$1 tmax1 (tmadm): set [-d [domain]|-g [server_group]|-v [server]|-s [service]]
                           item value
    Option Description

    [-d [domain]]

    Modify DOMAIN section. To modify a specific domain, specify the domain name.

    [-g [server_group]]

    Modify GATEWAY section. To modify a specific server group, specify the server group name.

    [-v [server]]

    Modify SERVER section. To modify a specific server, specify the server name.

    Item

    Item to modify.

    [-s [service]]

    Modify SERVICE element. To modify a specific service, specify the service name.

    item

    Item to change.

    value

    Value to change.

  • Example

    The following is an example of using the command.

    $$1 tmax1 (tmadm): set -d res1 bt 100
    $$1 tmax1 (tmadm): set -g svg1 ld 5
    $$1 tmax1 (tmadm): set -v kfdl1 mq 1000
    $$1 tmax1 (tmadm): set -s SYNC pr 100
    $$1 tmax1 (tmadm): set -n tmaxh4 cb n
    $$1 tmax1 (tmadm): set -s svc_name pr 99

5.19. setopt

This command dynamically changes an environment configuration value among options configured for TMMOPT. Configurable items can be checked using the cfgopt command in tmadmin. The items displayed by executing cfgopt can be modified dynamically.

  • Usage

    $$1 tmax1 (tmadm): setopt [-tmm][-gw gwname]  item value
    Option Description

    [-tmm]

    Used to change a value of an option defined in the TMMOPT setting.

    [-gw gwname]

    Used to change a value of an option defined in the CLOPT setting of the GATEWAY element.

    item

    Item to change. An item displayed by executing cfgopt. ( e.g., -F )

    value

    Value to change.

  • Example

    The following is an example of using the command.

    $$1 tmax1 (tmadm): setopt -tmm -F 30
    new value (30) is set for section = -tmm, name = N/A, fld = -F
    $$2 tmax1 (tmadm): setopt -tmm -t 15
    new value (15) is set for section = -tmm, name = N/A, fld = -t
    $$3 tmax1 (tmadm): setopt -gw javagw2 -D 7
    new value (7) is set for section = -gw, name = javagw2, fld = -D
    $$4 tmax1 (tmadm): setopt -tmm -R 5
    new value (5) is set for section = -tmm, name = N/A, fld = -R
    $$5 tmax1 (tmadm): setopt -tmm -D 1
    new value (1) is set for section = -tmm, name = N/A, fld = -D
    
    $$6 node1 (tmadm): setopt -gw gw_name -D 2
    new value (2) is set for section = -gw, name = gw_name, fld = -D

5.20. suspend(sp)

This command suspends a running server in order to resolve system failures resulting from application program errors. Once this command has been executed, the target server processes will complete processing current services before being suspended. Services in the queue remain in the queue and any subsequent service requests will be accumulated in the queue. The suspend command is abbreviated as sp.

  • Usage

    $$1 tmax1 (tmadm): suspend {-s svc_name [-p pid] | -v svr_name [-k num] [-a]}
    Option Description

    -s svc_name

    Option to stop scheduling a service.

    The asqcount for a blocked service will no longer increase.

    Additionally, this information is preserved even after the server is shutdown and restarted.

    [-p pid]

    Option to suspend services for the specified server process. Used with the [-s] option.

    -v svr_name

    Option to suspend the scheduling of the server process. A requested service will wait in the queue until the process is resumed, or can be removed from the queue according to the MAXQCOUNT and CLHQTIMEOUT settings.

    [-k num]

    Option to suspend the specified number of processes on the target server.

    Used with the [-v] option. As many server processes, including the already suspended processes, as the specified number are suspended. The specified number must not exceed the MAX value of the server.

    To check for suspended server processes, execute the [stat -p -X] command.

    suspend(sp) -v svr_name [-k 5]

    If as many server processes as MAX are all suspended when using the [-k] option, the server will be blocked (BLK). This is same as executing 'sp -v svr_name' without the [-k] option.

    [-a]

    If a running server receives a suspend request, the service is not suspended until it completes processing current requests. This option is used to suspend a running server immediately without delay. It is used with the [-v] option.

5.21. txcommit / txrollback

If a transaction processing does not complete for a certain amount of time due to a network or TMS failure, the administrator can reissue the commit / rollback and complete the transaction. Txcommit can only be used when the Decision is COMMIT in the PHASE2 stage. Txrollback can only be used when the Decision is ROLLBACK in the PHASE1 or PHASE stage.

  • Usage

    $$1 tmax1 (tmadm): txrollback(txr) | txcommit(txc) [-w] [-t] [-y]
                       <upper-global-xid><lower-global-xid>
    Option Description

    [-w]

    Used for a domain sub-transaction.

    [-t]

    Used for a transaction initiated from a remote system.

    [-y]

    Used to skip checks for txcommit / txrollback.

    upper-global-xid

    First 4 bytes of gtid of xid to process.

    lower-global-xid

    Last 4 bytes of gtid of xid to process.

Txcommit and txrollback are used to reprocess a transaction that is queried via txquery. After reprocessing, it is important to check the result through txquery.

5.22. wsgwreload(wsrld)

This command modifies the configuration of a service or web service gateway at runtime. Once the command is executed, the web service gateway does not respond to new service requests. It only completes processing services that are in progress, and then applies the changed settings and resumes service processing.

  • Usage

    $$1 tmax1 (tmadm): wsgwreload [-i svrid[svrid]]
    Option Description

    [-i svrid [ svrid]]

    List of svrid to apply the changes.

6. Others

6.1. history(hist)

This command displays a list of the previously executed commands.

  • Usage

    $$1 tmax1 (tmadm): history
  • Example

    The following is an example of using the command.

    $$15 tmax1 (tmadm): history
    5 :  si
    4 :  txq
    3 :  ci
    2 :  st  -p
    1 :  st  -s
    0 :  ci

    Enter "!" at the command line to repeat the previous command. Any of the previously entered commands can also be repeated by entering “!” and the number of the command in the history list.

    $$1 tmax1 (tmadm): !5
    si
    ----------------------------------------------------------------
    clh    svri     status    count    qcount     qpcount    emcount
    ----------------------------------------------------------------
    0        0        RDY         2         0            0           0
    0        1        RDY         0         0            0           0
    0        2        RDY         0         0            0           0
    0        3        RDY        45         0            0           0