Background |
 |
Whenever one half of the Transaction Manager (XM) user log
gets full, XM starts the checkpoint process to write out all the
dirty pages of the files which have transactions logged in that
half.
During user Checkpoint on many busy high-end systems, the
response to on-line users is very poor. Sometimes, it almost stalls.
The main reason is that there is too much of disk i/o being used
at very high priority, i.e., C152. This problem may increase further
if the userlog is expanded from the current 64 MB.
Overview of the Solution |
 |
The goal of this solution is to be able to reduce the impact
of XM user checkpoint operation on the on-line response. This means
controlling the priority at which chkpt i/o's are issued by
MM, and also having the priority configurable by the user.
The priority is configurable at volume-set level and it is
not system wide. The priority for the required volume-set can be
changed using volutil.
How and When to Control the Checkpoint Priority
The users should lower the priority only if they see a significant
impact on-line response time. It should not be made so low (such
as 255) that checkpointing takes a long time and system nearly stalls.
It should not be so high (such as 152) that during checkpointing, on-line
response comes down drastically.
How to Give the Request to Change the Checkpoint Priority
The volutil tool is enhanced to provide two new commands to facilitate
the control of chkpt priority. They are,
SHOWCHKPTPRI <volset-name> |
This command displays the priority of the checkpoint process
for the given volume set.
ALTERCHKPTPRI <volset-name> <new priority> |
This command modifies the priority of the User checkpoint
process for the given volume set. The checkpoint priority should
be in the range of 152 to 255, with the recommended value at 200.
Priority 0 resets the checkpoint priority to default which is C152.
The changed priority becomes effective at the next checkpoint.