Reliable Transaction Router
System Manager's Manual


Previous Contents Index


SET NODE

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

Description

The SET NODE command sets the automatic isolation characteristics and the link timeout default of a node.


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 which is suspected of causing congestion (that is, not processing network data sufficiently quickly) is isolated from the rest of the network, so as to cause minimum disruption. The node autoisolation feature meets this requirement.

Remote node autoisolation may 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 carry out both of the following actions:

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 then the command is executed on the nodes specified by the latest SET ENVIRONMENT command. If no SET ENVIRONMENT command has been entered then the command is executed only on the node where the command was issued.

Note: In environments that do not support clustering, use of the /CLUSTER qualifier will cause the relevant command to be executed on the local node only.

/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-list (D)

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

/OUTPUT[=file-spec]

/OUTPUT=stdout (D)

Specifies that the resulting information is written to the file file-spec. If /OUTPUT or file-spec is omitted then the standard or default output is used.

Related Commands


Examples


 RTR> SET NODE /NOISOLATE

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


SET PARTITION

Sets various partition related options.

Format

SET PARTITION partition-name

Command Qualifiers Defaults
/FACILITY=[facility_name]
/FAILOVER_POLICY=[SHADOW|STAND_BY] /
/IGNORE_RECOVERY /NOIGNORE_RECOVERY
/PRIORITY_LIST=backend-node-list /
/RECOVERY_RETRY_COUNT=n /
/RESTART_RECOVERY /
/RESUME /
/SHADOW /NOSHADOW
/SUSPEND /
/TIMEOUT=nn /

Description

The SET PARTITION command sets the characteristics of a named partition. Only backend partitions may be manipulated with this command; the command must be entered on the backend where the partition is located.

Use SET PARTITION any time after the partition has been created (either explicitly by CREATE PARTITION or implicitly by starting a server.) Note that the command only takes effect after the first server joins a partition. Any errors encountered at that time will appear as RTR log file entries. Using SET PARTITION to change the state of the system results in a log file entry.


Parameters

partition-name

The name of the partition being manipulated. This may be specified as partition_name (if the partition name is unique on the node), or as facility_name:partition_name.

Qualifiers

/FACILITY=facility_name (D)

Determines the facility that the partition command will act on. This is required.

/FAILOVER_POLICY=SHADOW

/FAILOVER_POLICY=STAND_BY (D)

Determines the action to take when the primary partition fails. The default action is to allow a standby of the primary to become the new primary. Optionally, RTR can be set to change state so that the secondary becomes primary, and a standby of the old primary (if any) becomes the new secondary.

/IGNORE_RECOVERY

/NOIGNORE_RECOVERY (D)

Forces the partition to exit any current wait state it may be in.

If a partition should enter a wait state or fail because of the unavailability of either a local or remote journal, this command can be used to override the default RTR behaviour. It instructs RTR to skip the current step in the recovery process. Since this command bypasses parts of the recovery cycle, use it with caution, and only when availability is more important than consistency in your application databases.

/PRIORITY_LIST=(backend-node-list)

Sets a relative priority that is used by RTR when selecting a backend member to make active. Enter a list of the backends in your configuration in decreasing order of priority; the relative order of the list will be taken into consideration when RTR is determining on which node to make a partition active.

It is not an error to enter different versions of the priority list at different backends, but this is not recommended. It is recommended to suspend partitions before changing the priority list.

/RECOVERY_RETRY_COUNT=n

The recovery retry count indicates the maximum number of times that a transaction should be presented for recovery before being written to the journal as an exception. Once a transaction has been recorded as an exception, it is no longer considered eligible for recovery and will require manual processing by a qualified individual.

The recovery retry count is partition specific, and applies to both local and shadow recovery operations. The default is no limit on the number of retries, which permits a killer message to bring down all available servers servicing a given partition.

The recovery retry count should be set prior to starting (or restarting) the application servers so that the limit is established prior to the start of recovery operations.

/RESTART_RECOVERY

Restarts the recovery cycle. The recovery cycle can be manually restarted with /RESTART. This is useful if the operator previously aborted recovery through use of /IGNORE_RECOVERY. Since this command may result in recovery of transactions from previously inaccessible journals, it should not be used if your applications are sensitive to the order in which transactions are processed by the servers.

