Documentation
¶
Overview ¶
Command mlfs-admin is the L2 operations CLI. Implemented subcommands:
gc refcount-free mark-and-sweep garbage collection (slice_ref → orphan
slice manifests → casstore blob sweep), with a safety window.
fsck reap crash-orphaned ("zombie") inodes (unlinked-while-open whose
holder crashed before the final Close), optionally clear stale locks,
then run a GC pass to reclaim the freed slices. Offline/single-node.
stats read-only inspector of the metadata DB and the local node's on-disk
cache/casstore (capacity, write-back backlog, dedup), with an optional
-watch live feed. Safe against a live mount.
bench POSIX throughput + small-file latency against a directory under a
mounted mlfs. Touches only the mountpoint; the same benchmark also
ships as the standalone mlfs-bench binary for workload pods.
compact consolidate under-filled/small casstore packs (repack), rewriting
the referencing manifests; a following gc reclaims the orphaned old
packs. Offline (rewrites manifests); needs no metadata DB.
gc and fsck assume a quiesced filesystem. They refuse to run while a live mlfs daemon holds the data-dir lock file (it would otherwise race the daemon and risk reaping an open-but-unlinked inode → data loss); a stale lock file (dead PID / unparseable) is ignored with a warning, and -force-online overrides the guard for operators certain no mount is active (DANGEROUS). stats and bench are read/POSIX-only and carry no such guard.
Planned: ownership, changelog.
Click to show internal directories.
Click to hide internal directories.