mirror of
https://github.com/prometheus/prometheus.git
synced 2025-03-05 20:59:13 -08:00
Follow up PR 14729
Some checks are pending
CI / Go tests (push) Waiting to run
CI / More Go tests (push) Waiting to run
CI / Go tests with previous Go version (push) Waiting to run
CI / UI tests (push) Waiting to run
CI / Go tests on Windows (push) Waiting to run
CI / Mixins tests (push) Waiting to run
CI / Build Prometheus for common architectures (0) (push) Waiting to run
CI / Build Prometheus for common architectures (1) (push) Waiting to run
CI / Build Prometheus for common architectures (2) (push) Waiting to run
CI / Build Prometheus for all architectures (0) (push) Waiting to run
CI / Build Prometheus for all architectures (1) (push) Waiting to run
CI / Build Prometheus for all architectures (10) (push) Waiting to run
CI / Build Prometheus for all architectures (11) (push) Waiting to run
CI / Build Prometheus for all architectures (2) (push) Waiting to run
CI / Build Prometheus for all architectures (3) (push) Waiting to run
CI / Build Prometheus for all architectures (4) (push) Waiting to run
CI / Build Prometheus for all architectures (5) (push) Waiting to run
CI / Build Prometheus for all architectures (6) (push) Waiting to run
CI / Build Prometheus for all architectures (7) (push) Waiting to run
CI / Build Prometheus for all architectures (8) (push) Waiting to run
CI / Build Prometheus for all architectures (9) (push) Waiting to run
CI / Report status of build Prometheus for all architectures (push) Blocked by required conditions
CI / Check generated parser (push) Waiting to run
CI / golangci-lint (push) Waiting to run
CI / fuzzing (push) Waiting to run
CI / codeql (push) Waiting to run
CI / Publish main branch artifacts (push) Blocked by required conditions
CI / Publish release artefacts (push) Blocked by required conditions
CI / Publish UI on npm Registry (push) Blocked by required conditions
Some checks are pending
CI / Go tests (push) Waiting to run
CI / More Go tests (push) Waiting to run
CI / Go tests with previous Go version (push) Waiting to run
CI / UI tests (push) Waiting to run
CI / Go tests on Windows (push) Waiting to run
CI / Mixins tests (push) Waiting to run
CI / Build Prometheus for common architectures (0) (push) Waiting to run
CI / Build Prometheus for common architectures (1) (push) Waiting to run
CI / Build Prometheus for common architectures (2) (push) Waiting to run
CI / Build Prometheus for all architectures (0) (push) Waiting to run
CI / Build Prometheus for all architectures (1) (push) Waiting to run
CI / Build Prometheus for all architectures (10) (push) Waiting to run
CI / Build Prometheus for all architectures (11) (push) Waiting to run
CI / Build Prometheus for all architectures (2) (push) Waiting to run
CI / Build Prometheus for all architectures (3) (push) Waiting to run
CI / Build Prometheus for all architectures (4) (push) Waiting to run
CI / Build Prometheus for all architectures (5) (push) Waiting to run
CI / Build Prometheus for all architectures (6) (push) Waiting to run
CI / Build Prometheus for all architectures (7) (push) Waiting to run
CI / Build Prometheus for all architectures (8) (push) Waiting to run
CI / Build Prometheus for all architectures (9) (push) Waiting to run
CI / Report status of build Prometheus for all architectures (push) Blocked by required conditions
CI / Check generated parser (push) Waiting to run
CI / golangci-lint (push) Waiting to run
CI / fuzzing (push) Waiting to run
CI / codeql (push) Waiting to run
CI / Publish main branch artifacts (push) Blocked by required conditions
CI / Publish release artefacts (push) Blocked by required conditions
CI / Publish UI on npm Registry (push) Blocked by required conditions
Signed-off-by: György Krajcsovits <gyorgy.krajcsovits@grafana.com>
This commit is contained in:
parent
bab51673c1
commit
29f476ce9c
|
@ -6749,6 +6749,7 @@ func TestOOOHistogramCompactionWithCounterResets(t *testing.T) {
|
|||
}
|
||||
// Counter reset.
|
||||
s = addSample(int64(490), series1, 100000, histogram.UnknownCounterReset)
|
||||
s = copyWithCounterReset(s, histogram.CounterReset)
|
||||
series1ExpSamplesPreCompact = append(series1ExpSamplesPreCompact, s)
|
||||
series1ExpSamplesPostCompact = append(series1ExpSamplesPostCompact, s)
|
||||
// Add some more samples after the counter reset.
|
||||
|
@ -6773,6 +6774,7 @@ func TestOOOHistogramCompactionWithCounterResets(t *testing.T) {
|
|||
}
|
||||
// Counter reset.
|
||||
s = addSample(int64(300), series2, 100000, histogram.UnknownCounterReset)
|
||||
s = copyWithCounterReset(s, histogram.CounterReset)
|
||||
series2ExpSamplesPreCompact = append(series2ExpSamplesPreCompact, s)
|
||||
series2ExpSamplesPostCompact = append(series2ExpSamplesPostCompact, s)
|
||||
// Add some more samples after the counter reset.
|
||||
|
|
|
@ -54,53 +54,6 @@ func NewHeadAndOOOIndexReader(head *Head, mint, maxt int64, lastGarbageCollected
|
|||
return &HeadAndOOOIndexReader{hr, lastGarbageCollectedMmapRef}
|
||||
}
|
||||
|
||||
type MultiChunk struct {
|
||||
chunks []chunkenc.Chunk
|
||||
}
|
||||
|
||||
func (c MultiChunk) Iterator(it chunkenc.Iterator) chunkenc.Iterator {
|
||||
switch len(c.chunks) {
|
||||
case 0:
|
||||
return chunkenc.NewNopIterator()
|
||||
case 1:
|
||||
return c.chunks[0].Iterator(it)
|
||||
default:
|
||||
iterators := make([]chunkenc.Iterator, 0, len(c.chunks))
|
||||
for _, chk := range c.chunks {
|
||||
iterators = append(iterators, chk.Iterator(nil))
|
||||
}
|
||||
return storage.ChainSampleIteratorFromIterators(it, iterators)
|
||||
}
|
||||
}
|
||||
|
||||
func (c MultiChunk) Appender() (chunkenc.Appender, error) {
|
||||
return nil, errors.New("not implemented")
|
||||
}
|
||||
|
||||
func (c MultiChunk) Bytes() []byte {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c MultiChunk) Compact() {
|
||||
// no-op
|
||||
}
|
||||
|
||||
func (c MultiChunk) Encoding() chunkenc.Encoding {
|
||||
return chunkenc.EncNone
|
||||
}
|
||||
|
||||
func (c MultiChunk) NumSamples() int {
|
||||
sum := 0
|
||||
for _, chk := range c.chunks {
|
||||
sum += chk.NumSamples()
|
||||
}
|
||||
return sum
|
||||
}
|
||||
|
||||
func (c MultiChunk) Reset([]byte) {
|
||||
// no-op
|
||||
}
|
||||
|
||||
func (oh *HeadAndOOOIndexReader) Series(ref storage.SeriesRef, builder *labels.ScratchBuilder, chks *[]chunks.Meta) error {
|
||||
s := oh.head.series.getByID(chunks.HeadSeriesRef(ref))
|
||||
|
||||
|
@ -148,16 +101,14 @@ func getOOOSeriesChunks(s *memSeries, mint, maxt int64, lastGarbageCollectedMmap
|
|||
if c.OverlapsClosedInterval(mint, maxt) && maxMmapRef == 0 {
|
||||
ref := chunks.ChunkRef(chunks.NewHeadChunkRef(s.ref, s.oooHeadChunkID(len(s.ooo.oooMmappedChunks))))
|
||||
if len(c.chunk.samples) > 0 { // Empty samples happens in tests, at least.
|
||||
headChunks := MultiChunk{}
|
||||
chks, err := s.ooo.oooHeadChunk.chunk.ToEncodedChunks(c.minTime, c.maxTime)
|
||||
if err != nil {
|
||||
handleChunkWriteError(err)
|
||||
return nil
|
||||
}
|
||||
for _, chk := range chks {
|
||||
headChunks.chunks = append(headChunks.chunks, chk.chunk)
|
||||
addChunk(chk.minTime, chk.maxTime, ref, chk.chunk)
|
||||
}
|
||||
addChunk(c.minTime, c.maxTime, ref, headChunks)
|
||||
} else {
|
||||
var emptyChunk chunkenc.Chunk
|
||||
addChunk(c.minTime, c.maxTime, ref, emptyChunk)
|
||||
|
|
|
@ -33,7 +33,6 @@ import (
|
|||
|
||||
// Type assertions.
|
||||
var (
|
||||
_ chunkenc.Chunk = &MultiChunk{}
|
||||
_ chunkenc.Iterable = &mergedOOOChunks{}
|
||||
_ IndexReader = &HeadAndOOOIndexReader{}
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue