HiRDB Datareplicator Version 8 Description, User's Guide and Operator's Guide
The table below shows the possible causes of errors in the target system and the handling methods for such errors. If an inconsistency has occurred between the source and target databases due to an error, the source and target Datareplicators must be initialized. For details about the initialization procedure, see 9.4 Initialization procedure during error recovery.
Table 9-3 Causes of errors and handling methods
| Cause of error | Error handling method | |
|---|---|---|
| Memory shortage (local memory) |
|
|
| Memory shortage (shared memory) |
|
|
| Shortage of file descriptors |
|
|
| Socket establishment failure | Eliminate the cause of the error on the basis of the detail code from the system call. | |
| Port check error | Eliminate the cause of the error on the basis of the detail code. | |
| Communication line failure | Reconnect the communication line and restart the source system. | |
| Data reception sequence error | Contact the source system's customer engineer. | |
| Insufficient file space | Import information queue file | Use the hdsstate command to see if all the update information in the import information queue file has been imported (all update information has been imported when the write position of COMMUNICATION INFORMATION is the same as the read position of REFLECTION INFORMATION). If all update information has been imported but the error status indicated by KFRB00005-E (insufficient queue file space) still remains, execute the hdsstop -t immediate or force command to terminate the target Datareplicator. Then increase the number of files or the file size and restart Datareplicator with the hdsstart -i command. The source Datareplicator automatically re-executes transmission processing; there is no need to take any special action. |
| Import status file | After importing all update information in the import information queue file, terminate the target Datareplicator with the hdsstop command. Then increase the file size and restart Datareplicator with the hdsstart -i command. | |
| Invalid update information | Contact the customer support center. | |
| Invalid definition information | Correct the definitions for the source system or the target Datareplicator. | |
| Invalid medium | Import information queue file | After correcting the error, synchronize the data linkage environments at the source and target, initialize them, then re-create the target database on the basis of the source database. |
| Import status file | ||
| Import master status file | ||
| SQL error | Eliminate the cause of the error on the basis of the SQLCODE. | |
| Error during update information input command processing |
|
|
| Internal conflict | Contact the customer support center. | |
| Machine power interrupt | Restart the machine. | |
| Bus error | Contact the customer support center. | |
| Invalid signal reception (sigkill) |
|
|
If the two-phase commit method is being used for synchronization point processing and an SQL error occurs while executing a synchronization point processing request, the status of the transaction that is being executed by Datareplicator's import facility is displayed as XID, which is displayed by executing HiRDB's pdls -d trn -a command. XID displays information about the transaction in the following format:
XID=aaaaaaaabbccdddd,eeeeeeeeffgghhhh
aaaaaaaa: Name of the executing process. If it is a UOC routine, hdsuocg is displayed; otherwise, hdssqle is displayed.
bb: Datareplicator identifier (00-ff)
cc: Data linkage identifier (00-ff)
dddd: 0000
eeeeeeee: Name of the import group
ff: Import group sequence number (sequential import group number assigned for each data linkage identifier)
gg: SQL process number (sequential SQL process number assigned for each import group)
hhhh: 0000
When synchronization point processing is performed using the two-phase commit method, do not use a command to settle a transaction except when canceling data linkage, and then executing an initial start. Normally, the target Datareplicator's transaction is settled automatically when the target Datareplicator starts. If the target Datareplicator terminates due to abnormal termination of the target HiRDB, a transaction might remain unsettled. In this case, restart the target Datareplicator with the procedure shown below.
To restart the target Datareplicator:
The following table shows the transaction information that is displayed and the action to be taken by the user:
| Displayed information | User's action | ||
|---|---|---|---|
| PROGRAM | B-SVID | STATUS | |
| Other than hdssqle | N/A | N/A | Because this is not a Datareplicator transaction, settle it on the basis of instructions provided by the program that generated the transaction. |
| hdssqle | **...* | N/A | No user action is necessary, because all transactions whose TRNGID is shown as **...* are settled automatically when the target Datareplicator starts. |
| Other than **...* | FORGETTING(?,w) ?: Any character |
Use the pdfgt command to settle a transaction with this TRNGID. | |
| Other than FORGETTING(?,w) | Compare the XID of the transaction with this TRNGID with the XID in the KFRB3072-E message output to the error information file, then take one of the following actions: There is a KFRB3072-E message with the same XID: Use the pdcmt command to settle the transaction. There is no KFRB3072-E with the same XID: Use the pdrbk command to settle the transaction. |
||
All rights reserved. Copyright (C) 2007, 2013, Hitachi, Ltd.