Product Documentation

Knowledgebase

Previous Topic

Next Topic

Server Shuts Down Improperly

This section discusses ways in which a FairCom DB shutdown may fail to complete properly. A normal FairCom DB shutdown is indicated by the following messages in the server status log:

Fri Sep 26 14:30:08 2003

- User# 12 Server shutdown initiated

Fri Sep 26 14:30:09 2003

- User# 12 Communications terminated

Fri Sep 26 14:30:09 2003

- User# 12 Perform system checkpoint

Fri Sep 26 14:30:09 2003

- User# 12 Server shutdown completed

Fri Sep 26 14:30:09 2003

- User# 12 Maximum memory used was 116088930 bytes

A normal FairCom DB shutdown operation may not complete properly for the following reasons:

  • The server may terminate abnormally at shutdown due to a fatal exception.
  • The server may complete its shutdown without successfully terminating all active client threads.

If the server shutdown terminates abnormally due to a fatal exception, the server does not write the “Server shutdown completed” message to the server status log. Follow the recovery procedures described in the section “Recovering From Abnormal Server Termination”.

If the server shutdown completes without successfully terminating all active client threads, the server avoids writing a final checkpoint to the transaction logs. This causes the server to perform automatic recovery on its next startup. The server notes this situation at shutdown by logging the following message to CTSTATUS.FCS:

Mon Sep 29 16:15:51 2003

- User# 13 Clients active: skipped system checkpoint.

Auto-recovery on next start up

Treat this situation similar to an abnormal server termination, because it is possible that clients were modifying PREIMG and non-transaction files at the end of server shutdown which could mean that some updates did not get written to disk. Before restarting FairCom DB, open PREIMG and non-transaction files using a standalone utility to determine if they need to be rebuilt. The server’s automatic recovery ensures that TRNLOG files are in a consistent transaction state on the next server startup.

TOCIndex