Matthieu MOREL
dd8871379a
remplace errors.Errorf by fmt.Errorf
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-14 13:04:31 +00:00
Bryan Boreham
1bfb3ed062
Labels: reduce allocations when creating from TSDB WAL ( #13044 )
...
* Labels: reduce allocations when creating from TSDB
When reading the WAL, by passing references into the buffer we can avoid
copying strings under `-tags stringlabels`.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-11-14 11:36:35 +00:00
Julien Pivotto
b718dca70b
Merge pull request #13108 from mmorel-35/patch-2
...
tsdb/chunkenc: use Go standard errors package
2023-11-14 00:54:35 +01:00
Julien Pivotto
3173feb5ef
Merge pull request #13107 from mmorel-35/patch-1
...
tsdb/agent: use Go standard errors package
2023-11-14 00:54:11 +01:00
Julien Pivotto
90ed7b08dc
Merge pull request #13124 from mmorel-35/patch-5
...
tsdb/index: use Go standard errors package
2023-11-14 00:53:49 +01:00
Julien Pivotto
afc57eb306
Merge pull request #13109 from mmorel-35/patch-3
...
tsdb/chunks: use Go standard errors package
2023-11-14 00:52:59 +01:00
Julien Pivotto
b6274ee747
Merge pull request #13114 from mmorel-35/patch-4
...
tsdb/wlog: use Go standard errors package
2023-11-14 00:52:21 +01:00
Julien Pivotto
7bcae56b6e
Merge pull request #13130 from mmorel-35/patch-6
...
tsdb/encoding: use Go standard errors package
2023-11-14 00:51:47 +01:00
Julien Pivotto
f53af5c849
Merge pull request #13131 from mmorel-35/patch-7
...
tsdb/tombstones: use Go standard errors package
2023-11-14 00:51:31 +01:00
Julien Pivotto
17fe6bc296
Merge pull request #13133 from mmorel-35/patch-8
...
tsdb/record: use Go standard errors package
2023-11-14 00:51:16 +01:00
Bryan Boreham
37573d083b
Merge pull request #13056 from songjiayang/symbolCacheEntry-filed-alignment
...
TSDB block index writer: reduce memory used by symbol cache
Improve struct field alignment for symbolCacheEntry
2023-11-13 14:37:43 +00:00
George Krajcsovits
acc114fe55
Fix panic during tsdb Commit ( #13092 )
...
* Fix panic during tsdb Commit
Fixes the following
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x19deb45]
goroutine 651118930 [running]:
github.com/prometheus/prometheus/tsdb.(*headAppender).Commit(0xc19100f7c0)
/drone/src/vendor/github.com/prometheus/prometheus/tsdb/head_append.go:855 +0x245
github.com/prometheus/prometheus/tsdb.dbAppender.Commit({{0x35bd6f0?, 0xc19100f7c0?}, 0xc000fa4c00?})
/drone/src/vendor/github.com/prometheus/prometheus/tsdb/db.go:1159 +0x2f
We theorize that the panic happened due the the series referenced by the
exemplar being removed between AppendExemplar and Commit due to being idle.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2023-11-12 14:51:37 +00:00
Matthieu MOREL
469e415d09
Update record.go
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-11 21:01:24 +01:00
Matthieu MOREL
69c07ec6ae
Update record_test.go
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-11 20:57:42 +01:00
Matthieu MOREL
63691d82a5
tsdb/record: use Go standard errors package
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-11 20:52:49 +01:00
Matthieu MOREL
c74b7ad4fb
Update tombstones.go
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-11 19:22:06 +01:00
Matthieu MOREL
118460a64f
tsdb/tombstones: use Go standard errors package
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-11 19:19:50 +01:00
Matthieu MOREL
4d6d3c1715
tsdb/encoding: use Go standard errors package
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-11 19:01:11 +01:00
George Krajcsovits
39a35d92bc
tsdb/head: wlog exemplars after samples ( #13113 )
...
When samples are committed in the head, they are also written to the WAL.
The order of WAL records should be sample then exemplar, but this was
not the case for native histogram samples. This PR fixes that.
The problem with the wrong order is that remote write reads the WAL and
sends the recorded timeseries in the WAL order, which means exemplars
arrived before histogram samples. If the receiving side is Prometheus
TSDB and the series has not existed before then the exemplar does not
currently create the series. Which means the exemplar is rejected and lost.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2023-11-11 17:30:16 +01:00
Matthieu MOREL
2972cc5e8f
tsdb/index: use Go standard errors package
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-09 21:37:41 +00:00
machine424
a32fbc3658
head.go: Remove an unneeded snapshot trigger that was moved in https://github.com/prometheus/prometheus/pull/9328
...
and brougt back by mistake in 095f572d4a
as part of https://github.com/prometheus/prometheus/pull/11447
Signed-off-by: machine424 <ayoubmrini424@gmail.com>
2023-11-09 11:46:46 +01:00
Matthieu MOREL
fb48a351f0
tsdb/wlog: use Go standard errors package
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-08 21:41:58 +00:00
songjiayang
443867f1aa
symbolCacheEntry field type alignment, thus saving 8 bytes.
...
Signed-off-by: songjiayang <songjiayang1@gmail.com>
2023-11-09 00:43:27 +08:00
Arve Knudsen
ae9221e152
tsdb/index.Symbols: Drop context argument from Lookup method ( #13058 )
...
Drop context argument from tsdb/index.Symbols.Lookup since lookup
should be fast and the context checking is a performance hit.
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2023-11-08 13:08:33 +01:00
Matthieu MOREL
ece8286305
tsdb/chunk: use Go standard errors package
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-08 09:19:44 +00:00
Matthieu MOREL
b60f9f801e
tsdb/chunkenc: use Go standard errors package
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-08 08:38:57 +00:00
Matthieu MOREL
724737006d
tsdb/agent: use Go standard errors package
...
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-11-08 09:22:31 +01:00
Goutham Veeramachaneni
b80617a248
Merge pull request #12881 from dimitarvdimitrov/dimitar/TestQuerierIndexQueriesRace-less-synchronisation
...
Improve sensitivity of TestQuerierIndexQueriesRace
2023-11-07 12:16:43 +01:00
Linas Medziunas
ebed7d0612
Change Validate to be a method on histogram structs
...
Signed-off-by: Linas Medziunas <linas.medziunas@gmail.com>
2023-11-03 16:47:59 +02:00
Linas Medziunas
1f8aea11d6
Move histogram validation code to model/histogram
...
Signed-off-by: Linas Medziunas <linas.medziunas@gmail.com>
2023-11-03 16:17:24 +02:00
Linas Medziunas
1cd6c1cde5
ValidateHistogram: strict Count check in absence of NaNs
...
Signed-off-by: Linas Medziunas <linas.medziunas@gmail.com>
2023-11-03 16:17:24 +02:00
beorn7
5dca994f64
Merge branch 'release-2.48' into beorn7/release
2023-11-02 19:58:33 +01:00
Jeanette Tan
52eb303031
Refactor assigning MinTime in histogram chunks
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-11-02 21:23:05 +08:00
Jeanette Tan
3ccaaa40ba
Fix according to code review
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-11-02 13:37:07 +08:00
György Krajcsovits
4296ecbd14
tsdb/compact_test.go: test mixed typed series with PopulateBlock
...
Add testcase and update test so that it can test native histograms as well.
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2023-11-02 13:33:42 +08:00
Jeanette Tan
27abf09e7f
Fix missing MinTime in histogram chunks
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-11-02 13:33:39 +08:00
Jeanette Tan
2f7060bd5a
Expand TestPopulateWithTombSeriesIterators to test earlier deletion intervals for histogram chunks as well as time-overlapping chunks
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-11-02 13:33:35 +08:00
Jeanette Tan
7a4a1127b7
Expand TestPopulateWithTombSeriesIterators to test min max times of chunks, including mixed chunks
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-11-02 13:33:33 +08:00
Jeanette Tan
04aabdd7cc
Refactor TestPopulateWithDelSeriesIterator unit tests to reuse more code
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-11-02 13:33:30 +08:00
Jeanette Tan
46be85f2dc
Make TestPopulateWithDelSeriesIterator tests cover histogram types and check MinTime
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-11-02 13:33:26 +08:00
Björn Rabenstein
a43669e611
Merge pull request #12928 from alexandear/ci-enable-godot
...
ci(lint): enable godot; append dot at the end of comments
2023-11-01 17:15:41 +01:00
Julien Pivotto
f568221610
Merge pull request #13057 from prometheus/release-2.48
...
Merge release-2.48 back into main
2023-10-31 15:24:39 -04:00
Oleksandr Redko
fa90ca46e5
ci(lint): enable godot; append dot at the end of comments
...
Signed-off-by: Oleksandr Redko <Oleksandr_Redko@epam.com>
2023-10-31 19:53:38 +02:00
Oleksandr Redko
8e5f0387a2
ci(lint): enable nolintlint and remove redundant comments ( #12926 )
...
Signed-off-by: Oleksandr Redko <Oleksandr_Redko@epam.com>
2023-10-31 12:35:13 +01:00
zenador
80e977aae6
Remove NewPossibleNonCounterInfo
and minimise creating empty annotations ( #13012 )
...
* Remove NewPossibleNonCounterInfo until it can be made more efficient, and avoid creating empty annotations as much as possible
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-10-24 17:36:07 +01:00
Márcio Carôso
dff1c395f6
Expose --storage.tsdb.retention.time in metric prometheus_tsdb_retention_limit_seconds ( #12986 )
...
* Expose --storage.tsdb.retention.time in a metric
Signed-off-by: Marcio Caroso <msscaroso@gmail.com>
---------
Signed-off-by: Marcio Caroso <msscaroso@gmail.com>
2023-10-24 13:34:42 +02:00
Björn Rabenstein
059f7f0738
Merge pull request #12997 from prometheus/wal-samples-size
...
TSDB: Pre-size buffer to read samples from WAL
2023-10-24 13:26:06 +02:00
Jeanette Tan
71a36d2396
Very minor refactor of the integer overflow fix
...
Signed-off-by: Jeanette Tan <jeanette.tan@grafana.com>
2023-10-19 13:17:46 +08:00
Bryan Boreham
26fa2e8356
TSDB: Pre-size buffer to read samples from WAL
...
When reading the WAL this method is called with buffers from a pool, on
multiple goroutines. Pre-allocating sufficient size avoids slow growth
and many reallocations in `append`.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2023-10-17 17:31:26 +00:00
George Krajcsovits
7d7b9eacff
Fix int32 overflow issues ( #12978 )
...
On a 32 bit architecture the size of int is 32 bits. Thus converting from
int64, uint64 can overflow it and flip the sign.
Try for yourself in playground:
package main
import "fmt"
func main() {
x := int64(0x1F0000001)
y := int64(1)
z := int32(x - y) // numerically this is 0x1F0000000
fmt.Printf("%v\n", z)
}
Prints -268435456 as if x was smaller.
Followup to #12650
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
2023-10-16 16:23:26 +02:00