prometheus/tsdb
Bryan Boreham 90e98e0235 tsdb: create isolation transaction slice on demand
When Prometheus restarts it creates every series read in from the WAL,
but many of those series will be finished, and never receive any more
samples. By defering allocation of the txRing slice to when it is first
needed, we save 32 bytes per stale series.

Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-10-21 13:45:47 +00:00
..
agent tsdb/agent: allow ingestion of OOO samples (#12897) 2023-10-13 16:33:09 +02:00
chunkenc Fix more counterResetInAnyBucket edgecases 2023-09-13 15:18:40 +02:00
chunks storage: make histogram reset handling consistent in chainSampleIterator (#12779) 2023-09-19 17:06:46 +02:00
docs Merge branch 'main' into sparsehistogram 2022-08-10 17:54:37 +02:00
encoding Merge 'main' into sparsehistogram 2022-10-05 22:14:49 +02:00
errors Fix context.Canceled wrapping in compaction 2023-03-23 11:10:00 +01:00
fileutil Update go to 1.19, set min version to 1.18 (#11279) 2022-09-07 11:30:48 +02:00
goversion lint: Adjust to the lint warnings raised by current versions of golint-ci 2023-04-19 17:10:10 +02:00
index Fix int32 overflow issues (#12978) 2023-10-16 16:23:26 +02:00
record tsdb: Support native histograms in snapshot on shutdown (#12258) 2023-07-05 11:44:13 +02:00
testdata
tombstones Copy tombstone intervals to avoid race (#12245) 2023-05-17 15:15:12 +02:00
tsdbutil Add a chunk size limit in bytes (#12054) 2023-08-24 15:21:17 +02:00
wlog Update exp package (#12650) 2023-09-21 22:53:51 +02:00
.gitignore
block.go Add context argument to tsdb.PostingsForMatchers 2023-09-16 18:13:32 +02:00
block_test.go Add context argument to LabelQuerier.LabelValues (#12665) 2023-09-14 16:02:04 +02:00
blockwriter.go Merge 'main' into sparsehistogram 2022-10-05 22:14:49 +02:00
blockwriter_test.go Add a chunk size limit in bytes (#12054) 2023-08-24 15:21:17 +02:00
CHANGELOG.md
compact.go Fix int32 overflow issues (#12978) 2023-10-16 16:23:26 +02:00
compact_test.go Add context argument to IndexReader.Postings (#12667) 2023-09-13 17:45:06 +02:00
db.go Fix int32 overflow issues (#12978) 2023-10-16 16:23:26 +02:00
db_test.go Additionally wrap WBL replay error (#12406) 2023-10-13 14:21:35 +02:00
example_test.go Add context argument to Querier.Select (#12660) 2023-09-12 12:37:38 +02:00
exemplar.go Update exp package (#12650) 2023-09-21 22:53:51 +02:00
exemplar_test.go tsdb: in tests use labels.FromStrings 2022-09-09 13:34:49 +02:00
head.go tsdb: create isolation transaction slice on demand 2023-10-21 13:45:47 +00:00
head_append.go Refactor solution to not repeat code 2023-09-20 15:54:00 +02:00
head_bench_test.go Pass ref to SeriesLifecycleCallback.PostDeletion (#12626) 2023-08-03 10:56:27 +02:00
head_read.go tsdb: shrink txRing with smaller integers 2023-10-21 12:44:34 +00:00
head_read_test.go Use a linked list for memSeries.headChunk (#11818) 2023-07-31 11:10:24 +02:00
head_test.go tsdb: shrink txRing with smaller integers 2023-10-21 12:44:34 +00:00
head_wal.go Additionally wrap WBL replay error (#12406) 2023-10-13 14:21:35 +02:00
isolation.go tsdb: create isolation transaction slice on demand 2023-10-21 13:45:47 +00:00
isolation_test.go tsdb: turn off transaction isolation for head compaction (#11317) 2022-09-27 19:31:23 +05:30
mocks_test.go
ooo_head.go Name float values as "floats", not as "values" 2023-04-13 19:25:24 +02:00
ooo_head_read.go Very minor refactor of the integer overflow fix 2023-10-19 13:17:46 +08:00
ooo_head_read_test.go Add context argument to LabelQuerier.LabelValues (#12665) 2023-09-14 16:02:04 +02:00
ooo_head_test.go Name float values as "floats", not as "values" 2023-04-13 19:25:24 +02:00
querier.go Update exp package (#12650) 2023-09-21 22:53:51 +02:00
querier_bench_test.go tsdb: Tighten up sub-benchmark scope in BenchmarkQuerier (#12718) 2023-10-02 12:16:37 +02:00
querier_test.go Fix exit condition of TestQuerierIndexQueriesRace 2023-09-20 20:22:26 +01:00
README.md Fixed broken link in tsdb README.md 2022-10-07 16:20:20 +00:00
repair.go refactor: move from io/ioutil to io and os packages (#10528) 2022-04-27 11:24:36 +02:00
repair_test.go Add context argument to IndexReader.Postings (#12667) 2023-09-13 17:45:06 +02:00
tsdbblockutil.go Support FloatHistogram in TSDB (#11522) 2022-12-28 14:25:07 +05:30
wal.go Add Zstandard compression option for wlog (#11666) 2023-07-11 14:57:57 +02:00
wal_test.go Add Zstandard compression option for wlog (#11666) 2023-07-11 14:57:57 +02: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: