Motorola 6806800C47B Manuel D’Utilisation

Page de 26
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.
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.
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 
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.
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. 
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.
For the non-collocated Checkpoints, NCS06A Checkpoint Service will specify the location of the 
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.
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.
z
If another application opens the same checkpoint from a payload node, the checkpoint 
service will not create the replica on that node.