mirror of https://github.com/prometheus/prometheus
main
cedwards/nhcb-wal-wbl
dependabot/npm_and_yarn/web/ui/react-app/bootstrap-5.0.0
keep-multiple-separators
labels-utf8-fix
no-ignore-identifying-attributes
release-3.0
alexg/settable-user-agent
dependabot/npm_and_yarn/web/ui/tanstack/react-query-5.60.6
dependabot/npm_and_yarn/web/ui/codemirror/language-6.10.3
dependabot/npm_and_yarn/web/ui/reduxjs/toolkit-2.3.0
release-2.53
release-2.55
otel-3
bwplotka/2_18_cmp
fionaliao/3.0-migration-guide-fixes
bwplotka/2_0_cmp
alexg/fix-fallback-scrape
cedwards/ooo-native-histograms-promql-tests
dependabot/npm_and_yarn/web/ui/react-router-dom-6.27.0
dependabot/npm_and_yarn/web/ui/uiw/react-codemirror-4.23.6
dependabot/npm_and_yarn/web/ui/typescript-eslint/eslint-plugin-8.12.2
dependabot/npm_and_yarn/web/ui/lezer/common-1.2.3
dependabot/npm_and_yarn/web/ui/uplot-1.6.31
dependabot/npm_and_yarn/web/ui/testing-library/jest-dom-6.6.3
dependabot/npm_and_yarn/web/ui/types/jest-29.5.14
dependabot/npm_and_yarn/web/ui/eslint/compat-1.2.2
dependabot/npm_and_yarn/web/ui/eslint/js-9.14.0
dependabot/npm_and_yarn/web/ui/vitejs/plugin-react-4.3.3
dependabot/npm_and_yarn/web/ui/rollup/plugin-node-resolve-15.3.0
dependabot/npm_and_yarn/web/ui/mantine/code-highlight-7.13.4
dependabot/npm_and_yarn/web/ui/sanitize-html-2.13.1
dependabot/npm_and_yarn/web/ui/globals-15.11.0
dependabot/npm_and_yarn/web/ui/types/react-18.3.12
dependabot/npm_and_yarn/web/ui/types/lodash-4.17.13
dependabot/npm_and_yarn/web/ui/eslint-plugin-react-hooks-5.1.0-rc.0
ooo-nh-fix
jvp/refactor-append-to-have-hints
bwplotka/nhcb-wal-wbl
jvp/refactor-append-to-have-hints-as-value
jvp/refactor-append-to-have-hints-and-single-appendcall
redesign-parser-interface
imprct
textparsebench-manik1
manik2
rel-2.55-backport-14947
bisect-series-base
callum-rw-split-intern
catch-sighup-early
njpm/fix-mockIndex
trim-3.0changelog-for-2.55
njpm/tsdb-utf8-mixed-querying
callum-vt20
julius/y-axis-zero
superq/help_link
jvp/enable-otlp-endpoint-by-default
krajo/testing-pr14831
revert-14809-patch-mem-issue
cut-2.54.2
release-2.54
arthursens/appendct-prwv2
arthursens/ct-in-wal
callum-rw-intern-v3
callum-rw-intern-unique
pull/14654/head
release-2.54+dedupelabels
superq/update_storage_docs
manik1
revert-14513-fix-histogram-overlap-compaction-bug
v2.54.0+dedupelabels
jvp/metadata-poc
mantine-ui-uplot
superq/betteralign_promql
callum-live-segment-test
remote-write-2.0
rw20-nhcb
nhcb
njpm/rw2-main-sync-conflicts
rw20-helpers-gen
rw20-gen
release-2.45
callum-filter-benchmark
jvp/range-duration-with-open-intervals
callum-simplify-ts-filtering
update-2.53-to-correct-place
beorn7/lookback
release-2.52
faster-exemplars
alexg-remove-HEAD-1
rw20-config
alexg-content-negotiation-dont-advertise
release-2.51
revert-13498-alexg-content-negotiation-2
alexg-content-negotiation-2
release-2.51+dedupelabels
krajo/engine-immutable-histograms
release-2.50
feature/new-prom-ui
owilliams/utf8-03-reads
njpm/rw2-sync-main-conflicts
superq/v2
alexg-content-negotiation
release-v2.50
owilliams/utf8-02-mimir
owilliams/utf8
release-2.49
csmarchbanks/native-histogram-compact-format
csmarchbanks/native-histogram-json-format
csmarchbanks/native-histogram-verbose-format
njpm/metadata-remote-write-wiring-2-update
prw-shard-test
arct2
release-2.48
vtproto-test
bwplotka/prw-initial
test-rw-compression
callum-rw-min-format
callum-rw-e2e-dashboard-1
release-2.47
callum-opportunistic-labels-cleanup
feature/shutdownscrape
bwplotka/config-watch
release-2.37
release-2.46
remote-write-checkpoint
native-histogram-charts
prom-common-update-0.43
release-2.44
release-2.43+stringlabels
release-2.43
callum-track-series-segment
callum-remote-proto-2
callum-watcher-poll-backoff
release-2.42
histogram-charts
csmarchbanks/optmize-arrow-responses
csmarchbanks/arrow-responses
csmarchbanks/arrow-native-histograms
release-2.41
release-2.40
release-2.39
add-body-size-limit-global
pre-ooo
release-2.38
remove-circleci-windows-tests
nexucis/sd-optimisation
revert-10878-jvp/replay-wait-for-idle-dont-always-sleep
histogram-json-experiment
release-2.36
nexucis/sofisticat-query
wip-play-prombench
release-2.35
release-2.34
release-2.33
rmremote_storage
release-2.32
release-2.31
release-2.30
beorn7/polymorphism
superq/fieldalignment
mem/fix_8551
release-2.30-merge
release-2.29
richih/remove_indirect_deps
expand
release-2.28
proposalprocess
release-docs-formatting-fix
merge-main
release-2.26
release-2.27
bp/append-docs
release-2.25
revert-8489-append
superq/drop_vendor
post-processing
exemplar-storage-separate-mvp
release-2.24
multi-err-cause
partial-response
lazy-unsymbolize
release-2.23
release-2.22
for-cortex-1-4-1
lbl-optimize
write-req-content-size
release-2.21
fix-2.21-latency
promselect
fix-2.21-iter-latency
segfault-chunk-iter
release-2.20
scrape-bytes-scraped
release-2.19
tsdb-import
tsdb-import-csv
fix-sym-7373-3
fix-sym-7373-2
fix-sym-7373
release-2.18
release-2.17
superq/test
series-hint
add-chunkiterator-interface
rule-page-followups
shutdown-select-bug
revert-6907-prom/rules_race_condition
release-2.16
revert-6605-master
join
nav-settings
release-2.15
f17-test
react-travis-test-branch
release-2.14
release-2.13
release-2.12
release-2.11
rr
remove-alertmanager
rr-proto
integrate-react
release-2.10
allow-swappable-engine
release-2.9
fix/binop-output-labels
release-2.8
release-2.7
resharding
release-2.6
release-2.5
release-2.4
release-2.3
release-2.2
richih/examples
release-2.1
release-2.0
release-1.8.2
release-1.8
release-1.7
release-1.6
release-1.5
release-1.4
release-1.3
release-1.2
release-1.1
release-0.20
release-0.18
release-0.16
v0.300.0
v3.0.0
v0.300.0-rc.1
v3.0.0-rc.1
v0.55.1
v2.55.1
v0.53.3
v2.53.3
v0.300.0-beta.1
v3.0.0-rc.0
v0.300.0-rc.0
v0.55.0
v2.55.0
v2.55.0-rc.1
v2.55.0-rc.0
v0.300.0-beta.0
v3.0.0-beta.0
v0.54.1
v2.54.1
v0.53.2
v2.53.2
v2.54.0+dedupelabels
v0.54.0
v2.54.0
v2.54.0-rc.1
v2.54.0-rc.0+dedupelabels
v0.54.0-rc.0
v2.54.0-rc.0
v0.53.1
v2.53.1
v0.45.6
v2.45.6
v0.53.0
v2.53.0
v0.53.0-rc.1
v2.53.0-rc.1
v0.53.0-rc.0
v2.53.0-rc.0
v0.52.1
v0.52.0
v2.52.0
v0.52.0-rc.1
v2.52.0-rc.1
v0.45.5
v2.45.5
v0.52.0-rc.0
v2.52.0-rc.0
v0.51.2
v2.51.2
v0.51.1
v2.51.1
v2.51.0+dedupelabels
v0.51.0
v2.51.0
v0.45.4
v2.45.4
v2.51.0-rc.0+dedupelabels
v2.51.0-rc.0
v0.50.1
v2.50.1
v0.50.0
v2.50.0
v0.50.0-rc.1
v2.50.0-rc.1
v0.50.0-rc.0
v2.50.0-rc.0
v0.45.3
v2.45.3
v0.49.1
v0.49.0
v2.49.1
v2.49.0
v0.49.0-rc.2
v2.49.0-rc.2
v0.49.0-rc.1
v2.49.0-rc.1
v0.45.2
v2.45.2
v0.49.0-rc.0
v2.49.0-rc.0
v0.48.1
v2.48.1
v0.48.0
v2.48.0
v0.48.0-rc.2
v2.48.0-rc.2
v0.48.0-rc.1
v2.48.0-rc.1
v0.48.0-rc.0
v2.48.0-rc.0
v0.47.2
v2.47.2
v0.47.1
v2.47.1
v0.45.1
v2.45.1
v0.47.0
v2.47.0
v0.47.0-rc.0
v2.47.0-rc.0
v0.37.9
v2.37.9
v0.46.0
v2.46.0
v0.46.0-rc.0
v2.46.0-rc.0
v0.45.0
v2.45.0
v0.45.0-rc.1
v2.45.0-rc.1
v0.45.0-rc.0
v2.45.0-rc.0
v0.44.0
v2.44.0
v0.44.0-rc.1
v0.44.0-rc.2
v2.44.0-rc.2
v0.37.8
v2.37.8
v0.43.1
v2.43.1
v2.43.1+stringlabels
v2.44.0-rc.1
v0.37.7
v2.37.7
v0.44.0-rc.0
v2.44.0-rc.0
v0.43.0
v2.43.0
v2.43.0+stringlabels
v2.43.0-rc.1+stringlabels
v0.43.0-rc.1
v2.43.0-rc.1
v0.43.0-rc.0
v2.43.0-rc.0
v0.37.6
v2.37.6
v0.42.0
v2.42.0
v2.42.0-rc.0
v0.41.0
v2.41.0
v0.41.0-rc.0
v2.41.0-rc.0
v0.40.7
v2.40.7
v0.40.6
v2.40.6
v0.37.5
v2.37.5
v0.40.5
v2.40.5
v2.40.4
v0.40.4
v2.37.4
v0.37.4
v0.40.3
v2.40.3
v0.37.3
v2.37.3
v0.40.2
v2.40.2
v0.40.1
v2.40.1
v0.39.2
v2.39.2
v0.40.0
v2.40.0
v0.37.2
v2.37.2
v0.40.0-rc.0
v2.40.0-rc.0
v0.39.1
v2.39.1
v0.39.0
v2.39.0
v2.39.0-rc.0
v0.37.1
v2.37.1
v0.38.0
v2.38.0
v0.38.0-rc.0
v2.38.0-rc.0
v0.37.0
v2.37.0
v0.37.0-rc.1
v2.37.0-rc.1
v0.37.0-rc.0
v2.37.0-rc.0
v0.36.2
v2.36.2
v0.36.1
v2.36.1
v0.36.0
v2.36.0
v0.36.0-rc0
v2.36.0-rc0
v0.35.0
v2.35.0
v1.99.0
v1.99.0-retract
v2.35.0-retract
v0.35.0-rc1
v2.35.0-rc1
v2.35.0-rc0
v2.34.0
v2.34.0-rc.2
v2.34.0-rc.1
v2.33.5
v2.34.0-rc.0
v2.33.4
v2.33.3
v2.33.2
v2.33.1
v2.33.0
v2.33.0-rc.1
v2.33.0-rc.0
v2.32.1
v2.32.0
v2.31.2
v2.30.4
v2.32.0-rc.1
v2.32.0-rc.0
v2.32.0-beta.0
v2.31.1
v2.31.0
v2.31.0-rc.1
v2.31.0-rc.0
v2.30.3
v2.30.2
v2.30.1
v2.30.0
v2.30.0-rc.0
v2.29.2
v2.29.1
v2.29.0
v2.29.0-rc.2
v2.29.0-rc.1
v2.29.0-rc.0
v2.28.1
v2.28.0
v2.28.0-rc.0
v2.27.1
v2.26.1
v2.27.0
v2.27.0-rc.0
v2.26.0
v2.26.0-rc.0
v2.25.2
v2.25.1
v2.25.0
v2.25.0-rc.0
v2.24.1
v2.24.0
v2.24.0-rc.0
v2.23.0
v2.23.0-rc.0
v2.22.2
v2.22.1
v2.22.0
v2.22.0-rc.0
v2.21.0
v2.21.0-rc.1
v2.21.0-rc.0
v2.20.1
v2.19.3
v2.20.0
v2.20.0-rc.1
v2.20.0-rc.0
v2.19.2
v2.19.1
v2.19.0
v2.18.2
v2.19.0-rc.0
v2.18.1
v2.18.0
v2.18.0-rc.1
v2.18.0-rc.0
v2.17.2
v2.17.1
v2.17.0
v2.17.0-rc.4
v2.17.0-rc.3
v2.17.0-rc.2
v2.17.0-rc.1
v2.17.0-rc.0
v2.16.0
v2.16.0-rc.1
v2.16.0-rc.0
v2.15.2
v2.15.1
v2.15.0
v2.15.0-rc.0
v2.14.0
v2.14.0-rc.0
v2.13.1
v2.13.0
v2.12.0
v2.12.0-rc.0
v2.11.2
v2.11.1
v2.11.0
v2.11.0-rc.0
v2.10.0
v2.10.0-rc.0
v2.9.2
v2.9.1
v2.9.0
v2.9.0-rc.0
v2.8.1
v2.8.0
v2.8.0-rc.0
v2.7.2
v2.7.1
v2.7.0
v2.7.0-rc.2
v2.7.0-rc.1
v2.7.0-rc.0
v2.6.1
v2.6.0
v2.6.0-rc.1
v2.6.0-rc.0
v2.5.0
v2.5.0-rc.2
v2.5.0-rc.1
v2.5.0-rc.0
v2.4.3
v2.4.2
v2.4.1
v2.4.0
v2.4.0-rc.0
v2.3.2
v2.3.1
v2.2.0-rc.0
v2.1.0
v2.0.0
v2.0.0-rc.3
v1.8.2
v1.8.1
v1.8.0
v2.0.0-rc.0
v1.7.2
v1.7.1
v1.7.0
v1.6.1
v1.6.0
v1.5.2
v1.5.1
v1.5.0
v1.3.1
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.0.1
0.1.0
0.10.0
0.11.0
0.11.1
0.12.0
0.13.0
0.13.0rc2
0.13.1
0.13.2
0.13.3
0.13.4
0.14.0
0.14.0rc1
0.14.0rc2
0.14.0rc3
0.15.0
0.15.0rc1
0.15.0rc2
0.15.0rc3
0.15.1
0.16.0
0.16.0rc1
0.16.0rc2
0.16.1
0.16.2
0.17.0
0.17.0rc1
0.17.0rc2
0.18.0
0.18.0rc1
0.19.0
0.19.1
0.19.2
0.19.3
0.2.0
0.2.1
0.20.0
0.3.0
0.4.0
0.5.0
0.6.0
0.7.0
0.8.0
0.9.0
0.9.0rc1
0.9.0rc2
0.9.0rc3
0.9.0rc4
0.9.0rc5
all-tests-pass
checkout
dev
discovery-handle-discoverer-updates
v1.0.0
v1.0.0-rc.0
v1.0.2
v1.1.0
v1.1.1
v1.1.2
v1.1.3
v1.3.0
v1.3.0-beta.0
v1.4.0
v1.4.1
v1.5.3
v1.6.2
v1.6.3
v2.0.0-alpha.0
v2.0.0-alpha.1
v2.0.0-alpha.2
v2.0.0-alpha.3
v2.0.0-beta.0
v2.0.0-beta.1
v2.0.0-beta.2
v2.0.0-beta.3
v2.0.0-beta.4
v2.0.0-beta.5
v2.0.0-rc.1
v2.0.0-rc.2
v2.13.0-rc.0
v2.2.0
v2.2.0-rc.1
v2.2.1
v2.3.0
v3.0.0-beta.1
${ noResults }
19 Commits (f13bc1a5c964504dc2953c6dc8420a70874e0d2e)
Author | SHA1 | Message | Date |
---|---|---|---|
Oleg Zaytsev |
61daa30bb1
|
Pass ref to SeriesLifecycleCallback.PostDeletion (#12626)
When a particular SeriesLifecycleCallback tries to optimize and run closer to the Head, keeping track of the HeadSeriesRef instead of the labelsets, it's impossible to handle the PostDeletion callback properly as there's no way to know which series refs were deleted from the head. This changes the callback to provide the series refs alongside the labelsets, so the implementation can choose what to do. Signed-off-by: Oleg Zaytsev <mail@olegzaytsev.com> |
1 year ago |
Jesus Vazquez |
c1b669bf9b
|
Add out-of-order sample support to the TSDB (#11075)
* Introduce out-of-order TSDB support This implementation is based on this design doc: https://docs.google.com/document/d/1Kppm7qL9C-BJB1j6yb6-9ObG3AbdZnFUBYPNNWwDBYM/edit?usp=sharing This commit adds support to accept out-of-order ("OOO") sample into the TSDB up to a configurable time allowance. If OOO is enabled, overlapping querying are automatically enabled. Most of the additions have been borrowed from https://github.com/grafana/mimir-prometheus/ Here is the list ist of the original commits cherry picked from mimir-prometheus into this branch: - |
2 years ago |
Eng Zer Jun |
3e67654d37
|
refactor: use `T.TempDir()` and `B.TempDir` to create temporary directory
The directory created by `T.TempDir()` and `B.TempDir()` is automatically removed when the test and all its subtests complete. Reference: https://pkg.go.dev/testing#T.TempDir Reference: https://pkg.go.dev/testing#B.TempDir Signed-off-by: Eng Zer Jun <engzerjun@gmail.com> |
3 years ago |
beorn7 | c954cd9d1d |
Move packages out of deprecated pkg directory
This creates a new `model` directory and moves all data-model related packages over there: exemplar labels relabel rulefmt textparse timestamp value All the others are more or less utilities and have been moved to `util`: gate logging modetimevfs pool runtime Signed-off-by: beorn7 <beorn@grafana.com> |
3 years ago |
Levi Harrison |
7bc11dcb06
|
React UI: Add Starting Screen (#8662)
* Added walreplay API endpoint Signed-off-by: Levi Harrison <git@leviharrison.dev> * Added starting page to react-ui Signed-off-by: Levi Harrison <git@leviharrison.dev> * Documented the new endpoint Signed-off-by: Levi Harrison <git@leviharrison.dev> * Fixed typos Signed-off-by: Levi Harrison <git@leviharrison.dev> Co-authored-by: Julius Volz <julius.volz@gmail.com> * Removed logo Signed-off-by: Levi Harrison <git@leviharrison.dev> * Changed isResponding to isUnexpected Signed-off-by: Levi Harrison <git@leviharrison.dev> * Changed width of progress bar Signed-off-by: Levi Harrison <git@leviharrison.dev> * Changed width of progress bar Signed-off-by: Levi Harrison <git@leviharrison.dev> * Added DB stats object Signed-off-by: Levi Harrison <git@leviharrison.dev> * Updated starting page to work with new fields Signed-off-by: Levi Harrison <git@leviharrison.dev> * Passing nil Signed-off-by: Levi Harrison <git@leviharrison.dev> * Passing nil (pt. 2) Signed-off-by: Levi Harrison <git@leviharrison.dev> * Passing nil (pt. 3) Signed-off-by: Levi Harrison <git@leviharrison.dev> * Passing nil (and also implementing a method this time) (pt. 4) Signed-off-by: Levi Harrison <git@leviharrison.dev> * Passing nil (and also implementing a method this time) (pt. 5) Signed-off-by: Levi Harrison <git@leviharrison.dev> * Changed const to let Signed-off-by: Levi Harrison <git@leviharrison.dev> * Passing nil (pt. 6) Signed-off-by: Levi Harrison <git@leviharrison.dev> * Remove SetStats method Signed-off-by: Levi Harrison <git@leviharrison.dev> * Added comma Signed-off-by: Levi Harrison <git@leviharrison.dev> * Changed api Signed-off-by: Levi Harrison <git@leviharrison.dev> * Changed to triple equals Signed-off-by: Levi Harrison <git@leviharrison.dev> * Fixed data response types Signed-off-by: Levi Harrison <git@leviharrison.dev> * Don't return pointer Signed-off-by: Levi Harrison <git@leviharrison.dev> * Changed version Signed-off-by: Levi Harrison <git@leviharrison.dev> * Fixed interface issue Signed-off-by: Levi Harrison <git@leviharrison.dev> * Fixed pointer Signed-off-by: Levi Harrison <git@leviharrison.dev> * Fixed copying lock value error Signed-off-by: Levi Harrison <git@leviharrison.dev> Co-authored-by: Julius Volz <julius.volz@gmail.com> |
4 years ago |
Marco Pracucci |
6248e685b2
|
TSDB: optimize series creation on PreCreation() failure (#8620)
Signed-off-by: Marco Pracucci <marco@pracucci.com> |
4 years ago |
Dustin Hooten |
b9f0baf6ff
|
Combine NewHead() args into a HeadOptions struct (#8452)
* Combine NewHead() args into a HeadOptions struct Signed-off-by: Dustin Hooten <dustinhooten@gmail.com> * remove overrides params Signed-off-by: Dustin Hooten <dustinhooten@gmail.com> * address pr feedback Signed-off-by: Dustin Hooten <dustinhooten@gmail.com> |
4 years ago |
Marco Pracucci |
db19e05d93
|
Add option to customise head chunks write buffer size (#8201)
* Add option to customise head chunks write buffer size Signed-off-by: Marco Pracucci <marco@pracucci.com> * Fixed tests Signed-off-by: Marco Pracucci <marco@pracucci.com> |
4 years ago |
Julien Pivotto |
6c56a1faaa
|
Testify: move to require (#8122)
* Testify: move to require Moving testify to require to fail tests early in case of errors. Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu> * More moves Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu> |
4 years ago |
Julien Pivotto |
4e5b1722b3
|
Move away from testutil, refactor imports (#8087)
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu> |
4 years ago |
Javier Palomo Almena |
b58a613443
|
Replace sync/atomic with uber-go/atomic (#7683)
* storage: Replace usage of sync/atomic with uber-go/atomic
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* tsdb: Replace usage of sync/atomic with uber-go/atomic
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* web: Replace usage of sync/atomic with uber-go/atomic
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* notifier: Replace usage of sync/atomic with uber-go/atomic
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* cmd: Replace usage of sync/atomic with uber-go/atomic
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* scripts: Verify that we are not using restricted packages
It checks that we are not directly importing 'sync/atomic'.
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* Reorganise imports in blocks
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* notifier/test: Apply PR suggestions
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* storage/remote: avoid storing references on newEntry
Signed-off-by: Javier Palomo <javier.palomo.almena@gmail.com>
* Revert "scripts: Verify that we are not using restricted packages"
This reverts commit
|
4 years ago |
Ganesh Vernekar |
1c99adb9fd
|
Callbacks for lifecycle of series in TSDB (#7159)
* Callbacks for lifecycle of series in TSDB Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in> * Add more comments Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in> |
5 years ago |
Ganesh Vernekar |
d4b9fe801f
|
M-map full chunks of Head from disk (#6679)
When appending to the head and a chunk is full it is flushed to the disk and m-mapped (memory mapped) to free up memory Prom startup now happens in these stages - Iterate the m-maped chunks from disk and keep a map of series reference to its slice of mmapped chunks. - Iterate the WAL as usual. Whenever we create a new series, look for it's mmapped chunks in the map created before and add it to that series. If a head chunk is corrupted the currpted one and all chunks after that are deleted and the data after the corruption is recovered from the existing WAL which means that a corruption in m-mapped files results in NO data loss. [Mmaped chunks format](https://github.com/prometheus/prometheus/blob/master/tsdb/docs/format/head_chunks.md) - main difference is that the chunk for mmaping now also includes series reference because there is no index for mapping series to chunks. [The block chunks](https://github.com/prometheus/prometheus/blob/master/tsdb/docs/format/chunks.md) are accessed from the index which includes the offsets for the chunks in the chunks file - example - chunks of series ID have offsets 200, 500 etc in the chunk files. In case of mmaped chunks, the offsets are stored in memory and accessed from that. During WAL replay, these offsets are restored by iterating all m-mapped chunks as stated above by matching the series id present in the chunk header and offset of that chunk in that file. **Prombench results** _WAL Replay_ 1h Wal reply time 30% less wal reply time - 4m31 vs 3m36 2h Wal reply time 20% less wal reply time - 8m16 vs 7m _Memory During WAL Replay_ High Churn: 10-15% less RAM - 32gb vs 28gb 20% less RAM after compaction 34gb vs 27gb No Churn: 20-30% less RAM - 23gb vs 18gb 40% less RAM after compaction 32.5gb vs 20gb Screenshots are in [this comment](https://github.com/prometheus/prometheus/pull/6679#issuecomment-621678932) Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in> |
5 years ago |
Thor |
17d8c49919
|
made stripe size configurable (#6644)
Signed-off-by: Thor <thansen@digitalocean.com> |
5 years ago |
Brian Brazil | aff9f7a9e8 |
Extend PostingsForMatchers benchmark to cover Blocks too.
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io> |
5 years ago |
Tom Wilkie | de0a772b8e |
Port tsdb to use pkg/labels. (#6326)
* Port tsdb to use pkg/labels. Signed-off-by: Tom Wilkie <tom.wilkie@gmail.com> * Get tests passing. Signed-off-by: Tom Wilkie <tom.wilkie@gmail.com> * Remove useless cast. Signed-off-by: Tom Wilkie <tom.wilkie@gmail.com> * Appease linters. Signed-off-by: Tom Wilkie <tom.wilkie@gmail.com> * Fix review comments Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in> |
5 years ago |
Bartek Plotka | f0863a604e |
Removed extra tsdb/testutil after merge.
Signed-off-by: Bartek Plotka <bwplotka@gmail.com> |
5 years ago |
Ganesh Vernekar |
5ecef3542d
|
Cleanup after merging tsdb into prometheus
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in> |
5 years ago |
Ganesh Vernekar |
7cf09b0395
|
Moving tsdb into its own subdirectory
Signed-off-by: Ganesh Vernekar <cs15btech11018@iith.ac.in> |
5 years ago |