Most performance problems stem from multiple causes. A complete performance analysis must include each item in the Diagnostic Hierarchy section below. But if you need to resolve a specific performance problem quickly, focus your attention on that area. The information in this troubleshooting section is designed to assist you in resolving a performance issue after first isolating which factors are influencing performance.
Use the procedures in this section if an Ingres tool "hangs," that is, your program seems to start but nothing happens. Other programs such as SQL display header information, but when you issue a command, nothing happens.
Use the following flow chart to identify and isolate a system performance problem:
Use the following procedure to diagnose a DBMS server that is not responding due to logging system problems.
Windows:
logstat | more
UNIX:
logstat | more
VMS:
define sys$output filename
logstat
deassign sys$output
The problem states and resolutions of logstat fields are described in the following table:
Status Field |
Description |
Action |
---|---|---|
ONLINE, ECPDONE |
A consistency point is completed. The system is fully functional and online. |
The logging system has finished a consistency point. This status flag is present most of the time while the logging system is functioning normally. If this is your status, stop this procedure and review Operating System Resources. |
LOGFULL |
The log file is full. |
A status of LOGFULL means that the system is suspended from processing new requests because there is no more room in the transaction log file. It remains so until the problem is corrected. Examine the other status field entries. If ARCHIVE is also indicated, the Archiver is actively processing the log file to free up space. The LOGFULL condition is removed when the Archiver is finished. |
CPNEEDED |
A consistency point is needed. |
CPNEEDED means the logging system is about to take a consistency point. |
ARCHIVE |
The Archiver is processing. |
The status ARCHIVE means the Archiver process is archiving. |
START_ARCHIVER |
The Archiver has stopped. |
A status of START_ARCHIVER means that the archiver process stopped. Restart the Archiver. |
FORCE_ABORT |
The force-abort- limit has been reached. |
If the status is FORCE_ABORT, a transaction came too close to the end of the transaction log file before the oldest was committed to disk, and reached the force-abort-limit. The oldest open transaction is aborted to free space for the new one. You can use logstat (or ipm) to monitor the force abort. The system frees the FORCE_ABORT status when the abort operation is completed. |
RECOVER
|
The recovery process is performing recovery. |
If the status is RECOVER, the logging system is in recovery, a normal mode. Recovery requires some time because Ingres is optimized to commit rather than back out of transactions. |
Important! If the server is recovering a lengthy transaction, be aware that shutting down the server with iimonitor's "stop server" (or by killing processes at the operating system level) results in slower recovery. Allow the recovery to proceed normally. You can monitor the progress of the recovery with logstat and iimonitor or the ipm utility.
Many other normal states appear on the status line. For additional information on reading logstat output, see the Logstat section in the Command Reference Guide.
To avoid logfull aborts, examine the transaction processing strategy errors that caused the log file to fill. Consider the following points:
Resizing transaction logs involves these steps:
To determine whether a log requires resizing, use one of the following procedures.
Using VDBA's Performance Monitor, start a monitoring session on the desired node:
Start the Interactive Performance Monitor utility (ipm).
Find the current peak transaction load by using the logstat utility to monitor the amount of log file that is in use during your peak hours. This allows you to choose the correct size for your log file. Because requirements change, you must monitor the log file regularly.
UNIX:
Use mkrawlog to reconfigure a raw log file.
To resize the transaction file, follow these steps:
The file name is displayed along with the current size of the Transaction Log.
When destroyed, the Transaction Log information table is emptied.
The transaction log is created.
Important! Reconfiguring your log file destroys the current contents of the file and leaves an empty, reinitialized log file after the reconfiguration is complete. When Ingres is shut down, all transactions are written to disk; therefore, to prevent inconsistent database problems, reconfigure the log file only after a successful Ingres installation shutdown procedure.
A failure in one of the two dual log files is most often symptomatic of hardware problems. In the event of such a failure, you must reestablish dual logging at the first opportunity.
To re-establish dual logging after a failure of one of the log files, follow these steps:
Windows: Click Start on the taskbar, and chose Programs, Ingres, Configuration Manager.
UNIX: Type cbf or vcbf on the command line to access the Configuration-By-Forms and Configuration Manager Utility.
VMS: Type cbf or vcbf on the command line to access the Configuration-By-Forms and Configuration Manager Utility.
This automatically determines which of the log files is valid and copies the contents of the valid log to the newly created log file. After the copy is complete, both log files are marked valid.