# hp Reliable Transaction Router
System Manager's Manual

Previous | Contents | Index

# SET LINK

> The SET LINK command sets various link related options.

## Format

> SET LINK link-name

Command Qualifiers | Defaults
--- | ---
/AUTOISOLATE | /NOAUTOISOLATE
/ENABLE | /DISABLE
/CHECKSUM | /NOCHECKSUM
/CLUSTER | /NOCLUSTER
/INACTIVITY_TIMEOUT[=secs] | /INACTIVITY_TIMEOUT=node-default
/NODE[=node-list] | /NODE=default-node
/OUTPUT[=filespec] | /OUTPUT=stdout
/SUSPECT | /NOSUSPECT

## Description

> The SET LINK command sets options for one or more links. The options are link enabled or disabled, link autoisolate, link checksum and link inactivity timeout.

> The parameter `link-name` is the node from which connect attempts are to be honored (or not). Note that disabling the link prevents incoming connections over an established link. It only takes affect when new connect attempts are made. It does not affect the ability to connect to a node whose link has been disabled. The `link-name` can be wildcarded.

> The current state of the link can be displayed with the SHOW LINK/STATUS command. When looking at connection problems, both ends of the link counters should be used with the SHOW LINK/COUNTER command.

## Qualifiers

> ### /AUTOISOLATE

> ### /NOAUTOISOLATE (D)

> Any RTR node may disconnect a remote node if it finds the remote node is unresponsive or congested. The normal behavior following such action is automatic network link reconnection and recovery.

> Node autoisolation allows a node (the isolator) to disconnect a congested or unresponsive remote node (the isolatee) in such a way that when the congested node attempts to reconnect, it receives an instruction to close all its network links and cease connection attempts. A node in this state is termed isolated.

> Some applications require that a node suspected of causing congestion (that is, not processing network data quickly enough) is isolated from the rest of the network, so as to cause minimum disruption. The node autoisolation feature meets this requirement.

> Remote node autoisolation can be enabled (at the isolator) where it applies to all links using SET NODE/AUTOISOLATE, or for specific links only with the SET LINK/AUTOISOLATE command. An isolated node (isolatee) remains isolated until you perform both of the following actions:

> - Enable the link to the isolated node on all nodes that have isolated it, that is `set link [isolated-node]/enable`
> - Exit the isolated state on the isolated node, that is `set node/noisolate`

> Autoisolation is disabled (at the isolator) using the /NOAUTOISOLATE qualifier.

> ### /CHECKSUM

> ### /NOCHECKSUM (D)

> `/CHECKSUM` specifies that checksum calculations for data packets over network links are performed. This qualifier is by default set to /NOCHECKSUM.

> This command is useful for diagnosing errors over network links. To see the checksum state, use the SHOW LINK/STATE command.

> ### /ENABLE

> ### /DISABLE

> `/ENABLE` specifies that connect attempts are honored from the node specified by `link-name` .

> This command is used to enable a link in a disabled state. A link can be disabled either as a result of operator action, or automatically if it has been suspected of causing severe congestion. If a link is automatically disabled, an entry is made in the RTR error log.

> `/DISABLE` specifies that connect attempts are no longer honored from the node `link-name` . Note that disabling the link does not have any immediate effect on an established link. It only takes effect when new connection attempts are made.

> ### /CLUSTER

> ### /NOCLUSTER (D)

> Specifies that the command is executed on all the nodes in the cluster.

> If neither /NODE nor /CLUSTER is specified, the command is executed on the nodes specified by the latest SET ENVIRONMENT command. If no SET ENVIRONMENT command has been entered, the command is executed only on the node where the command was issued.

> Note In environments that do not support remote command capability, the /CLUSTER qualifier causes the relevant command to be executed on the local node only. See Section 1.4 for more information.

> ### /INACTIVITY_TIMEOUT[=secs]

> ### /INACTIVITY_TIMEOUT=node-default

> /INACTIVITY_TIMEOUT[=secs] specifies the maximum elapsed time in seconds before RTR discards a link that is neither receiving traffic nor responding to explicit link state queries. Link failover occurs between the adjustable environmental timer parameters `RTR_TIMEOUT_CONNECT` , default of 60 seconds, and `RTR_TIMEOUT_CONNECT_RELAX` , default of 90 seconds, on a network link or remote node. When there is a failure, RTR detects it within the timer parameters stipulated and disconnects and retries the link according to the router preferences for a frontend. If a router fails to respond to the reconnect tries, there will be a time lapse of `RTR_TIMEOUT_CONNECT` plus `RTR_TIMEOUT_CONNECT_RELAX` for the link failover to occur.

> The new value for `secs` becomes effective only after a time of about one third of the current value of the link inactivity timeout.

> The minimum useful value for `secs` is three. If a value is not specified, links inherit the current value of the node inactivity timeout. (See SET NODE/INACTIVITY_TIMEOUT.)

> You can check the current value of the link inactivity timeout with the command SHOW LINK `linkname` /COUNTER= `ndb_lw_inact` .

> You should not specify a value of less than five times the time required for a round trip over the link. If you don't know this value, RTR can measure it for you. Make sure that there is no transactional traffic over the link, and monitor the link (with the MONITOR LINK command) between the two nodes whose round trip time you want to measure. After a few minutes, look at the link counters `ndb_lw_trips` and `ndb_lw_trips_ms` using the SHOW LINK/COUNTER= `ndb_lw_trips*` command. Dividing the latter by the former yields the average round trip time in milliseconds.

> Note The inactivity timeout is used for all RTR links, but the effect of a timeout and failover depends on what connections the link is supporting. In brief, a link between a router and a backend timing out causes a router or backend failover and quorum re-negotiations. A frontend will search for another router.

> ### /NODE[=node-list]

> ### /NODE=default-node (D)

> Specifies that the command is executed on all nodes specified in `node-list` . If `node-list` is omitted, the command is executed only on the node where the command was issued.

> ### /OUTPUT[=filespec]

> ### /OUTPUT=stdout (D)

> Specifies that the resulting information is written to the file `filespec` . If /OUTPUT or `filespec` is omitted, the standard or default output is used.

> ### /SUSPECT

> ### /NOSUSPECT

> Obsolete. Available for compatibility reasons only; use /AUTOISOLATE instead.

### Related commands

- SET NODE/AUTOISOLATE
- SHOW LINK/STATUS

##

### Examples

     RTR> SET LINK JOEY/ENABLE

> This command reallows connections from node JOEY.

     RTR> SET LINK JOEY/AUTOISOLATE

> This command sets the autoisolate attribute on the link to node JOEY.

# SET LOG

> The SET LOG command specifies where RTR writes its log messages.

## Format

> SET LOG/FILE=filespec.log

Command Qualifiers | Defaults
--- | ---
/CLUSTER | /NOCLUSTER
/FILE=filespec-list | /NOFILE
/NODE[=node-list] | /NODE=default-node
/OPERATOR | /NOOPERATOR
/OUTPUT[=filespec] | /OUTPUT=stdout

## Description

> The LOG command lets you enter text that is written to the current log file. Use the SET LOG command to specify the name of the file where logged messages are written, or log messages only to the operator console by using the /OPERATOR qualifier on the SET LOG command. You use the SET LOG command to specify a new file and close the old one. Purge log files periodically to avoid problems with full disks.

> Messages written to the log file are text including a LOGFILENT code, a timestamp, an RTRLOGENT code and the message. See the example at the end of this command description.

> There is no restriction on how many files you name, but each is mutually exclusive. Once you specify a new file, the old one is closed. You cannot log messages to a file and also to the operator console.

> Log files must be periodically purged to avoid difficulties with full disks. Do this by using SET LOG to specify a new file and deleting the old one.

> If neither the /OPERATOR nor the /FILE qualifier is specified, logging is suppressed.

> Log Files Must Always Be Accessible Log files must always be accessible even if a node fails.

> The following commands are logged; all others are not logged.

> > ADD command
> > CREATE commands
> > DELETE commands, but not DELETE KEY
> > EXTEND command
> > FLUSH command
> > MODIFY command
> > SET commands, but not SET ENVIRONMENT
> > STOP commands
> > TRIM command
> > INITIALIZE command
> > START commands
> > REGISTER RM command
> > UNREGISTER RM command

## Qualifiers

> ### /CLUSTER

> ### /NOCLUSTER (D)

> Specifies that the command is executed on all the nodes in the cluster.

> If neither /NODE nor /CLUSTER is specified, the command is executed on the nodes specified by the latest SET ENVIRONMENT command. If no SET ENVIRONMENT command has been entered, the command is executed only on the node where the command was issued.

> Note In environments that do not support remote command capability, the /CLUSTER qualifier causes the relevant command to be executed on the local node only. See Section 1.4 for more information.

> ### /FILE=filespec-list

> ### /NOFILE (D)

> Specifies the names of up to four files where the log messages are written.

> ### /NODE[=node-list]

> ### /NODE=default-node (D)

> Specifies that the command is executed on all nodes specified in `node-list` . If `node-list` is omitted, the command is executed only on the node where the command was issued.

> ### /OPERATOR

> ### /NOOPERATOR (D)

> Specifies that log messages are written only to the operator console.

> ### /OUTPUT[=filespec]

> ### /OUTPUT=stdout (D)

> Specifies that the resulting information is written to the file `filespec` . If /OUTPUT or `filespec` is omitted, the standard or default output is used.

### Related commands

- SHOW LOG

## Examples

     RTR> SET LOG/FILE=RTRLOG.LOG/OPERATOR

> This command tells RTR to write log messages to the file RTRLOG.LOG and to the operator log.

     RTR> SET LOG/NOFILE/NOOPERATOR

> This command suppresses all RTR log messages.

     RTR> SET LOG/FILE="/usr/users/rtruser/daily_logfile"

> This command tells RTR to write log messages to the file `/usr/users/rtruser/daily_logfile.log` .

     RTR> SET LOG/FILE=("logfile1.log","logfile2.log")

> This command tells RTR to write log messages to `logfile1.log` and `logfile2.log` .

     RTR> SET LOG/OPERATOR

> This command tells RTR to write log messages to the system log.

> The following is an example of the contents of an RTR log file.

>      ( c ) %RTR-I-LOGFILENT, Mon Sep 17 15:53:32 2001 A1 270
>     %RTR-I-EXERTRCOM, command: start RTR
>      ( c ) %RTR-I-LOGFILENT, Mon Sep 17 15:56:30 2001 A1 270
>     %RTR-I-EXERTRCOM, command: start RTR
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:24 2001 A1 259
>     %RTR-I-EXERTRCOM, command: creat fac TP/all_roles=A1
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-I-COMJOUSEA, commencing journal search of node A1 for
>      transactions on facility TP needing recovery
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-I-JOUSEACOM, journal search of node A1 facility TP completed.
>      0 recoverable transactions found
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-I-FACSTARTTR, facility TP started on node A1 as Router
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-I-FACSTARTBE, facility TP started on node A1 as Backend
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-W-RSPFAC, response from Node A1 about Facility TP
>     %NCF-I-I_STATUS_TEXT, Router has no quorum in facility %s
>     %NCF-I-I_STATUS_IS, -9371494 (10)
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-E-NOCURRTR, current router search failed for facility TP
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-I-BEINQUO, backend is quorate in facility TP
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-I-TRINQUO, router is quorate in facility TP
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-I-FACSTARTFE, facility TP started on node A1 as Frontend
>      (  a) %RTR-I-LOGFILENT, Mon Sep 17 15:59:25 2001 A1 259
>     %RTR-S-CURRTR, node A1 now a router for facility TP
>      ( c ) %RTR-I-LOGFILENT, Mon Sep 17 16:09:46 2001 A1 270
>     %RTR-I-EXERTRCOM, command: set log/file=TP0901.log

