// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license.
using System;
namespace FASTER.core
{
///
/// Checkpoint type
///
public enum CheckpointType
{
///
/// Take separate snapshot of in-memory portion of log (default)
///
Snapshot,
///
/// Flush current log (move read-only to tail)
/// (enables incremental checkpointing, but log grows faster)
///
FoldOver
}
///
/// Checkpoint-related settings
///
public class CheckpointSettings
{
///
/// Checkpoint manager
///
public ICheckpointManager CheckpointManager = null;
///
/// Type of checkpoint
///
public CheckpointType CheckPointType = CheckpointType.Snapshot;
///
/// Use specified directory for storing and retrieving checkpoints
/// This is a shortcut to providing the following:
/// CheckpointSettings.CheckpointManager = new LocalCheckpointManager(CheckpointDir)
///
public string CheckpointDir = null;
}
}