prometheus/tsdb
Arve Knudsen 572f247b4d
tsdb: add auto-cleanup to newTestHead and remove redundant cleanup calls (#17890)
Add automatic cleanup to newTestHeadWithOptions so that heads created
with newTestHead are automatically closed when the test ends. This
simplifies test code by removing the need for manual cleanup in most
cases.

Changes:
- Add t.Cleanup in newTestHeadWithOptions immediately after creating
  the head, using _ = h.Close() to handle double-close gracefully
- Remove redundant t.Cleanup, defer, and explicit Close calls from
  tests that use newTestHead
- Add cleanup for heads created with NewHead directly in restart
  patterns (e.g., restartHeadAndVerifySeriesCounts, startHead)

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2026-01-19 12:57:05 +01:00
..
agent Refactor various tsdb sub-packages (#17847) 2026-01-13 13:38:58 +00:00
chunkenc Update tsdb/chunkenc/chunk.go 2026-01-14 16:41:03 +01:00
chunks feat(tsdb): new AppenderV2 and AtST interface for chunks 2026-01-14 13:15:09 +01:00
docs docs: Fix chunk format documentation for varint encoding 2025-08-15 10:56:21 +02:00
encoding Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
errors Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
fileutil Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
goversion Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
index Refactor various tsdb sub-packages (#17847) 2026-01-13 13:38:58 +00:00
record Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
testdata tsdb: Delete blocks atomically; Remove tmp blocks on start; Added test. (#7772) 2020-08-11 06:56:08 +01:00
tombstones Refactor various tsdb sub-packages (#17847) 2026-01-13 13:38:58 +00:00
tsdbutil Refactor various tsdb sub-packages (#17847) 2026-01-13 13:38:58 +00:00
wlog Refactor various tsdb sub-packages (#17847) 2026-01-13 13:38:58 +00:00
.gitignore Moving tsdb into its own subdirectory 2019-08-13 13:58:49 +05:30
block.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
block_test.go auto update head sample use in tests 2026-01-14 13:15:13 +01:00
blockwriter.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
blockwriter_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
CHANGELOG.md Rename default branch to main 2021-02-22 20:28:02 +01:00
compact.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
compact_test.go tsdb: add auto-cleanup to newTestHead and remove redundant cleanup calls (#17890) 2026-01-19 12:57:05 +01:00
db.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
db_append_v2_test.go auto update head sample use in tests 2026-01-14 13:15:13 +01:00
db_test.go auto update head sample use in tests 2026-01-14 13:15:13 +01:00
example_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
exemplar.go tsdb: fix rare case of OOO exemplar insertion pointing to the exemplar being deleted (#17865) 2026-01-15 08:49:37 +01:00
exemplar_test.go tsdb: fix rare case of OOO exemplar insertion pointing to the exemplar being deleted (#17865) 2026-01-15 08:49:37 +01:00
head.go tsdb/head.go: add start timestamp to sample type used in tests 2026-01-14 13:15:12 +01:00
head_append.go tsdb: fix memory leaks in buffer pools (#17879) 2026-01-19 11:14:31 +00:00
head_append_v2.go feat(storage)[PART4b]: add AppenderV2 to the rest of storage.Storage impl 2026-01-14 13:54:27 +00:00
head_append_v2_test.go tsdb: add auto-cleanup to newTestHead and remove redundant cleanup calls (#17890) 2026-01-19 12:57:05 +01:00
head_bench_test.go tsdb: add auto-cleanup to newTestHead and remove redundant cleanup calls (#17890) 2026-01-19 12:57:05 +01:00
head_dedupelabels.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
head_other.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
head_read.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
head_read_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
head_test.go tsdb: add auto-cleanup to newTestHead and remove redundant cleanup calls (#17890) 2026-01-19 12:57:05 +01:00
head_wal.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
isolation.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
isolation_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
mocks_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
ooo_head.go update ooo_head.go but only with TODOs 2026-01-14 13:15:15 +01:00
ooo_head_read.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
ooo_head_read_test.go tsdb: add auto-cleanup to newTestHead and remove redundant cleanup calls (#17890) 2026-01-19 12:57:05 +01:00
ooo_head_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
ooo_isolation.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
ooo_isolation_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
querier.go feat(tsdb): new AppenderV2 and AtST interface for chunks 2026-01-14 13:15:09 +01:00
querier_bench_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
querier_test.go update remaining tests 2026-01-14 13:15:16 +01:00
README.md Fixed broken link in tsdb README.md 2022-10-07 16:20:20 +00:00
repair.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
repair_test.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
testutil.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +01:00
tsdbblockutil.go Remove copyright date from headers (#17785) 2026-01-05 13:46:21 +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: