# Functions
CalculateHash calculates the hash of the given type.
ConvertExtensions converts extensions with `any` type into specific type `v` that the caller expects.
InjectThanos sets Thanos meta to the block meta JSON and saves it to the disk.
Read the block meta from the given reader.
ReadFromDir reads the given meta from <dir>/meta.json.
ReadMarker reads the given mark file from <dir>/<marker filename>.json in bucket.
# Constants
DeletionMarkFilename is the known json filename for optional file storing details about when block is marked for deletion.
DeletionMarkVersion1 is the version of deletion-mark file supported by Thanos.
DownsampleVerticalCompactionNoCompactReason is a reason to not compact overlapping downsampled blocks as it does not make sense e.g.
IndexSizeExceedingNoCompactReason is a reason of index being too big (for example exceeding 64GB limit: https://github.com/thanos-io/thanos/issues/1424) This reason can be ignored when vertical block sharding will be implemented.
ManualNoCompactReason is a custom reason of excluding from compaction that should be added when no-compact mark is added for unknown/user specified reason.
ManualNoDownsampleReason is a custom reason of excluding from downsample that should be added when no-downsample mark is added for unknown/user specified reason.
MetaFilename is the known JSON filename for meta information.
NoCompactMarkFilename is the known json filename for optional file storing details about why block has to be excluded from compaction.
NoCompactMarkVersion1 is the version of no-compact-mark file supported by Thanos.
NoDownsampleMarkFilename is the known json filenanme for optional file storing details about why block has to be excluded from downsampling.
NoDownsampleVersion1 is the version of no-downsample-mark file supported by Thanos.
NoneFunc shows that hashes should not be added.
OutOfOrderChunksNoCompactReason is a reason of to no compact block with index contains out of order chunk so that the compaction is not blocked.
SHA256Func shows that SHA256 has been used to generate the hash.
ThanosVersion1 is a enumeration of Thanos section of TSDB meta supported by Thanos.
TSDBVersion1 is a enumeration of TSDB meta versions supported by Thanos.
TODO(bwplotka): Merge with pkg/component package.
# Variables
ErrorMarkerNotFound is the error when marker file is not found.
ErrorUnmarshalMarker is the error when unmarshalling marker JSON file.
# Structs
DeletionMark stores block id and when block was marked for deletion.
Meta describes the a block's meta.
NoCompactMark marker stores reason of block being excluded from compaction if needed.
NoDownsampleMark marker stores reason of block being excluded from downsample if needed.
ObjectHash stores the hash of an object in the object storage.
Thanos holds block meta information specific to Thanos.
# Type aliases
HashFunc indicates what type of hash it is.
NoCompactReason is a reason for a block to be excluded from compaction.
NoDownsampleReason is a reason for a block to be excluded from downsample.