Browse Source
[master] refactor HasGrowRequest to atomic bool (#5782)
refactor HasGrowRequest to atomit bool
pull/5792/head
Konstantin Lebedev
5 months ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with
4 additions and
4 deletions
-
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 { |
|
|
|