/RESUME

Resume normal operations (that is, cancel a /SUSPEND command). If the partition is already in the desired state, the command has no effect.

/SHADOW

/NOSHADOW

Turns shadowing on or off for the specified partition.

Shadowing for a partition can be turned off only in the absence of an active secondary site, that is, the active member must be running in remember mode. The command will fail if it is entered on either an active primary or secondary. If entered on a standby of either the primary or secondary, the command is accepted but fails in the RTR router; this is recorded with a log file entry at the router. Once shadowing is disabled, the secondary site servers will be unable to startup in shadow mode until shadowing is enabled again.

Shadowing for the partition can be turned on by entering the command at the current active member or any of its standbys.

If shadowing is already in the desired mode the command has no effect.

/SUSPEND

Stops presenting new transactions on the specified partition until a /RESUME is issued.

Use /SUSPEND to temporarily halt the presentation of new transactions to servers on the backend where the command is entered. The command completes when the processing of all currently active transactions is complete.

The optional /TIMEOUT qualifier may be used to limit the time that the command waits for completion. If the command times out, presentation of new transactions is suspended, but there still exist transactions for which servers have yet to complete processing. The operator must decide to either reenter the command and wait a further period of time, or resume the partition. Note that use of this command does not affect any transaction timeout value specified by RTR clients, so such transactions may encounter a timeout condition if the partition remains suspended.

/TIMEOUT

See description for /SUSPEND.

Related Commands


SET TRANSACTION

Sets various transaction related options.

Format

SET TRANSACTION transaction-id

