Browse Source

libnetwork/datastore: un-embed mutex from cache

Signed-off-by: Cory Snider <csnider@mirantis.com>
Cory Snider 1 year ago
parent
commit
4b40d82233
1 changed files with 16 additions and 16 deletions
  1. 16 16
      libnetwork/datastore/cache.go

+ 16 - 16
libnetwork/datastore/cache.go

@@ -10,7 +10,7 @@ import (
 type kvMap map[string]KVObject
 
 type cache struct {
-	sync.Mutex
+	mu  sync.Mutex
 	kmm map[string]kvMap
 	ds  store.Store
 }
@@ -22,10 +22,10 @@ func newCache(ds store.Store) *cache {
 func (c *cache) kmap(kvObject KVObject) (kvMap, error) {
 	var err error
 
-	c.Lock()
+	c.mu.Lock()
 	keyPrefix := Key(kvObject.KeyPrefix()...)
 	kmap, ok := c.kmm[keyPrefix]
-	c.Unlock()
+	c.mu.Unlock()
 
 	if ok {
 		return kmap, nil
@@ -67,15 +67,15 @@ out:
 	// There may multiple go routines racing to fill the
 	// cache. The one which places the kmap in c.kmm first
 	// wins. The others should just use what the first populated.
-	c.Lock()
+	c.mu.Lock()
 	kmapNew, ok := c.kmm[keyPrefix]
 	if ok {
-		c.Unlock()
+		c.mu.Unlock()
 		return kmapNew, nil
 	}
 
 	c.kmm[keyPrefix] = kmap
-	c.Unlock()
+	c.mu.Unlock()
 
 	return kmap, nil
 }
@@ -86,13 +86,13 @@ func (c *cache) add(kvObject KVObject, atomic bool) error {
 		return err
 	}
 
-	c.Lock()
+	c.mu.Lock()
 	// If atomic is true, cache needs to maintain its own index
 	// for atomicity and the add needs to be atomic.
 	if atomic {
 		if prev, ok := kmap[Key(kvObject.Key()...)]; ok {
 			if prev.Index() != kvObject.Index() {
-				c.Unlock()
+				c.mu.Unlock()
 				return ErrKeyModified
 			}
 		}
@@ -104,7 +104,7 @@ func (c *cache) add(kvObject KVObject, atomic bool) error {
 	}
 
 	kmap[Key(kvObject.Key()...)] = kvObject
-	c.Unlock()
+	c.mu.Unlock()
 	return nil
 }
 
@@ -114,20 +114,20 @@ func (c *cache) del(kvObject KVObject, atomic bool) error {
 		return err
 	}
 
-	c.Lock()
+	c.mu.Lock()
 	// If atomic is true, cache needs to maintain its own index
 	// for atomicity and del needs to be atomic.
 	if atomic {
 		if prev, ok := kmap[Key(kvObject.Key()...)]; ok {
 			if prev.Index() != kvObject.Index() {
-				c.Unlock()
+				c.mu.Unlock()
 				return ErrKeyModified
 			}
 		}
 	}
 
 	delete(kmap, Key(kvObject.Key()...))
-	c.Unlock()
+	c.mu.Unlock()
 	return nil
 }
 
@@ -137,8 +137,8 @@ func (c *cache) get(kvObject KVObject) error {
 		return err
 	}
 
-	c.Lock()
-	defer c.Unlock()
+	c.mu.Lock()
+	defer c.mu.Unlock()
 
 	o, ok := kmap[Key(kvObject.Key()...)]
 	if !ok {
@@ -154,8 +154,8 @@ func (c *cache) list(kvObject KVObject) ([]KVObject, error) {
 		return nil, err
 	}
 
-	c.Lock()
-	defer c.Unlock()
+	c.mu.Lock()
+	defer c.mu.Unlock()
 
 	var kvol []KVObject
 	for _, v := range kmap {