mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2025-11-24 08:46:54 +08:00
math/rand => math/rand/v2
This commit is contained in:
@@ -2,7 +2,7 @@ package topology
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"math/rand"
|
||||
"math/rand/v2"
|
||||
"strings"
|
||||
"sync"
|
||||
"sync/atomic"
|
||||
@@ -83,7 +83,7 @@ func (n *NodeImpl) PickNodesByWeight(numberOfNodes int, option *VolumeGrowOption
|
||||
//pick nodes randomly by weights, the node picked earlier has higher final weights
|
||||
sortedCandidates := make([]Node, 0, len(candidates))
|
||||
for i := 0; i < len(candidates); i++ {
|
||||
weightsInterval := rand.Int63n(totalWeights)
|
||||
weightsInterval := rand.Int64N(totalWeights)
|
||||
lastWeights := int64(0)
|
||||
for k, weights := range candidatesWeights {
|
||||
if (weightsInterval >= lastWeights) && (weightsInterval < lastWeights+weights) {
|
||||
|
||||
@@ -4,7 +4,7 @@ import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"math/rand"
|
||||
"math/rand/v2"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package topology
|
||||
|
||||
import (
|
||||
"math/rand"
|
||||
"math/rand/v2"
|
||||
"time"
|
||||
|
||||
"github.com/seaweedfs/seaweedfs/weed/stats"
|
||||
|
||||
@@ -4,7 +4,7 @@ import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"github.com/seaweedfs/seaweedfs/weed/pb/master_pb"
|
||||
"math/rand"
|
||||
"math/rand/v2"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
@@ -222,7 +222,7 @@ func (vg *VolumeGrowth) findEmptySlotsForOneVolume(topo *Topology, option *Volum
|
||||
servers = append(servers, server.(*DataNode))
|
||||
}
|
||||
for _, rack := range otherRacks {
|
||||
r := rand.Int63n(rack.AvailableSpaceFor(option))
|
||||
r := rand.Int64N(rack.AvailableSpaceFor(option))
|
||||
if server, e := rack.ReserveOneVolume(r, option); e == nil {
|
||||
servers = append(servers, server)
|
||||
} else {
|
||||
@@ -230,7 +230,7 @@ func (vg *VolumeGrowth) findEmptySlotsForOneVolume(topo *Topology, option *Volum
|
||||
}
|
||||
}
|
||||
for _, datacenter := range otherDataCenters {
|
||||
r := rand.Int63n(datacenter.AvailableSpaceFor(option))
|
||||
r := rand.Int64N(datacenter.AvailableSpaceFor(option))
|
||||
if server, e := datacenter.ReserveOneVolume(r, option); e == nil {
|
||||
servers = append(servers, server)
|
||||
} else {
|
||||
|
||||
@@ -3,7 +3,7 @@ package topology
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/seaweedfs/seaweedfs/weed/stats"
|
||||
"math/rand"
|
||||
"math/rand/v2"
|
||||
"sync"
|
||||
"sync/atomic"
|
||||
"time"
|
||||
@@ -296,7 +296,7 @@ func (vl *VolumeLayout) PickForWrite(count uint64, option *VolumeGrowOption) (vi
|
||||
return 0, 0, nil, true, fmt.Errorf("%s in volume layout", noWritableVolumes)
|
||||
}
|
||||
if option.DataCenter == "" && option.Rack == "" && option.DataNode == "" {
|
||||
vid := vl.writables[rand.Intn(lenWriters)]
|
||||
vid := vl.writables[rand.IntN(lenWriters)]
|
||||
locationList = vl.vid2location[vid]
|
||||
if locationList == nil || len(locationList.list) == 0 {
|
||||
return 0, 0, nil, false, fmt.Errorf("Strangely vid %s is on no machine!", vid.String())
|
||||
|
||||
Reference in New Issue
Block a user