Skip to content

Commit 6dda199

Browse files
committed
remove utils folder
Signed-off-by: Ben Ye <benye@amazon.com>
1 parent 41e1047 commit 6dda199

File tree

5 files changed

+25
-32
lines changed

5 files changed

+25
-32
lines changed

pkg/querier/tripperware/instantquery/instant_query.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ import (
2424
"github.com/cortexproject/cortex/pkg/cortexpb"
2525
"github.com/cortexproject/cortex/pkg/querier/tripperware"
2626
"github.com/cortexproject/cortex/pkg/querier/tripperware/queryrange"
27-
"github.com/cortexproject/cortex/pkg/querier/tripperware/utils"
2827
"github.com/cortexproject/cortex/pkg/util"
2928
"github.com/cortexproject/cortex/pkg/util/spanlogger"
3029
)
@@ -364,7 +363,7 @@ func matrixMerge(resps []*PrometheusInstantQueryResponse) *Matrix {
364363
stream.Samples = stream.Samples[1:]
365364
} else if existingEndTs > stream.Samples[0].TimestampMs {
366365
// Overlap might be big, use heavier algorithm to remove overlap.
367-
stream.Samples = utils.SliceSamples(stream.Samples, existingEndTs)
366+
stream.Samples = tripperware.SliceSamples(stream.Samples, existingEndTs)
368367
} // else there is no overlap, yay!
369368
}
370369
existing.Samples = append(existing.Samples, stream.Samples...)

pkg/querier/tripperware/instantquery/instantquery.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,5 @@ message Sample {
4444
}
4545

4646
message Matrix {
47-
repeated tripperware.SampleStream sampleStreams = 1;
47+
repeated tripperware.SampleStream sampleStreams = 1 [(gogoproto.nullable) = false];
4848
}

pkg/querier/tripperware/queryrange/query_range.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ import (
2323

2424
"github.com/cortexproject/cortex/pkg/cortexpb"
2525
"github.com/cortexproject/cortex/pkg/querier/tripperware"
26-
"github.com/cortexproject/cortex/pkg/querier/tripperware/utils"
2726
"github.com/cortexproject/cortex/pkg/util"
2827
"github.com/cortexproject/cortex/pkg/util/spanlogger"
2928
)
@@ -366,7 +365,7 @@ func matrixMerge(resps []*PrometheusResponse) []tripperware.SampleStream {
366365
stream.Samples = stream.Samples[1:]
367366
} else if existingEndTs > stream.Samples[0].TimestampMs {
368367
// Overlap might be big, use heavier algorithm to remove overlap.
369-
stream.Samples = utils.SliceSamples(stream.Samples, existingEndTs)
368+
stream.Samples = tripperware.SliceSamples(stream.Samples, existingEndTs)
370369
} // else there is no overlap, yay!
371370
}
372371
existing.Samples = append(existing.Samples, stream.Samples...)

pkg/querier/tripperware/util.go

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ package tripperware
22

33
import (
44
"context"
5+
"github.com/cortexproject/cortex/pkg/cortexpb"
56
"net/http"
7+
"sort"
68

79
"github.com/weaveworks/common/httpgrpc"
810

@@ -70,3 +72,23 @@ func DoRequests(ctx context.Context, downstream Handler, reqs []Request, limits
7072

7173
return resps, firstErr
7274
}
75+
76+
// SliceSamples assumes given samples are sorted by timestamp in ascending order and
77+
// return a sub slice whose first element's is the smallest timestamp that is strictly
78+
// bigger than the given minTs. Empty slice is returned if minTs is bigger than all the
79+
// timestamps in samples.
80+
func SliceSamples(samples []cortexpb.Sample, minTs int64) []cortexpb.Sample {
81+
if len(samples) <= 0 || minTs < samples[0].TimestampMs {
82+
return samples
83+
}
84+
85+
if len(samples) > 0 && minTs > samples[len(samples)-1].TimestampMs {
86+
return samples[len(samples):]
87+
}
88+
89+
searchResult := sort.Search(len(samples), func(i int) bool {
90+
return samples[i].TimestampMs > minTs
91+
})
92+
93+
return samples[searchResult:]
94+
}

pkg/querier/tripperware/utils/utils.go

Lines changed: 0 additions & 27 deletions
This file was deleted.

0 commit comments

Comments
 (0)