Nonstop Database, HiRDB Version 9 System Operation Guide

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

20.17.2 Unit-restarting procedure (restarting the unit after adding a system log file)

In terms of the overall procedure, add the number of system log files necessary for unit restart, and then restart the unit. The following figure shows the flow of actions to be taken.

Figure 20-5 General procedure for restarting the unit after adding system log files

[Figure]

Note: The numbers in the figure correspond to the numbers in the explanation below.

Organization of this subsection
(1) Determine the number of system log file records necessary for unit restart
(2) Add system log files
(3) Restart the unit
(4) Confirm that synchronization point validation processing is complete
(5) Prepare for job resumption

(1) Determine the number of system log file records necessary for unit restart

During unit restart, the database is recovered using as input files the system log files that were being used during the previous operation. Since this database recovery process also outputs system log files, before restarting the unit, you need to add the number of system log files needed for this purpose.

The following formula can be used to determine the number of system log file records necessary for unit restart:

number of records needed = A [Figure] 3#
A: Number of system log file records the server was using during the previous operation
#: The database recovery process executed during unit restart also outputs system log files. The size varies depending on the SQL statement that updated the database and the operation of HiRDB. The number of records necessary is obtained by multiplying A by a coefficient so that no system log file shortage will occur even if the size of system logs that are output increases.

The procedure for determining the number of records needed is explained using an example.

Example
A unit terminated abnormally due to a shortage in system log files at the back-end server (bes1). During unit restart, determine the number of system log file records needed by the back-end server (bes1).

Procedure
  1. Execute the pdlogls command to identify the system log files that bes1 was using during the previous operation.

    [Figure]

    See the Status column to identify the current file. In this example, log006 is the current file.
    Next, check the Run ID of the current file (log006). The files having the same Run ID as the current file are the system log files that the back-end server (bes1) was using during the previous operation. In this example, they are log001 to log006.
  2. Calculate the number of system log file records that bes1 was using during the previous operation.

    [Figure]

    See the Record-count column of log001 to log006. The number of records in each system log file is displayed in hexadecimal on the right side of the Record-count column.
    Convert the hexadecimal record count into a decimal number to determine the total for log001 to log006.
    System log file name Record count
    Hexadecimal Decimal
    log001 4e1c 19996
    log002 4e1c 19996
    log003 4e1c 19996
    log004 4e1c 19996
    log005 61a4 24996
    log006 61a4 24996
    Total -- 129976
    The number of system log file records that bes1 was using during the previous operation is 129,976.
  3. Calculate the number of system log file records that will be needed during unit restart.
    Triple the record count determined in step 2.
    129,976 [Figure] 3 = 389,928
    The number of system log file records that will be needed during unit restart is 389,928.
    This value represents the number of records needed in each system log file. If system log files are duplexed, the above number is needed by both systems A and B.
    Reference note
    The following formula can be used to calculate the size required for the number of system log files you have determined:
    system log file size = record count [Figure] record length (bytes)
    In this example, 389,928 [Figure] 4,096 = 1,597,145,088 bytes
    You can find the record length by checking Record-size in the execution result of the pdlogls command.

(2) Add system log files

Add system log files to the server where a system log file shortage occurred. For the size of the system log files (the number of records) to be added, use the record count determined in step (1).

For details about how to add system log files, see 20.17.7 Adding system log files.

(3) Restart the unit

Execute the pdstart command to restart the unit.

After the unit restarts, transactions can be accepted. However, the system logs that are output by the processing of new transactions might cause a system log file shortage again. Therefore, resume the job only after the operation in step (5) is completed.

(4) Confirm that synchronization point validation processing is complete

Confirm that synchronization point validation processing is complete. For details about confirmation procedure, see 20.17.1(6) Confirm that the synchronization point validation process has completed.

If the number of system log files is insufficient during a restart, the unit will terminate abnormally again before validation processing for the synchronization point dump finishes. In this case, take the action described in the error message output to syslogfile or the message log file. If the system log file shortage still has not been resolved, collect troubleshooting information and contact maintenance personnel. For details about how to collect troubleshooting information, see 20.1.1 Actions to be taken by the HiRDB administrator when an error occurs.

(5) Prepare for job resumption

Make preparations for resuming the job. For details, see 20.17.1(7) Prepare for job resumption.

After you have eliminated the system log file shortage, take the actions described in 20.17.10 Actions to take after eliminating the system log file shortage.