prometheus/tsdb
Oleg Zaytsev fe90dcccff
Revert ListPostings change (#12955)
Reverts change from https://github.com/prometheus/prometheus/pull/12906

The benchmarks show that it's slower when intersecting, which is a
common usage for ListPostings (when intersecting matchers from Head)

(old is before #12906, new is #12906):

                           │     old     │                 new                 │
                           │   sec/op    │   sec/op     vs base                │
Intersect/LongPostings1-16   20.54µ ± 1%   21.11µ ± 1%   +2.76% (p=0.000 n=20)
Intersect/LongPostings2-16   51.03m ± 1%   52.40m ± 2%   +2.69% (p=0.000 n=20)
Intersect/ManyPostings-16    194.2m ± 3%   332.1m ± 1%  +71.00% (p=0.000 n=20)
geomean                      5.882m        7.161m       +21.74%

Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com>
2023-10-09 17:25:18 +02:00
..
agent Add context argument to Querier.Select (#12660) 2023-09-12 12:37:38 +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 Revert ListPostings change (#12955) 2023-10-09 17:25:18 +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_test.go Add context argument to LabelQuerier.LabelValues (#12665) 2023-09-14 16:02:04 +02:00
block.go Add context argument to tsdb.PostingsForMatchers 2023-09-16 18:13:32 +02:00
blockwriter_test.go Add a chunk size limit in bytes (#12054) 2023-08-24 15:21:17 +02:00
blockwriter.go Merge 'main' into sparsehistogram 2022-10-05 22:14:49 +02:00
CHANGELOG.md
compact_test.go Add context argument to IndexReader.Postings (#12667) 2023-09-13 17:45:06 +02:00
compact.go Update exp package (#12650) 2023-09-21 22:53:51 +02:00
db_test.go Add warnings (and annotations) to PromQL query results (#12152) 2023-09-14 18:57:31 +02:00
db.go Update exp package (#12650) 2023-09-21 22:53:51 +02:00
example_test.go Add context argument to Querier.Select (#12660) 2023-09-12 12:37:38 +02:00
exemplar_test.go tsdb: in tests use labels.FromStrings 2022-09-09 13:34:49 +02:00
exemplar.go Update exp package (#12650) 2023-09-21 22:53:51 +02: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_test.go Use a linked list for memSeries.headChunk (#11818) 2023-07-31 11:10:24 +02:00
head_read.go Update exp package (#12650) 2023-09-21 22:53:51 +02:00
head_test.go Additional test case for ValidateHistogram 2023-09-27 09:34:43 +03:00
head_wal.go Do WBL mmap marker replay concurrently (#12801) 2023-09-12 21:31:10 +02:00
head.go tsdb: register metrics after Head is initialized (#12876) 2023-09-25 21:57:08 +01:00
isolation_test.go tsdb: turn off transaction isolation for head compaction (#11317) 2022-09-27 19:31:23 +05:30
isolation.go ci(lint): enable predeclared linter 2023-05-21 07:33:54 +00:00
mocks_test.go
ooo_head_read_test.go Add context argument to LabelQuerier.LabelValues (#12665) 2023-09-14 16:02:04 +02:00
ooo_head_read.go Update exp package (#12650) 2023-09-21 22:53:51 +02:00
ooo_head_test.go Name float values as "floats", not as "values" 2023-04-13 19:25:24 +02:00
ooo_head.go Name float values as "floats", not as "values" 2023-04-13 19:25:24 +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
querier.go Update exp package (#12650) 2023-09-21 22:53:51 +02:00
README.md Fixed broken link in tsdb README.md 2022-10-07 16:20:20 +00:00
repair_test.go Add context argument to IndexReader.Postings (#12667) 2023-09-13 17:45:06 +02:00
repair.go refactor: move from io/ioutil to io and os packages (#10528) 2022-04-27 11:24:36 +02:00
tsdbblockutil.go Support FloatHistogram in TSDB (#11522) 2022-12-28 14:25:07 +05:30
wal_test.go Add Zstandard compression option for wlog (#11666) 2023-07-11 14:57:57 +02:00
wal.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: