Appendix A.4 Errors

Organization of this subsection
(1) What information do I need in the event of an error?
(2) After restarting HiRDB, SPP terminated abnormally due to a DB lock-release wait timeout

(1) What information do I need in the event of an error?

Question
Which information should I collect for purposes of investigation in the event of an error?
Answer
In general, save the following information onto a medium such as DAT:
  1. All files under $PDDIR/spool
  2. The following shared libraries:
    [Figure]/lib/libM.sl
    [Figure] /lib/libc.sl
    [Figure] /usr/lib/libdld.sl
    [Figure] /usr/lib/librsort.sl
  3. syslog file
  4. For an error associated with database conformity, collect the following information:
    [Figure]Contents of the user RDAREAs storing the corresponding table
    [Figure]Contents of the past log files up to that point
    [Figure]Contents of the master directory RDAREA
    [Figure]Contents of the data directory RDAREA
    [Figure]Contents of data dictionary RDAREAs
Remarks
HiRDB provides the pdgeter command for collecting all the above error information except No. 4.

(2) After restarting HiRDB, SPP terminated abnormally due to a DB lock-release wait timeout

Question
After restarting HiRDB, SPP terminated abnormally due to an RDAREA lock-release wait timeout:
  1. The database seems to still be locked. What is the cause of this?
  2. After SPP's abnormal termination, the status during rollback cannot be restored. What is the cause of this?
  3. An attempt to terminate OpenTP1 normally with the dcstop command (OpenTP1 command) failed because there is an SPP engaged in rollback processing. What is the cause of this?
Answer
  1. The following specifications may be missing in OpenTP1's transaction service definition (trn):
    [Figure]trnstring -n HiRDB_DB_SERVER -d*
    [Figure] set trn_tran_optimum_processing=N
    These operands suppress OpenTP1's commit optimization and prepare optimization and normally are used when HiRDB is linked with OpenTP1 via the XA interface.
    * Supported by TP1/Server Base 03-03 or later.
  2. A HiRDB client environment variable may be missing or an invalid value may have been specified in OpenTP1's transaction service definition (trn). Check the following client environment variables:
    [Figure]PDHOST
    [Figure] PDNAMEPORT
    At the same time, check OpenTP1's user service default definition (usrrc).
  3. Same as 2 above.
    Note
    When this event occurs, terminate OpenTP1 forcibly, correct the HiRDB system definitions, then restart OpenTP1.
    Reference note
    The environment variables common to trn and usrrc should be specified in env. When they are specified in env, the environment variables are different from those in trn or usrrc; check the HiRDB Version 8 UAP Development Guide for the correct ones.