mirror of
https://github.com/zeromicro/go-zero.git
synced 2026-05-14 02:10:00 +08:00
test(hash): modify TestConsistentHashTransferOnFailure to more reasonable test transfer ratio (#4874)
This commit is contained in:
@@ -86,6 +86,14 @@ func TestConsistentHashIncrementalTransfer(t *testing.T) {
|
|||||||
|
|
||||||
func TestConsistentHashTransferOnFailure(t *testing.T) {
|
func TestConsistentHashTransferOnFailure(t *testing.T) {
|
||||||
index := 41
|
index := 41
|
||||||
|
ratioNotExists := getTransferRatioOnFailure(t, index)
|
||||||
|
assert.True(t, ratioNotExists == 0, fmt.Sprintf("%d: %f", index, ratioNotExists))
|
||||||
|
index = 13
|
||||||
|
ratio := getTransferRatioOnFailure(t, index)
|
||||||
|
assert.True(t, ratio < 2.5/keySize, fmt.Sprintf("%d: %f", index, ratio))
|
||||||
|
}
|
||||||
|
|
||||||
|
func getTransferRatioOnFailure(t *testing.T, index int) float32 {
|
||||||
keys, newKeys := getKeysBeforeAndAfterFailure(t, "localhost:", index)
|
keys, newKeys := getKeysBeforeAndAfterFailure(t, "localhost:", index)
|
||||||
var transferred int
|
var transferred int
|
||||||
for k, v := range newKeys {
|
for k, v := range newKeys {
|
||||||
@@ -93,14 +101,12 @@ func TestConsistentHashTransferOnFailure(t *testing.T) {
|
|||||||
transferred++
|
transferred++
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return float32(transferred) / float32(requestSize)
|
||||||
ratio := float32(transferred) / float32(requestSize)
|
|
||||||
assert.True(t, ratio < 2.5/float32(keySize), fmt.Sprintf("%d: %f", index, ratio))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestConsistentHashLeastTransferOnFailure(t *testing.T) {
|
func TestConsistentHashLeastTransferOnFailure(t *testing.T) {
|
||||||
prefix := "localhost:"
|
prefix := "localhost:"
|
||||||
index := 41
|
index := 13
|
||||||
keys, newKeys := getKeysBeforeAndAfterFailure(t, prefix, index)
|
keys, newKeys := getKeysBeforeAndAfterFailure(t, prefix, index)
|
||||||
for k, v := range keys {
|
for k, v := range keys {
|
||||||
newV := newKeys[k]
|
newV := newKeys[k]
|
||||||
|
|||||||
Reference in New Issue
Block a user