Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (C)
Guardian Procedure Calls Reference Manual—522629-013
3-44
CHECKPOINT Procedure
(Superseded by CHECKPOINTX Procedure )
•
Maximum checkpoint size
The largest stack area or data item that can be checkpointed is 32,500 bytes.
Additionally, the sum total of the sizes of the stack area and each checkpoint item,
plus an allowance of 20 bytes for each item, should not exceed 32,500 bytes. An
item in this context means either a data item (user-declared size) or a file
synchronization block with varying sizes.
•
Identification of the backup process
The system identifies the process to be affected by the CHECKPOINT operation
from the process’s mom field in the process control block (PCB). For named
process pairs, this field is automatically set up during the creation of a backup
process.
•
Checkpointing a file’s synchronization (sync) block
If a file’s sync block is checkpointed, the call to CHECKPOINT contains an implicit
call to the GETSYNCINFO procedure for the file. Therefore, checkpointing of a
file’s sync block should not be performed between an I/O completion and a call to
the FILE_GETINFO_ (or FILEINFO) procedure for that file. If file sync block
checkpointing is performed, FILE_GETINFO_ returns (in its
last-error
parameter) the status of the call to GETSYNCINFO (usually,
last-error = 0).
•
Unable to communicate with backup
If an “unable to communicate with backup” error (that is,
status.<0:7> = 1)
occurs, this normally indicates either that the backup process does not exist or that
a system resource problem exists. If a system resource problem exists, the
checkpoint message to the backup is probably too large.
•
Illegal parameter
If you attempt to checkpoint the data area in the region used by the
CHECKMONITOR procedure in the backup process, then CHECKPOINT returns
an “illegal parameter” error (that is,
status.<0:7> = 3). See the recovery
procedure under “Considerations” for CHECKMONITOR.
•
Takeovers and selectable segments
The selectable segment put into use following takeover depends on several
factors:
•
The segment in use at the time of the last checkpoint is put into use if it is
available; that is, the segment was allocated to the backup using the
SEGMENT_ALLOCATE_CHKPT_ or CHECKALLOCATESEGMENT procedure
and has not since been deallocated by the
SEGMENT_DEALLOCATE_CHKPT_ or CHECKDEALLOCATESEGMENT
procedure.
•
The segment in use when the CHECKMONITOR or CHECKSWITCH
procedure was called is used if the segment in use at the time of the last
checkpoint is no longer available.