Commit log archive configuration
Hyper-Converged Database (HCD) provides commit log archiving and point-in-time recovery.
The system archives the commit log at node startup and when a commit log is written to disk, or at a specified point-in-time.
You configure this feature in the commitlog_archiving.properties
configuration file.
The commands archive_command and restore_command expect only a single command with arguments.
Enter the parameters verbatim.
You cannot execute STDOUT
and STDIN
or multiple commands.
To workaround, you can script multiple commands and add a pointer to this file.
To disable a command, leave it blank.
Archive a commit log segment
- Purpose
-
Specifies the command to archive a commit log segment.
- Command
-
archive_command=
- Parameters
-
-
%path
: Fully qualified path of the segment to archive -
%name
: Name of the commit log
-
- Example
-
archive_command=/bin/ln %path /backup/%name
Restore an archived commit log
- Purpose
-
Specifies the command to restore an archived commit log.
- Command
-
restore_command=
- Parameters
-
-
%from
: Fully qualified path of the archived commitlog segment from the<restore_directories>
-
%to
: Name of live commit log directory
-
- Example
-
restore_command=cp -f %from %to
Replace
%from
with the fully qualified path of the archived commitlog segment from the<restore_directories>
and%to
with the name of live commit log directory.For example,
cp -f /backup/commitlogs/20250917-170000 /var/lib/cassandra/commitlog
.
Set the restore directory location
- Purpose
-
Specifies the location of archived commit logs for restoration.
- Command
-
restore_directories=
- Parameters
-
<restore_directory_location>
: Fully qualified path of the archived commit logs for restoration - Example
-
restore_directories=/backup/commitlogs
Restore mutations
- Purpose
-
Specifies the timestamp for point-in-time recovery up to and including the specified timestamp.
When recovering mutations, the system stops the restore process at the first client-supplied timestamp that is greater than the
restore_point_in_time
timestamp. Some mutations might not be recovered because the order in which the database receives mutations doesn’t strictly follow the timestamp order. - Command
-
restore_point_in_time=
- Parameters
-
<timestamp>
: Timestamp in EXIF format (YYYY:MM:DD HH:MM:SS
) for point-in-time recovery, up to and including the specified timestamp. - Example
-
restore_point_in_time=2025:09:17 17:00:00