Browse Source

tsdb: Remove isHistogramSeries from memSeries

Signed-off-by: Ganesh Vernekar <ganeshvern@gmail.com>
pull/11778/head
Ganesh Vernekar 2 years ago
parent
commit
e555469ba1
No known key found for this signature in database
GPG Key ID: F056451B52F1DC34
  1. 4
      tsdb/head.go
  2. 15
      tsdb/head_append.go
  3. 2
      tsdb/head_wal.go

4
tsdb/head.go

@ -1862,10 +1862,6 @@ type memSeries struct {
// txs is nil if isolation is disabled. // txs is nil if isolation is disabled.
txs *txRing txs *txRing
// TODO(beorn7): The only reason we track this is to create a staleness
// marker as either histogram or float sample. Perhaps there is a better way.
isHistogramSeries bool
pendingCommit bool // Whether there are samples waiting to be committed to this series. pendingCommit bool // Whether there are samples waiting to be committed to this series.
} }

15
tsdb/head_append.go

@ -350,7 +350,7 @@ func (a *headAppender) Append(ref storage.SeriesRef, lset labels.Labels, t int64
} }
} }
if value.IsStaleNaN(v) && s.isHistogramSeries { if value.IsStaleNaN(v) && s.lastHistogramValue != nil {
// TODO(marctc): do we have do to the same for float histograms? // TODO(marctc): do we have do to the same for float histograms?
return a.AppendHistogram(ref, lset, t, &histogram.Histogram{Sum: v}, nil) return a.AppendHistogram(ref, lset, t, &histogram.Histogram{Sum: v}, nil)
} }
@ -555,8 +555,12 @@ func (a *headAppender) AppendHistogram(ref storage.SeriesRef, lset labels.Labels
if err != nil { if err != nil {
return 0, err return 0, err
} }
s.isHistogramSeries = true
if created { if created {
if h != nil {
s.lastHistogramValue = &histogram.Histogram{}
} else if fh != nil {
s.lastFloatHistogramValue = &histogram.FloatHistogram{}
}
a.series = append(a.series, record.RefSeries{ a.series = append(a.series, record.RefSeries{
Ref: s.ref, Ref: s.ref,
Labels: lset, Labels: lset,
@ -1115,11 +1119,12 @@ func (s *memSeries) append(t int64, v float64, appendID uint64, chunkDiskMapper
return sampleInOrder, chunkCreated return sampleInOrder, chunkCreated
} }
s.app.Append(t, v) s.app.Append(t, v)
s.isHistogramSeries = false
c.maxTime = t c.maxTime = t
s.lastValue = v s.lastValue = v
s.lastHistogramValue = nil
s.lastFloatHistogramValue = nil
if appendID > 0 { if appendID > 0 {
s.txs.add(appendID) s.txs.add(appendID)
@ -1184,11 +1189,11 @@ func (s *memSeries) appendHistogram(t int64, h *histogram.Histogram, appendID ui
} }
s.app.AppendHistogram(t, h) s.app.AppendHistogram(t, h)
s.isHistogramSeries = true
c.maxTime = t c.maxTime = t
s.lastHistogramValue = h s.lastHistogramValue = h
s.lastFloatHistogramValue = nil
if appendID > 0 { if appendID > 0 {
s.txs.add(appendID) s.txs.add(appendID)
@ -1252,11 +1257,11 @@ func (s *memSeries) appendFloatHistogram(t int64, fh *histogram.FloatHistogram,
} }
s.app.AppendFloatHistogram(t, fh) s.app.AppendFloatHistogram(t, fh)
s.isHistogramSeries = true
c.maxTime = t c.maxTime = t
s.lastFloatHistogramValue = fh s.lastFloatHistogramValue = fh
s.lastHistogramValue = nil
if appendID > 0 { if appendID > 0 {
s.txs.add(appendID) s.txs.add(appendID)

2
tsdb/head_wal.go

@ -605,7 +605,6 @@ func (wp *walSubsetProcessor) processWALSamples(h *Head, mmappedChunks, oooMmapp
if s.T <= ms.mmMaxTime { if s.T <= ms.mmMaxTime {
continue continue
} }
ms.isHistogramSeries = false
if s.T <= ms.mmMaxTime { if s.T <= ms.mmMaxTime {
continue continue
} }
@ -634,7 +633,6 @@ func (wp *walSubsetProcessor) processWALSamples(h *Head, mmappedChunks, oooMmapp
unknownHistogramRefs++ unknownHistogramRefs++
continue continue
} }
ms.isHistogramSeries = true
if s.t <= ms.mmMaxTime { if s.t <= ms.mmMaxTime {
continue continue
} }

Loading…
Cancel
Save