mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
etcdserver: take read lock when cloning store
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
This commit is contained in:
parent
9b6c3e3378
commit
59ec251812
@ -747,7 +747,7 @@ func (s *store) SaveNoCopy() ([]byte, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *store) Clone() Store {
|
func (s *store) Clone() Store {
|
||||||
s.worldLock.Lock()
|
s.worldLock.RLock()
|
||||||
|
|
||||||
clonedStore := newStore()
|
clonedStore := newStore()
|
||||||
clonedStore.CurrentIndex = s.CurrentIndex
|
clonedStore.CurrentIndex = s.CurrentIndex
|
||||||
@ -756,7 +756,7 @@ func (s *store) Clone() Store {
|
|||||||
clonedStore.Stats = s.Stats.clone()
|
clonedStore.Stats = s.Stats.clone()
|
||||||
clonedStore.CurrentVersion = s.CurrentVersion
|
clonedStore.CurrentVersion = s.CurrentVersion
|
||||||
|
|
||||||
s.worldLock.Unlock()
|
s.worldLock.RUnlock()
|
||||||
return clonedStore
|
return clonedStore
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user