(b *testing.B, numInstances, numZones, numTokens, shardSize int, cache bool)
| 3722 | } |
| 3723 | |
| 3724 | func benchmarkShuffleSharding(b *testing.B, numInstances, numZones, numTokens, shardSize int, cache bool) { |
| 3725 | // Initialise the ring. |
| 3726 | ringDesc := &Desc{Ingesters: generateRingInstances(initTokenGenerator(b), numInstances, numZones, numTokens)} |
| 3727 | ring := newRingForTesting(Config{HeartbeatTimeout: time.Hour, ZoneAwarenessEnabled: true, SubringCacheDisabled: !cache}, true) |
| 3728 | ring.setRingStateFromDesc(ringDesc, false, false, true) |
| 3729 | |
| 3730 | b.ResetTimer() |
| 3731 | |
| 3732 | for n := 0; n < b.N; n++ { |
| 3733 | ring.ShuffleShard("tenant-1", shardSize) |
| 3734 | } |
| 3735 | } |
| 3736 | |
| 3737 | func BenchmarkRing_Get(b *testing.B) { |
| 3738 | benchCases := map[string]struct { |
no test coverage detected