Shared Memory Configuration | API Description |
|
|
2.3.1Shared Memory Configuration
NCS3.0 Checkpoint service uses the shared memory for storing the checkpoint replicas. Checkpoint service will manage the shared memory segments created by it for storing the checkpoint replicas. The shared memory requirements for storing the checkpoint replica can be derived from the checkpoint creation attributes supplied at the time of saCkptCheckpointOpen( ) or saCkptCheckpointOpenAsync( ) call using the formula. maxSections * maxSectionSize
The maximum size of the shared memory segment is limited by the operating system. In most of the cases, the maximum value is 31MB. This can be found by executing the command: cat /proc/sys/kernel/shmmax
To increase the shared memory size to the desired value, one can use the following command: echo 134217728 >/proc/sys/kernel/shmmax
The above example command will set the maximum shared memory segment value to 27MB.
2.3.2Maximum Data Size Per One write or Overwrite
The maximum data size per one write or over write is 40MB. Applications that try to write more than 40MB data in one saCkptSectionWrite( ) or saCkptSectionOverwrite( ) call will get the error SA_AIS_ERR_NO_RESOURCES.
2.4Service Dependencies
The internal interfaces of the Checkpoint service are given below:
zLayered Environment for Accelerated Portability (LEAP) - for Shared Memory: Checkpoint Service uses LEAP for portability. The service uses the memory manager, timers, encode- decode utility and handle manager services provided by the LEAP.
zMessage Distribution Service (MDS) - for Messaging: All the interaction between the different subparts of the Checkpoint service will take place using MDS messaging. The MDS is also used to register the service up and down events to handle the failure cases.
zDistributed Tracing Service (DTSv) - for Logging messages: Checkpoint service uses DTSv to log debug messages, which are stored in a file and could be used for debugging and to report informational events.
zAvailability Service (AvSv) - for High Availability: CPD and CPND are modelled as AMF components.
zMessage based Checkpoint Service (MBCSv) - for checkpointing information: CPD uses the MBCSv to checkpoint the state information with the standby CPD.
zCluster Membership Service (CLM) - for Node names: CPD uses Cluster membership service to get the node name for a given node ID. Node names are required to implement Checkpoint service MIBs.
The Checkpoint library libSaCkpt.so depends on functions found in the following library: libncs_core.so
Checkpoint Service Programmer’s Reference (6806800C47B) | 21 |