# Functions
ApplyRetentionPolicyByResolution removes blocks depending on the specified retentionByResolution based on blocks MaxTime.
IsHaltError returns true if the base error is a HaltError.
IsIssue347Error returns true if the base error is a Issue347Error.
IsOutOfOrderChunkError returns true if the base error is a OutOfOrderChunkError.
IsRetryError returns true if the base error is a RetryError.
NewBlocksCleaner creates a new BlocksCleaner.
NewBucketCompactor creates a new bucket compactor.
NewCompactProgressCalculator creates a new CompactionProgressCalculator.
NewDefaultGrouper makes a new DefaultGrouper.
NewDefaultGrouperWithMetrics makes a new DefaultGrouper.
NewDownsampleProgressCalculator creates a new DownsampleProgressCalculator.
NewGatherNoCompactionMarkFilter creates GatherNoCompactionMarkFilter.
NewGroup returns a new compaction group.
NewMetaSyncer returns a new Syncer for the given Bucket and directory.
NewPlanner is a default Thanos planner with the same functionality as Prometheus' TSDB plus special handling of excluded blocks.
NewRetentionProgressCalculator creates a new RetentionProgressCalculator.
NewTSDBBasedPlanner is planner with the same functionality as Prometheus' TSDB.
RepairIssue347 repairs the https://github.com/prometheus/tsdb/issues/347 issue when having issue347Error.
UntilNextDownsampling calculates how long it will take until the next downsampling operation.
WithLargeTotalIndexSizeFilter wraps Planner with largeTotalIndexSizeFilter that checks the given plans and estimates total index size.
# Constants
DedupAlgorithmPenalty is the penalty based compactor series merge algorithm.
PartialUploadThresholdAge is a time after partial block is assumed aborted and ready to be cleaned.
# Structs
BlocksCleaner is a struct that deletes blocks from bucket which are marked for deletion.
BucketCompactor compacts blocks in a bucket.
CompactionProgressCalculator contains a planner and ProgressMetrics, which are updated during the compaction simulation process.
CompactProgressMetrics contains Prometheus metrics related to compaction progress.
DefaultGrouper is the Thanos built-in grouper.
DownsampleProgressCalculator contains DownsampleMetrics, which are updated during the downsampling simulation process.
DownsampleProgressMetrics contains Prometheus metrics related to downsampling progress.
GatherNoCompactionMarkFilter is a block.Fetcher filter that passes all metas.
Group captures a set of blocks that have the same origin labels and downsampling resolution.
HaltError is a type wrapper for errors that should halt any further progress on compactions.
Issue347Error is a type wrapper for errors that should invoke repair process for broken block.
OutOfOrderChunkError is a type wrapper for OOO chunk error from validating block index.
RetentionProgressCalculator contains RetentionProgressMetrics, which are updated during the retention simulation process.
RetentionProgressMetrics contains Prometheus metrics related to retention progress.
RetryError is a type wrapper for errors that should trigger warning log and retry whole compaction loop, but aborting current compaction further progress.
Syncer synchronizes block metas from a bucket into a local directory.
SyncerMetrics holds metrics tracked by the syncer.
# Interfaces
Compactor provides compaction against an underlying storage of time series data.
Grouper is responsible to group all known blocks into sub groups which are safe to be compacted concurrently.
Planner returns blocks to compact.
ProgressCalculator calculates the progress of the compaction process for a given slice of Groups.