# SET MODE

> The SET MODE command specifies whether RTR runs in group or nogroup (system) mode.

## Format

> SET MODE

Command Qualifiers | Defaults
--- | ---
/CLUSTER | /NOCLUSTER
/GROUP[=user-id] | /NOGROUP
/NODE[=node-list] | /NODE=default-node
/OUTPUT[=filespec] | /OUTPUT=stdout

## Description

> The SET MODE command specifies whether RTR runs in group or nogroup mode. (Nogroup mode may also be called system mode).

> Production systems use RTR in the default (nogroup) mode, whereby all users running in this mode use one common invocation of RTR.

> Each developer typically has his or her own invocation of RTR to avoid having their use of RTR affect other developers or the production system. This mode is called group mode. Group mode allows development or testing of applications by several groups of people on the same physical system without interference.

> Note RTR does not execute any remote commands for a different group, and cannot set remote group different from the local group. To set a different mode for a remote user on a remote node, use SET MODE/GROUP first on the local node, then reissue SET MODE/GROUP as a remote command.

## Qualifiers

> ### /CLUSTER

> ### /NOCLUSTER (D)

> Specifies that the command is executed on all the nodes in the cluster.

> If neither /NODE nor /CLUSTER is specified, the command is executed on the nodes specified by the latest SET ENVIRONMENT command. If no SET ENVIRONMENT command has been entered, the command is executed only on the node where the command was issued.

> Note In environments that do not support remote command capability, the /CLUSTER qualifier causes the relevant command to be executed on the local node only. See Section 1.4 for more information.

> ### /GROUP[=user-id]

> ### /NOGROUP (D)

