Guardian Procedure Calls Reference Manual

have a segment with that segment ID, an error is returned and no data or file information is
checkpointed.
Extended addresses must be relative; they cannot be absolute. Extended addresses cannot
be in the user code space.
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 process 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.
No segment is used if the segment in use at the time of the last checkpoint and the segment
in use when the CHECKMONITOR or CHECKSWITCH procedure was called are both
unavailable.
Do not try to checkpoint data in a read-only segment.
You can checkpoint data in shared extended data segments, but you must ensure consistency
of the data among all processes that might be sharing the segment, both in the primary
processor and the backup processor.
Stack allocation for native processes
The backup process can abnormally terminate if not enough disk or memory resources are
available to increase the size of the main stack in the backup process. This situation is possible
in a native process, because the main stack is allocated dynamically or on request. By contrast,
TNS stacks are statically allocated.
Use the space guarantee attribute of the object file or process creation procedure
(PROCESS_LAUNCH_ or PROCESS_SPAWN_) to ensure that enough resources are available
when the native process is created.
Errors returned by CHECKPOINTMANYX
CHECKPOINTMANYX returns these errors:
The checkpoint message contains a buffer in an extended data segment, and the backup
does not have that segment allocated (file-system error 22).
The backup process does not exist.
Parameter errors (status.<0:7> = 3):
A bounds error occurred on the descriptor array.
The file number is not open.
The extended address is absolute.
The extended address is in logical segment 1, 2, or 3 (code or library spaces); that
is, not in a data segment or the stack.
The segment ID was equal to -1 and the address was in an extended data segment,
but no selectable segment was in use at the time of the call to CHECKPOINTMANYX.
The address was in the stack, but either the count was too large, the area was above
the highest stack address, the area was beyond the end of the stack, or the area
overlapped the area used by the CHECKMONITOR procedure.
CHECKPOINTMANYX Procedure 153