Nonstop Database, HiRDB Version 9 System Operation Guide

[Contents][Index][Back][Next]

20.11.1 Actions to be taken when a communication error occurs while HiRDB is linked to an OLTP system

If a communication error occurs while HiRDB is linked to an OLTP system, the transaction branch can no longer be committed or rolled back. This section describes the HiRDB processing and the actions to be taken by the HiRDB administrator at this time.

Organization of this subsection
(1) HiRDB processing
(2) HiRDB administrator's action
(3) Recovering a transaction that has reached secure status after an error occurrence

(1) HiRDB processing

HiRDB retains the status of the transaction branch and resumes processing.

(2) HiRDB administrator's action

  1. The OLTP system might not be active; check whether OLTP is active (if it is not, start it).
  2. If error recovery is not possible, use the pdcmt or pdrbk command to prepare for transaction determination; for details, see (3) Recovering a transaction that has reached secure status after an error occurrence.

(3) Recovering a transaction that has reached secure status after an error occurrence

When the KFPS00992-E message (transaction cannot be recovered) is output, the pdls -d trn command can be used to display the status of transactions. This section explains how to recover a transaction that has reached the secure status (commit second phase wait status) in which transaction status 1 is READY and transaction status 2 is p.

(a) HiRDB single server configuration

A server in a HiRDB single server configuration reaches secure status only when it is waiting for a commit second phase instruction from the OLTP system. The OLTP system might have terminated abnormally for some reason or the OLTP system cannot communicate with HiRDB. Therefore, take one of the following actions.

  1. When the OLTP system has abnormally terminated
    Restart the OLTP system. Once the OLTP system has restarted, the transaction is recovered automatically by establishing synchronization.
  2. In any other case
    Check the OLTP system's status, and the status of the network between the OLTP system and HiRDB. Once communication between the OLTP system and HiRDB is reestablished, the transaction is recovered by establishing synchronization with the OLTP system.
  3. Use of commands for independent determination
    If it is difficult to restart the OLTP system or to restore the network, it is possible to determine the transaction independently without establishing synchronization with the OLTP system. The commands used for this purpose are pdcmt, pdrbk, and pdfgt. For details, see 20.14 Actions when there is an undetermined transaction.
    When the transaction is recovered using this method, other resource managers and transaction branches that were being processed by the OLTP system might not be synchronized; check their data contents.
(b) HiRDB parallel server configuration

In the case of a HiRDB parallel server configuration, the actions to be taken depend on the server that has reached secure status.

Front-end server
As is the case above in 1. When the OLTP system has abnormally terminated of (a) HiRDB single server configuration, HiRDB must wait for a commit second phase indication from the OLTP system. Therefore, take the same action as described above in case 1 (a) HiRDB single server configuration.

Back-end server and dictionary server
For details about how transactions are determined, see 20.14 Actions when there is an undetermined transaction.
Note that if pd_trn_rerun_branch_auto_decide = Y is specified (Y is the default), uncompleted transactions are determined automatically.