Module gc

Module gc 

Source
Expand description

GC worker which periodically checks and removes unused/obsolete SST files.

expel time: the time when the file is considered as removed, as in removed from the manifest. lingering time: the time duration before deleting files after they are removed from manifest. delta manifest: the manifest files after the last checkpoint that contains the changes to the manifest. delete time: the time when the file is actually deleted from the object store. unknown files: files that are not recorded in the manifest, usually due to saved checkpoint which remove actions before the checkpoint.

Structsยง

GcConfig
GcLimiter
Limit the amount of concurrent GC jobs on the datanode
LocalGcWorker
ManifestOpenConfig

Functionsยง

gen_partition_from_concurrency ๐Ÿ”’
Generate partition prefixes based on concurrency and assume file names are evenly-distributed uuid string, to evenly distribute files across partitions. For example, if concurrency is 2, partition prefixes will be: [โ€œ8โ€] so it divide uuids into two partitions based on the first character. If concurrency is 32, partition prefixes will be: [โ€œ08โ€, โ€œ10โ€, โ€œ18โ€, โ€œ20โ€, โ€œ28โ€, โ€œ30โ€, โ€œ38โ€ โ€ฆ, โ€œf0โ€, โ€œf8โ€] if concurrency is 1, it returns an empty vector.

Type Aliasesยง

GcLimiterRef