Package io.deephaven.configuration
Class CheckpointControl
java.lang.Object
io.deephaven.configuration.CheckpointControl
Programmatic API to examine and repair the checkpoint records (
table.size files) that describe table
locations on disk.
This class is the entry point for both command-line tools and query scripts.
Repair inspects every existing location of every selected table. A location that is not a directory, or is an empty
directory, should be deleted; a location whose checkpoint record is missing or predates the current version should
be regenerated or upgraded. Nothing is modified unless CheckpointControl.RepairOptions.force() is set: by default problems are only
reported.
The usual namespace ACL tests are skipped - the only requirement is that the process runs with sufficient filesystem permissions.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classConfiguration for a repair request: the tables to inspect, whether to actually make changes, and a logger.static final recordA single table selected by namespace and name. -
Method Summary
Modifier and TypeMethodDescriptionstatic @NotNull CheckpointRepairResultrepair(@NotNull CheckpointControl.RepairOptions options) Report on (and, whenCheckpointControl.RepairOptions.force()is set, repair) the checkpoint records of every location of every table selected by the givenCheckpointControl.RepairOptions.
-
Method Details
-
repair
@ScriptApi @NotNull public static @NotNull CheckpointRepairResult repair(@NotNull @NotNull CheckpointControl.RepairOptions options) Report on (and, whenCheckpointControl.RepairOptions.force()is set, repair) the checkpoint records of every location of every table selected by the givenCheckpointControl.RepairOptions.- Parameters:
options- the options describing the tables to inspect and execution details- Returns:
- composite result in a new
CheckpointRepairResultinstance - Throws:
IllegalArgumentException- if a selected namespace or table does not exist, or is not a legal name
-