prometheus/tsdb
Lukasz Mierzwa cdf4b3ec3a Add a TSDB PreInitFunc hook and move mapCommonLabelSymbols() call there
We need to call mapCommonLabelSymbols() once TSDB opens all blocks, but before we start to reply the WAL and populate the HEAD.
There doesn't seem to be a way to do this right now, so add a hook we can use for it.

Signed-off-by: Lukasz Mierzwa <l.mierzwa@gmail.com>
2025-02-25 12:43:24 +00:00
..
agent Update collision hashes for stringlabels 2025-02-20 12:06:33 +00:00
chunkenc tsdb/chunkenc: don't reuse custom value slices between histograms 2024-11-29 16:28:09 +11:00
chunks enable errorf rule from perfsprint linter 2024-11-06 16:50:36 +01:00
docs Merge branch 'main' into cedwards/nhcb-wal-wbl 2025-01-02 12:50:19 +01:00
encoding Attempt for record type 2024-12-05 09:21:47 -08:00
errors Enable default revive rules (#13068) 2023-11-29 17:23:34 +00:00
fileutil tests: remove err from message when testify prints it already 2024-02-01 14:18:01 +00:00
goversion remove obsolete build tag 2024-01-17 22:26:32 +08:00
index Expose ListPostings Length via Len() method (#15678) 2025-01-07 17:58:26 +01:00
record chore: fix function name and struct name in comment (#15827) 2025-01-17 21:26:08 +01:00
testdata tsdb: Delete blocks atomically; Remove tmp blocks on start; Added test. (#7772) 2020-08-11 06:56:08 +01:00
tombstones chore!: adopt log/slog, remove go-kit/log 2024-10-07 15:58:50 -04:00
tsdbutil fix: os.MkdirTemp with t.TempDir (#15860) 2025-01-31 14:32:20 +00:00
wlog Fix issues raised by staticcheck (#15722) 2025-01-09 17:51:26 +01:00
.gitignore Moving tsdb into its own subdirectory 2019-08-13 13:58:49 +05:30
block.go Signed-off-by: crystalstall <crystalruby@qq.com> 2025-01-11 00:41:51 +08:00
block_test.go feat: Allow customizing TSDB postings decoder (#13567) 2024-11-11 07:59:24 +01:00
blockwriter.go chore!: adopt log/slog, remove go-kit/log 2024-10-07 15:58:50 -04:00
blockwriter_test.go feat: Allow customizing TSDB postings decoder (#13567) 2024-11-11 07:59:24 +01:00
CHANGELOG.md Rename default branch to main 2021-02-22 20:28:02 +01:00
compact.go Merge pull request #14489 from harry671003/implement_metadata_limit 2024-11-19 17:32:16 +01:00
compact_test.go tsdb tests: avoid capture-by-reference in goroutines 2025-01-27 19:59:43 +00:00
db.go Add a TSDB PreInitFunc hook and move mapCommonLabelSymbols() call there 2025-02-25 12:43:24 +00:00
db_test.go Merge pull request #12920 from prymitive/compactLock 2025-02-10 17:35:09 +00:00
example_test.go Add context argument to Querier.Select (#12660) 2023-09-12 12:37:38 +02:00
exemplar.go tsdb.CircularExemplarStorage: Avoid racing (#15231) 2024-10-29 10:40:46 +01:00
exemplar_test.go tsdb.CircularExemplarStorage: Avoid racing (#15231) 2024-10-29 10:40:46 +01:00
head.go feat(tsdb/(head|agent)): reuse pools across segments to avoid generating garbage during WL replay 2025-02-10 22:40:24 +01:00
head_append.go Use new record type only for NHCB 2024-12-06 13:46:20 -08:00
head_bench_test.go Revert "Fix MemPostings.Add and MemPostings.Get data race (#15141)" 2024-11-03 12:30:34 +00:00
head_dedupelabels.go chore!: adopt log/slog, remove go-kit/log 2024-10-07 15:58:50 -04:00
head_other.go chore!: adopt log/slog, remove go-kit/log 2024-10-07 15:58:50 -04:00
head_read.go headIndexReader: reduce debug logging (#15993) 2025-02-07 15:46:55 +00:00
head_read_test.go TSDB: Simplify OOO Select by copying the head chunk (#14396) 2024-07-03 15:08:07 +01:00
head_test.go Update collision hashes for stringlabels 2025-02-20 12:06:33 +00:00
head_wal.go feat(tsdb/(head|agent)): reuse pools across segments to avoid generating garbage during WL replay 2025-02-10 22:40:24 +01:00
isolation.go chore: enable early-return from revive 2025-02-10 22:08:43 +01:00
isolation_test.go tsdb: turn off transaction isolation for head compaction (#11317) 2022-09-27 19:31:23 +05:30
mocks_test.go tsdb: use Go standard errors 2023-12-11 12:18:54 +00:00
ooo_head.go TSDB: Remove code for querying OOO-head only 2024-08-14 13:41:13 +01:00
ooo_head_read.go [PERF] TSDB: Optimize inverse matching (#14144) 2024-11-19 15:49:01 +00:00
ooo_head_read_test.go Rename old histogram record type, use old names for new records 2024-12-05 09:21:47 -08:00
ooo_head_test.go fix TestOOOHeadChunkReader_Chunk on 32-bit 2024-12-16 10:45:07 -05:00
ooo_isolation.go Fix issue where queries can fail or omit OOO samples if OOO head compaction occurs between creating a querier and reading chunks (#13115) 2023-11-24 12:38:38 +01:00
ooo_isolation_test.go Fix issue where queries can fail or omit OOO samples if OOO head compaction occurs between creating a querier and reading chunks (#13115) 2023-11-24 12:38:38 +01:00
querier.go Fix bug in lbl!~".+" shortcut (#15684) 2024-12-17 17:34:24 +01:00
querier_bench_test.go TSDB benchmarks: Commit periodically to speed up init 2024-12-30 17:42:56 +00:00
querier_test.go tsdb tests: restrict some 'defer' operations 2025-01-27 19:59:43 +00:00
README.md Fixed broken link in tsdb README.md 2022-10-07 16:20:20 +00:00
repair.go chore!: adopt log/slog, remove go-kit/log 2024-10-07 15:58:50 -04:00
repair_test.go feat: Allow customizing TSDB postings decoder (#13567) 2024-11-11 07:59:24 +01:00
testutil.go Merge branch 'main' into cedwards/nhcb-wal-wbl 2025-01-02 12:50:19 +01:00
tsdbblockutil.go enable errorf rule from perfsprint linter 2024-11-06 16:50:36 +01:00

TSDB

GoPkg

This directory contains the Prometheus TSDB (Time Series DataBase) library, which handles storage and querying of all Prometheus v2 data.

Documentation

External resources

A series of blog posts explaining different components of TSDB: