Merge pull request #16309 from LK4D4/fix_volumes_race
volumes: add synchronization to Count and List
This commit is contained in:
commit
7b1930063f
|
@ -227,6 +227,8 @@ func (s *volumeStore) Decrement(v volume.Volume) {
|
||||||
|
|
||||||
// Count returns the usage count of the passed in volume
|
// Count returns the usage count of the passed in volume
|
||||||
func (s *volumeStore) Count(v volume.Volume) int {
|
func (s *volumeStore) Count(v volume.Volume) int {
|
||||||
|
s.mu.Lock()
|
||||||
|
defer s.mu.Unlock()
|
||||||
vc, exists := s.vols[v.Name()]
|
vc, exists := s.vols[v.Name()]
|
||||||
if !exists {
|
if !exists {
|
||||||
return 0
|
return 0
|
||||||
|
@ -236,6 +238,8 @@ func (s *volumeStore) Count(v volume.Volume) int {
|
||||||
|
|
||||||
// List returns all the available volumes
|
// List returns all the available volumes
|
||||||
func (s *volumeStore) List() []volume.Volume {
|
func (s *volumeStore) List() []volume.Volume {
|
||||||
|
s.mu.Lock()
|
||||||
|
defer s.mu.Unlock()
|
||||||
var ls []volume.Volume
|
var ls []volume.Volume
|
||||||
for _, vc := range s.vols {
|
for _, vc := range s.vols {
|
||||||
ls = append(ls, vc.Volume)
|
ls = append(ls, vc.Volume)
|
||||||
|
|
Loading…
Reference in New Issue