Document revision date: 15 July 2002 | |
Previous | Contents | Index |
For every node you add to an OpenVMS Cluster, you must create a new transaction log. This section describes how to create a transaction log for a new node.
Before you perform this task, the new node must be configured into the cluster. For instructions on how to configure a node into a cluster, refer to OpenVMS Cluster Systems.
DO DEFINE/SYSTEM/EXECUTIVE_MODE SYS$JOURNAL dirspec[,...] |
where dirspec is the full specification of a directory containing one or more transaction logs. List all the directories that contain transaction logs, including the directory in which you want to create the new node's transaction log. You can list the directories in any order.
CREATE LOG [/SIZE=size] dirspecSYSTEM$node.LM$JOURNAL |
where:
size | is the size of the transaction log in blocks. By default, the size of the transaction log is 4000 blocks. |
dirspec | is the full specification of the directory in which you want to create the transaction log. |
node | is the name of the new node. |
This example shows how to create a transaction log for a new node, whose SCSNODE name is WHITE.
In this example, the cluster members and the locations of their transaction logs are as follows:
Node | Directory Containing Log |
---|---|
BLUE | DISK$LOG3:[LOGFILES] |
RED | DISK$LOG2:[LOGFILES] |
Neither node has a node--specific version of SYLOGICALS.COM.
Decide the size and location of WHITE's transaction log:
Node | Size of Log (in Blocks) | Disk |
---|---|---|
WHITE | 5000 | DUA4 |
Mount the disk DUA4 clusterwide:
$ MOUNT/CLUSTER/SYSTEM DUA4: LOG4 |
Create a directory for the transaction log:
$ CREATE/DIRECTORY DISK$LOG4:[LOGFILES] |
Redefine SYS$JOURNAL:
$ RUN SYS$SYSTEM:SYSMAN SYSMAN> SET ENVIRONMENT/CLUSTER SYSMAN> DO DEFINE/SYSTEM/EXECUTIVE_MODE SYS$JOURNAL - _SYSMAN> DISK$LOG2:[LOGFILES], DISK$LOG3[LOGFILES], DISK$LOG4:[LOGFILES] SYSMAN> EXIT |
Edit the SYS$STARTUP:SYLOGICALS command procedure to update the SYS$JOURNAL definition. Then create the transaction log:
$ RUN SYS$SYSTEM:LMCP LMCP> CREATE LOG/SIZE=5000 DISK$LOG4:[LOGFILES]SYSTEM$WHITE.LM$JOURNAL LMCP> EXIT |
This section describes how to remove a node if you are using DECdtm services.
If you have a standalone machine, perform steps 1 to 8 only.
Follow all the steps carefully. Taking shortcuts can lead to data corruption. |
DUMP/ACTIVE SYSTEM$node.LM$JOURNAL |
where node is the name of the node that you want to
remove.
This command displays details of all the active
transactions. The last line gives the total number of active
transactions.
DEFINE/SYSTEM/EXECUTIVE_MODE SYS$JOURNAL dirspec[,...] |
where dirspec is the full specification of a directory
containing one or more transaction logs. List all the directories that
contain any transaction logs other than the transaction log of the node
you are removing. You can list the directories in any order.
In a
cluster, use SYSMAN to redefine SYS$JOURNAL clusterwide.
This example shows how to remove the node BLUE. In this example, the cluster members and the locations of their transaction logs are as follows:
Node | Directory Containing Log |
---|---|
BLUE | DISK$LOG3:[LOGFILES] |
RED | DISK$LOG2:[LOGFILES] |
WHITE | DISK$LOG4:[LOGFILES] |
None of the nodes has a node--specific version of the SYLOGICALS.COM command procedure.
Log in to node BLUE.
Stop all the software that uses DECdtm services. Then find out if BLUE's transaction log contains any active transactions:
$ RUN SYS$SYSTEM:LMCP LMCP> DUMP/ACTIVE SYSTEM$BLUE.LM$JOURNAL Dump of log file DISK$LOG3:[LOGFILES]SYSTEM$BLUE.LM$JOURNAL . . . Total of 0 transactions active, 0 prepared and 0 committed. LMCP> EXIT |
Redefine SYS$JOURNAL:
$ RUN SYS$SYSTEM:SYSMAN SYSMAN> SET ENVIRONMENT/CLUSTER SYSMAN> DO DEFINE/SYSTEM/EXECUTIVE_MODE SYS$JOURNAL - _SYSMAN> DISK$LOG2:[LOGFILES], DISK$LOG4:[LOGFILES] SYSMAN> EXIT |
Edit the SYS$MANAGER:SYLOGICALS.COM command procedure to update the SYS$JOURNAL definition.
Archive BLUE's transaction log. Then shut down node BLUE:
$ @SYS$SYSTEM:SHUTDOWN.COM . . . Should an automatic system reboot be performed [NO]? NO |
Restart the software that uses DECdtm services. Then reconfigure the cluster:
$ @SYS$STARTUP:CLUSTER_CONFIG.COM Cluster Configuration Procedure 1. ADD a node to a cluster. 2. REMOVE a node from the cluster. 3. CHANGE a cluster member's characteristics. 4. CREATE a duplicate system disk for BLUE. Enter choice [1]: 2 . . . Updating network database... The configuration procedure has completed successfully. |
By default, DECdtm services start automatically when you boot the computer. The DECdtm process, TP_SERVER, then checks for a transaction log, and continues checking until it finds one.
Disable DECdtm services if you do not use, and do not plan to use, any software that uses DECdtm services. This saves memory and CPU time.
In an OpenVMS Cluster, disable DECdtm services on all the nodes in the cluster.
$ RUN SYS$SYSTEM:LMCP LMCP> CLOSE LOG |
$ ! $ DEFINE/SYSTEM/EXECUTIVE_MODE SYS$DECDTM_INHIBIT yes $ ! |
Enable DECdtm services only if you have previously disabled them and you now want to run software that uses DECdtm services.
$ DEASSIGN/SYSTEM/EXECUTIVE_MODE SYS$DECDTM_INHIBIT |
$ @SYS$STARTUP:DECDTM$STARTUP.COM |
This example shows how to enable DECdtm services in a cluster environment.
Deassign SYS$DECDTM_INHIBIT, then start up the TP_SERVER process.
$ RUN SYS$SYSTEM:SYSMAN SYSMAN> SET ENVIRONMENT/CLUSTER SYSMAN> DO DEASSIGN/SYSTEM/EXECUTIVE_MODE SYS$DECDTM_INHIBIT SYSMAN> DO @SYS$STARTUP.DECDTM$STARTUP.COM SYSMAN> EXIT |
Edit the SYS$MANAGER:SYLOGICALS.COM command procedure to delete the
SYS$DECDTM_INHIBIT definition.
27.14 Using the XA Gateway (Alpha Only)
DECdtm/XA provides support for coordinating and managing transactions that use XA. By using an XA Gateway, DECdtm/XA can join other Resource Managers (RM) in transactions that are managed by another Transaction Manager (TM). This section describes how to configure and use DECdtm XA Gateway support.
In this chapter, the term XA Specification refers to Distributed Transaction Processing: The XA Specification. |
To use DECdtm/XA and ensure proper startup and shutdown of DECdtm/XA services, the following command files must be invoked:
Add the command @SYS$STARTUP:DDTM$XA_STARTUP.COM to the startup database or to the command file SYS$MANAGER:SYSTARTUP_VMS.COM.
Add the command @SYS$STARTUP:DDTM$XA_SHUTDOWN.COM to the command file SYS$MANAGER:SYSHUTDWN.COM.
Perform the following steps to verify that DECdtm XA services are operating properly:
The XA Gateway is configured into each transaction processing (TP) process as an XA-compliant resource manager. The XA Gateway handles XA calls from the XA transaction manager (TM) and maps them into calls to DECdtm system services. This allows DECdtm to send the appropriate events to any DECdtm compliant Resource Manager (RM) used in a TP process.
The operation of the XA Gateway is transparent to the RM; DECdtm RMs do not need any modification to be used with the XA Gateway.
The XA Gateway uses a log file to record the mapping between XA transactions and DECdtm transactions. The log file is managed by the gateway server process DDTM$XG_SERVER.
Create the gateway log file with the XGCP utility (see the OpenVMS System Management Utilities Reference Manual). The size of the gateway log file depends on the number of concurrently active transactions. Up to 600 bytes are required for each active transaction, depending on the size of the transaction ID (TID) used by the XA TM. The gateway log file expands automatically when required.
The gateway log file resides in the directory specified by the logical name SYS$JOURNAL and has a name of the form SYSTEM$name.DDTM$XG_JOURNAL. For optimum performance, move each gateway log file and each DECdtm log file to a separate physical device, and define SYS$JOURNAL as a search list for the set of physical devices.
The XA Gateway requires an association on each OpenVMS Cluster node between an XA transaction manager and the XA Gateway log file. This association is managed by specifying a gateway name as follows:
All XA applications that run on the local node must be configured with the same gateway name. XA applications using the same name cannot run on other OpenVMS Cluster nodes. Therefore, you normally define one gateway name and create one gateway log file for each node of an OpenVMS Cluster.
You can change the association of a gateway name and bind the gateway name to a different OpenVMS Cluster node, provided that the node can access the gateway log file. To change the association of a gateway name, perform the following steps:
You must take care to protect against the loss of a gateway log file, perhaps by shadowing the device on which it resides. If you create a new log file, or if you use an out-of-date log file, transactions that were originally recorded as committed may be incorrectly rolled back. This can cause databases to become inconsistent with each other, or inconsistent with reports given to other systems or users. |
Gateway log files are not large and it is better never to delete them. If you do delete an unwanted gateway log file, first use the DECdtm XGCP utility to verify that the gateway is not still a participant in any prepared transactions. The gateway participant name is DDTM$XG/name.
The gateway server uses the following system logical names:
Previous | Next | Contents | Index |
privacy and legal statement | ||
6017PRO_107.HTML |