Skip to content

Commit

Permalink
Improved TestIngester_inflightPushRequests
Browse files Browse the repository at this point in the history
Signed-off-by: Marco Pracucci <marco@pracucci.com>
  • Loading branch information
pracucci authored and bboreham committed Jul 31, 2023
1 parent e7bd0fa commit c4ba830
Showing 1 changed file with 14 additions and 1 deletion.
15 changes: 14 additions & 1 deletion pkg/ingester/ingester_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ import (
"github.com/grafana/mimir/pkg/storage/tsdb/block"
"github.com/grafana/mimir/pkg/usagestats"
"github.com/grafana/mimir/pkg/util"
util_log "github.com/grafana/mimir/pkg/util/log"
util_math "github.com/grafana/mimir/pkg/util/math"
"github.com/grafana/mimir/pkg/util/push"
util_test "github.com/grafana/mimir/pkg/util/test"
Expand Down Expand Up @@ -5621,7 +5622,8 @@ func TestIngester_inflightPushRequests(t *testing.T) {
cfg := defaultIngesterTestConfig(t)
cfg.InstanceLimitsFn = func() *InstanceLimits { return &limits }

i, err := prepareIngesterWithBlocksStorage(t, cfg, nil)
reg := prometheus.NewPedanticRegistry()
i, err := prepareIngesterWithBlocksStorage(t, cfg, reg)
require.NoError(t, err)
require.NoError(t, services.StartAndAwaitRunning(context.Background(), i))
defer services.StopAndAwaitTerminated(context.Background(), i) //nolint:errcheck
Expand Down Expand Up @@ -5688,10 +5690,21 @@ func TestIngester_inflightPushRequests(t *testing.T) {

_, err := i.Push(ctx, req)
require.Equal(t, errMaxInflightRequestsReached, err)
require.ErrorAs(t, err, &util_log.DoNotLogError{})
return nil
})

require.NoError(t, g.Wait())

// Ensure the rejected request has been tracked in a metric.
require.NoError(t, testutil.GatherAndCompare(reg, strings.NewReader(`
# HELP cortex_ingester_instance_rejected_requests_total Requests rejected for hitting per-instance limits
# TYPE cortex_ingester_instance_rejected_requests_total counter
cortex_ingester_instance_rejected_requests_total{reason="ingester_max_inflight_push_requests"} 1
cortex_ingester_instance_rejected_requests_total{reason="ingester_max_ingestion_rate"} 0
cortex_ingester_instance_rejected_requests_total{reason="ingester_max_series"} 0
cortex_ingester_instance_rejected_requests_total{reason="ingester_max_tenants"} 0
`), "cortex_ingester_instance_rejected_requests_total"))
}

func generateSamplesForLabel(baseLabels labels.Labels, series, samples int) *mimirpb.WriteRequest {
Expand Down

0 comments on commit c4ba830

Please sign in to comment.