> /GROUP specifies that RTR be set to GROUP mode for the user who issues the command. The group name defaults to the first eight characters of your current user-id. A group name can contain only alphanumeric characters, and "-", hyphen, "$", dollar sign, or "_", underscore characters. (If the RTR group name is changed to a name containing an invalid character such as "\", backslash, RTR will not start in a later session.) You may also change to another group by entering a user or group ID. Note that group names are used for naming RTR journal files; do not use a group name containing the string SYSTEM or conflicts may occur.

>     RTR> set mode/group=develpr

> `/NOGROUP` sets RTR into NOGROUP mode.

> Note This qualifier is not available in the RTR web browser interface.

> ### /NODE[=node-list]

> ### /NODE=default-node (D)

> Specifies that the command is executed on all nodes specified in `node-list` . If `node-list` is omitted, the command is executed only on the node where the command was issued.

> ### /OUTPUT[=filespec]

> ### /OUTPUT=stdout (D)

> Specifies that the resulting information is written to the file `filespec` . If /OUTPUT or `filespec` is omitted, the standard or default output is used.

### Related commands

- SHOW MODE

##

### Examples

     RTR> SET MODE/GROUP

> This command tells RTR to enter `GROUP` mode.

     RTR> SET MODE/NOGROUP

> This command tells RTR to enter `NOGROUP` mode.

# SET NODE

> The SET NODE command sets various node-related options.

## Format

> SET node

Command Qualifiers | Defaults
--- | ---
/AUTOISOLATE | /NOAUTOISOLATE
/CLUSTER | /NOCLUSTER
/INACTIVITY_TIMEOUT[=secs] | /INACTIVITY_TIMEOUT=60
/ISOLATE | /NOISOLATE
/NODE[=node-list] | /NODE=default-node-list
/OUTPUT[=file-spec] | /OUTPUT=stdout
/RECOVERY=recovery-protocol | /RECOVERY=V40

## Description

> The SET NODE command sets the automatic isolation characteristics, the link timeout default of a node, the `rtr_request_info` cache lifetime, and the recovery protocol.

## Qualifiers

> ### /AUTOISOLATE

> ### /NOAUTOISOLATE (D)

> Any RTR node may disconnect a remote node if it finds the remote node is unresponsive or congested. The normal behavior following such action is automatic network link reconnection and recovery.

> Node autoisolation allows a node (the isolator) to disconnect a congested or unresponsive remote node (the isolatee) in such a way that when the congested node attempts to reconnect, it receives an instruction to close all its network links and cease connection attempts. A node in this state is termed isolated.

> Some applications require that a node suspected of causing congestion (that is, not processing network data quickly enough) is isolated from the rest of the network, so as to cause minimum disruption. The node autoisolation feature meets this requirement.

> Remote node autoisolation can be enabled (at the isolator) where it applies to all links using SET NODE/AUTOISOLATE, or for specific links only with the SET LINK/AUTOISOLATE command. An isolated node (isolatee) remains isolated until you perform both of the following actions:

> - Enable the link to the isolated node on all nodes that have isolated it, that is `set link [isolated-node]/enable`
> - Exit the isolated state on the isolated node, that is `set node/noisolate`

> Autoisolation is disabled (at the isolator) using the /NOAUTOISOLATE qualifier.

> ### /CLUSTER

> ### /NOCLUSTER (D)

> Specifies that the command is executed on all the nodes in the cluster.

> If neither /NODE nor /CLUSTER is specified, the command is executed on the nodes specified by the latest SET ENVIRONMENT command. If no SET ENVIRONMENT command has been entered, the command is executed only on the node where the command was issued.

> Note In environments that do not support remote command capability, the /CLUSTER qualifier causes the relevant command to be executed on the local node only. See Section 1.4 for more information.

> ### /INACTIVITY_TIMEOUT[=secs]

> ### /INACTIVITY_TIMEOUT=60

> `/INACTIVITY_TIMEOUT[=secs]` specifies the link inactivity timeout value for all current links, and also sets the default inactivity timeout value for new links. The default value is 60 seconds.

> See SET LINK/INACTIVITY_TIMEOUT for further information.

> ### /ISOLATE

> ### /NOISOLATE (D)

> The /ISOLATE qualifier is obsolete and is available for compatibility reasons only. Use `/AUTOISOLATE` instead.

> Use /NOISOLATE to take a node out of the isolated state. (See the /AUTOISOLATE qualifier for further information).

> ### /NODE[=node-list]

> ### /NODE=default-node (D)

> Specifies that the command is executed on all nodes specified in `node-list` . If `node-list` is omitted, the command is executed only on the node where the command was issued.

> ### /OUTPUT[=filespec]

> ### /OUTPUT=stdout (D)

> Specifies that the resulting information is written to the file `filespec` . If /OUTPUT or `filespec` is omitted, the standard or default output is used.

> ### /RECOVERY=recovery-protocol

> ### /RECOVERY=V40 (D)

> The /RECOVERY qualifier is used to set the recovery protocol to that used in RTR Version 3.2 and earlier and is used during rolling upgrades to RTR Version 4.0. If an RTR environment has many facilities with different mixes of backend and router roles on a node (making it difficult to satisfy the conditions for a rolling upgrade), use this command to set the recovery protocol to V3.2. Once the upgrade is completed, you can revert to using the V4.0 recovery protocol by omitting this command the next time RTR is started. The protocol will default to V4.0.

> RTR must be started for this command to have any effect. The recovery protocol must be specified before any recovery is initiated by RTR, therefore this command must be entered before any facilities are defined.

> You can display the recovery protocol that is in effect for RTR by using the RTR node counter:

>     RTR> SHOW RTR/COUNTER=CRM_BE_RECOVERY_PROTOCOL

### Related commands

- SHOW NODE
- SET LINK

##

### Examples

     RTR> SET NODE /NOISOLATE

> This command tells RTR to set the executing node non-isolated.

Previous | Next | Contents | Index