The checkpoint script allows you to manually request a checkpoint for a given service.
Checkpointing will automatically happen periodically based on the estimated replay time should the engine restart and the total amount of time since the last successful checkpoint. Automatic checkpointing cannot be disabled.
However, there are a few cases where you would want to run the checkpoint script yourself. First, if you want more control over what time of day checkpoints occur. If you only have one running instance of a given engine, the checkpointing process causes a brief disruption of service for that engine while the checkpoint completes, which can take several seconds or minutes. If you have more than one running instance of an engine, a replica instance will perform the checkpoint, leaving the engine available throughout the checkpoint process. To force checkpointing to occur outside of your peak load hours, you can run this script on a cronjob or as a Windows Scheduled Task off-hours to reset the timers that trigger the automatic checkpointing.
Second, it is sometimes necessary to re-sync the in-memory copy of an engine to the .kdb file on disk the so that other instances of the engine can start up from it rather than from the transaction log.
|Short Name||Long Name||Required||Meaning|
|-h||--help||No||Show usage information|
|-p||--password||Yes||Password for Admin REST API|
|-s||--services||Yes||A comma-separated list of engines to checkpoint. See below for possible values.|
|-w||--wait||No||Wait for the requested checkpoints to complete|
Available values for the
This script will only have an effect when run on the same server that hosts the primary instance of a service.
1 ./checkpoint.sh -p <password> -s content