Command Qualifiers Defaults
/BEFORE[=date] today
/STATE=current_state
/FACILITY=facility_name /RTR$DEFAULT_FACILITY (D)
/NEW_STATE=new_state
/NODE[=node_list /default_node_list
/OUTPUT[=file-spec] /OUTPUT=stdout
/PARTITION=partition_name
/SINCE[=date] today
/USER=username all users

Description

Note

The SET TRANSACTION command could damage your journal and database integrity if used incorrectly. Ensure that you fully understand the reason and impact for changing a transaction state before altering your RTR system.

The SET TRANSACTION command allows you to modify the state of a transaction or set of transactions stored in the RTR journal.

This command is complementary to the DUMP JOURNAL and SHOW TRANSACTION commands in that it gives capability of reading and modifying the status of a transaction status in the RTR journal. For example, if a shadow recovery is known to be unnecessary, you may want to clean up the RTR journal to prevent the committed transactions in the journal from being replayed. Using the SET TRANSACTION command, the RTR administrator is able to delete that set of transactions from the journal.

In addition, the SET TRANSACTION command also helps users to better control the RTR runtime environment in difficult operational situations. For example, a transaction while still in SENDING state on the backend may appear to be hung and cannot proceed. Using the SET TRANSACTION command, an RTR administrator can abort this transaction "on-the-fly" and free runtime resources.

While the SET TRANSACTION command enables RTR users to have full control of RTR transactions, it introduces the risk that a transaction could be lost or corrupted. The command must be used with discretion and should only be used by expeerienced RTR system administrators.

After using the SET TRANSACTION command complete, you may use the DUMP JOURNAL command to verify the results.

Usage Notes

The command can only be executed on a backend node in which the journal is located and the RTR log file must be turned on to record the transaction changes. RTR needs to be started before using this command.

When a transaction's state is changed, the new state is written to the RTR journal synchronously. RTR will try to determine whether the change also affects other portion of RTR environment. For example, in a runtime situation where RTR routers and RTR backend servers are active, the RTRACP will send the new status to applicaiton servers as well as RTR routers to make sure that the change takes effect on all nodes in the RTR facility or facilities.

However, in an off-line situation where an RTR facility has not been created, RTR will simply update the transaction state in place in the RTR journal. The RTR log file must be turned on before using the SET TRANSACTION command to record the state changes. See the SET LOG command.

There are eight legitimate situations where you can change a transaction's state; See Table 6-19.


Parameters

transaction-id

Specifies a particular transaction or transactions whose transaction state you want to change. The transaction_id format is the same as that displayed by DUMP JOURNAL and SHOW TRANSACTION commands.

If no transaction_id is specified then all transactions ("*") that satisfy the specifying qualifiers are processed by the command.


Qualifiers

/BEFORE[=date]

Selects only those transactions whose timestamp is before the specified date. Default is the current date.

/STATE=current_state

Selects a particular transaction or a set of transactions that are in the specified state transaction state. This qualifier is required and the state value must be specified.

Value of state may be one of the following:

Use the DUMP JOURNAL or SHOW TRANSACTION command to help you find what is the current state of a particular transaction.

/FACILITY

/FACILITY=RTR$DEFAULT_FACILITY (D)

Specifies the name of a facility for selecting transactions. The default facility, RTR$DEFAULT_FACILITY, is used if this qualifier is not specified.

/NEW_STATE

Specifies the new transaction state that selected transactions will be changed to. This qualifier is required and new state value must be specified.

Value of new_state may be one of the following:

Note that one cannot always change a transaction's state from one legitimate transaction state to another. Some state changes are not valid. The following table shows state changes that are valid.

Table 6-19 Valid Transaction State Changes
    NEW STATE  
Current State COMMIT ABORT EXCEPTION DONE
SENDING   YES    
VOTED YES YES    
COMMIT     YES YES
EXCEPTION YES     YES
PRI_DONE       YES

/NODE[=node-list]

/NODE=default-node-list (D)

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

/OUTPUT[=file-spec]

/OUTPUT=stdout (D)

Specifies that the resulting information is written to the file file-spec. If /OUTPUT or file-spec is omitted then the standard or default output is used.

/PARTITION

/PARTITION=partition_name

Specifies the name of a partition from which all transactions are running within. A partition name must be supplied.

Use SHOW PARTITION to view the names of the currently active partitions.

/SINCE[=date]

Selects only those transactions whose timestamp is after the specified date. Default is the current date.

Related Commands


Examples


 RTR> SET TRANSACTION "50d01f10,0,0,0,0,2166,522b2001" -
 _RTR> /NEW=ABORT /CURRENT=SENDING /PART=DB_PART

Abort this specified transaction running in the DB_PART partition.


 RTR> SET TRANSACTION /NEW=ABORT /CURRENT=VOTED /PART=DB_PART

For all transactions that are in VOTED transaction state and are running in DB_PART partition and in "RTR$DEFAULT_FACILITY facility, abort them.


SHOW CHANNEL

Show the names and state of channels that have been opened using the CLI API.

Format

SHOW CHANNEL [channel-name]

Command Qualifiers Defaults
/ALL_WINDOWS /NOALL_WINDOWS
/CLUSTER /NOCLUSTER
/NODE=node-list /NODE=default-node-list
/OUTPUT[=file-spec] /OUTPUT=stdout

Description

The SHOW CHANNEL command shows the channel type (client or server), the channel name and owner process-id for channels opened using the CLI API.


Parameters

channel-name

Specifies the name of the channel to be displayed. channel-name can contain wild cards. If channel-name is omitted all declared channels for this window (terminal or virtual terminal) are displayed.

Qualifiers

/ALL_WINDOWS

/NOALL_WINDOWS

Specifies that channels opened in all windows (terminals or virtual terminals) are shown.

/CLUSTER

/NOCLUSTER (D)

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

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

Note: In environments that do not support clustering, use of the /CLUSTER qualifier will cause the relevant command to be executed on the local node only.

/NODE[=node-list]

/NODE=default-node-list (D)

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

/OUTPUT[=file-spec]

/OUTPUT=stdout (D)

Specifies that the resulting information is written to the file file-spec. If /OUTPUT or file-spec is omitted then the standard or default output is used.

Related Commands


Examples


 RTR> SHOW CHANNEL/ALL_WINDOWS  (1)
  
 Channel type Channel name                (Owner pid)   
 server         RTR$DEFAULT_CHANNEL             (28879)  (2)
 client         CLI_CHN                         (28879)  (3)
 client         CLI_CHN2                        (26225)  (4)
 


Previous Next Contents Index