Motorola 6806800C47B ユーザーズマニュアル
Implementation Notes
API Description
Checkpoint Service Programmer’s Reference (6806800C47B)
19
If a callback of this form has been registered with the Checkpoint service via
ncsCkptRegisterCkptArrivalCallback()
, then it will be invoked whenever new or
updated checkpoint replica data arrives for the checkpoint identified by checkpointHandle. The
checkpoint writer is never called back. Also, applications that have not opened the checkpoint
with the SA_CKPT_CHECKPOINT_READ flag are not called back. This callback is invoked in
the context of a thread issuing saCkptDispatch() call.
checkpoint writer is never called back. Also, applications that have not opened the checkpoint
with the SA_CKPT_CHECKPOINT_READ flag are not called back. This callback is invoked in
the context of a thread issuing saCkptDispatch() call.
The expected behavior for the client application is to take these very same arguments and use
them as-is to invoke saCkptCheckpointRead(), thus fetching the section data that has been
modified in the checkpoint.
them as-is to invoke saCkptCheckpointRead(), thus fetching the section data that has been
modified in the checkpoint.
For the NCS implementation, this callback function shall report that the data available for
reading is exactly the same set of data that was described and written by the checkpoint writer
that invoked one of saCkptCheckpointWrite(), saCkptSectionOverwrite() or
reading is exactly the same set of data that was described and written by the checkpoint writer
that invoked one of saCkptCheckpointWrite(), saCkptSectionOverwrite() or
saCkptSectionCreate()
. This means/implies that our NCS implementation shall deliver
checkpoint data in exactly the same units as was written. However, note that this callback is not
invoked when a section is deleted by a writer using the saCkptSectionDelete() API.
Therefore this service extension can only be used if sections created are expected to exist
through the lifetime of the distributed application, i.e. sections that are created by the service
are never deleted.
invoked when a section is deleted by a writer using the saCkptSectionDelete() API.
Therefore this service extension can only be used if sections created are expected to exist
through the lifetime of the distributed application, i.e. sections that are created by the service
are never deleted.
This function does not conflict or affect the behavior of any other SAF Checkpoint function.
Return Values
n.a.
2.2
Implementation Notes
This section summarizes important information that should be kept in mind when writing
applications that make use of the Checkpoint service.
applications that make use of the Checkpoint service.
2.2.1
Usage of Non-Collocated Checkpoints
Checkpoints created without the collocated attribute are called non-collocated checkpoints. The
management of replicas of non-collocated checkpoints and whether they are active or not is the
responsibility of the Checkpoint Service.
management of replicas of non-collocated checkpoints and whether they are active or not is the
responsibility of the Checkpoint Service.
For the non-collocated Checkpoints, NCS06A Checkpoint Service will specify the location of the
checkpoint replicas as per the following policy:
checkpoint replicas as per the following policy:
z
If a non-collocated checkpoint is opened for the first time by an application residing on a
payload blade, the replicas will be created on the local payload blade and both the system
manager nodes. In this case, the replica residing on the payload blade is designated as
active replica.
payload blade, the replicas will be created on the local payload blade and both the system
manager nodes. In this case, the replica residing on the payload blade is designated as
active replica.
z
If a non-collocated checkpoint is opened for the first time by an application residing on the
system manager nodes, the replica will be created only on the system manager blade. In
this case, this replica on a system manager node will act as the active replica.
system manager nodes, the replica will be created only on the system manager blade. In
this case, this replica on a system manager node will act as the active replica.
z
If another application opens the same checkpoint from a payload node, the checkpoint
service will not create the replica on that node.
service will not create the replica on that node.