aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--weed/topology/volume_layout.go8
1 files changed, 4 insertions, 4 deletions
diff --git a/weed/topology/volume_layout.go b/weed/topology/volume_layout.go
index f2c341b7c..5711a6a9b 100644
--- a/weed/topology/volume_layout.go
+++ b/weed/topology/volume_layout.go
@@ -106,7 +106,7 @@ func (v *volumesBinaryState) copyState(list *VolumeLocationList) copyState {
// mapping from volume to its locations, inverted from server to volume
type VolumeLayout struct {
- growRequestCount int32
+ growRequest atomic.Bool
rp *super_block.ReplicaPlacement
ttl *needle.TTL
diskType types.DiskType
@@ -345,13 +345,13 @@ func (vl *VolumeLayout) PickForWrite(count uint64, option *VolumeGrowOption) (vi
}
func (vl *VolumeLayout) HasGrowRequest() bool {
- return atomic.LoadInt32(&vl.growRequestCount) > 0
+ return vl.growRequest.Load()
}
func (vl *VolumeLayout) AddGrowRequest() {
- atomic.AddInt32(&vl.growRequestCount, 1)
+ vl.growRequest.Store(true)
}
func (vl *VolumeLayout) DoneGrowRequest() {
- atomic.AddInt32(&vl.growRequestCount, -1)
+ vl.growRequest.Store(false)
}
func (vl *VolumeLayout) ShouldGrowVolumes(option *VolumeGrowOption) bool {