@ -46,14 +46,14 @@ type storeCache struct {
|
||||
}
|
||||
|
||||
var (
|
||||
globalID int64
|
||||
globalVerProvider kv.VersionProvider
|
||||
mc storeCache
|
||||
globalID int64
|
||||
globalVersionProvider kv.VersionProvider
|
||||
mc storeCache
|
||||
)
|
||||
|
||||
func init() {
|
||||
mc.cache = make(map[string]*dbStore)
|
||||
globalVerProvider = &LocalVersioProvider{}
|
||||
globalVersionProvider = &LocalVersionProvider{}
|
||||
}
|
||||
|
||||
// Driver implements kv.Driver interface.
|
||||
@ -105,7 +105,7 @@ func (s *dbStore) Begin() (kv.Transaction, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
beginVer, err := globalVerProvider.CurrentVersion()
|
||||
beginVer, err := globalVersionProvider.CurrentVersion()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@ -13,8 +13,8 @@ import (
|
||||
// may conflict.
|
||||
var ErrOverflow = errors.New("overflow when allocating new version")
|
||||
|
||||
// LocalVersioProvider uses local timestamp for version.
|
||||
type LocalVersioProvider struct {
|
||||
// LocalVersionProvider uses local timestamp for version.
|
||||
type LocalVersionProvider struct {
|
||||
mu sync.Mutex
|
||||
lastTimeStampTs uint64
|
||||
n uint64
|
||||
@ -25,7 +25,7 @@ const (
|
||||
)
|
||||
|
||||
// CurrentVersion implements the VersionProvider's GetCurrentVer interface.
|
||||
func (l *LocalVersioProvider) CurrentVersion() (kv.Version, error) {
|
||||
func (l *LocalVersionProvider) CurrentVersion() (kv.Version, error) {
|
||||
l.mu.Lock()
|
||||
defer l.mu.Unlock()
|
||||
var ts uint64
|
||||
|
||||
@ -191,7 +191,7 @@ func (txn *dbTxn) doCommit() error {
|
||||
}
|
||||
|
||||
// Check dirty store
|
||||
curVer, err := globalVerProvider.CurrentVersion()
|
||||
curVer, err := globalVersionProvider.CurrentVersion()
|
||||
if err != nil {
|
||||
return errors.Trace(err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user