0

Fix concurrency crash. Closes #1067

This commit is contained in:
Gabe Kangas 2021-06-07 21:59:43 -07:00
parent 62dfc5bea3
commit 306a0066d1

View File

@ -1,9 +1,17 @@
package data
import "errors"
import (
"errors"
"sync"
)
var _cacheLock = sync.Mutex{}
// GetCachedValue will return a value for key from the cache.
func (ds *Datastore) GetCachedValue(key string) ([]byte, error) {
_cacheLock.Lock()
defer _cacheLock.Unlock()
// Check for a cached value
if val, ok := ds.cache[key]; ok {
return val, nil
@ -14,5 +22,8 @@ func (ds *Datastore) GetCachedValue(key string) ([]byte, error) {
// SetCachedValue will set a value for key in the cache.
func (ds *Datastore) SetCachedValue(key string, b []byte) {
_cacheLock.Lock()
defer _cacheLock.Unlock()
ds.cache[key] = b
}