diff --git a/CHANGELOG.md b/CHANGELOG.md index 9228226df..9bf7ee9b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -53,6 +53,7 @@ Changelog for FrostFS Node - `golang.org/x/term` to `v0.3.0` - `google.golang.org/grpc` to `v1.51.0` - `github.com/nats-io/nats.go` to `v1.22.1` +- `github.com/TrueCloudLab/hrw` to `v.1.1.1` - Minimum go version to v1.18 ### Updating from v0.35.0 diff --git a/go.mod b/go.mod index b7758b927..cf21b9025 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ require ( github.com/TrueCloudLab/frostfs-api-go/v2 v2.0.0-20221212144048-1351b6656d68 github.com/TrueCloudLab/frostfs-contract v0.0.0-20221213081248-6c805c1b4e42 github.com/TrueCloudLab/frostfs-sdk-go v0.0.0-20221214065929-4c779423f556 - github.com/TrueCloudLab/hrw v1.1.0 + github.com/TrueCloudLab/hrw v1.1.1-0.20230227111858-79b208bebf52 github.com/TrueCloudLab/tzhash v1.7.0 github.com/cheggaaa/pb v1.0.29 github.com/chzyer/readline v1.5.1 diff --git a/go.sum b/go.sum index 1d85e41cb..b81b444f2 100644 Binary files a/go.sum and b/go.sum differ diff --git a/pkg/local_object_storage/engine/evacuate.go b/pkg/local_object_storage/engine/evacuate.go index abe439270..6ff61ed01 100644 --- a/pkg/local_object_storage/engine/evacuate.go +++ b/pkg/local_object_storage/engine/evacuate.go @@ -151,7 +151,7 @@ mainLoop: return res, err } - hrw.SortSliceByWeightValue(shards, weights, hrw.Hash([]byte(addr.EncodeToString()))) + hrw.SortHasherSliceByWeightValue(shards, weights, hrw.Hash([]byte(addr.EncodeToString()))) for j := range shards { if _, ok := shardMap[shards[j].ID().String()]; ok { continue diff --git a/pkg/local_object_storage/engine/shards.go b/pkg/local_object_storage/engine/shards.go index 9341be9f9..2b8226e73 100644 --- a/pkg/local_object_storage/engine/shards.go +++ b/pkg/local_object_storage/engine/shards.go @@ -216,7 +216,7 @@ func (e *StorageEngine) sortShardsByWeight(objAddr interface{ EncodeToString() s weights = append(weights, e.shardWeight(sh.Shard)) } - hrw.SortSliceByWeightValue(shards, weights, hrw.Hash([]byte(objAddr.EncodeToString()))) + hrw.SortHasherSliceByWeightValue(shards, weights, hrw.Hash([]byte(objAddr.EncodeToString()))) return shards } diff --git a/pkg/services/reputation/common/managers.go b/pkg/services/reputation/common/managers.go index e4f1842c2..ce43994ca 100644 --- a/pkg/services/reputation/common/managers.go +++ b/pkg/services/reputation/common/managers.go @@ -93,7 +93,7 @@ func (mb *managerBuilder) BuildManagers(epoch uint64, p apireputation.PeerID) ([ copy(nodes, nmNodes) - hrw.SortSliceByValue(nodes, epoch) + hrw.SortHasherSliceByValue(nodes, epoch) for i := range nodes { if apireputation.ComparePeerKey(p, nodes[i].PublicKey()) {