Skip to content

Commit 71e959a

Browse files
committed
fix data race related to VersionExists (#36)
* fix data race related to VersionExists * use regular lock instead of RW in mutable_tree.go
1 parent b4f8932 commit 71e959a

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

mutable_tree.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ type MutableTree struct {
3737
unsavedFastNodeRemovals map[string]interface{} // FastNodes that have not yet been removed from disk
3838
ndb *nodeDB
3939

40-
mtx sync.RWMutex // versions Read/write lock.
40+
mtx sync.Mutex
4141
}
4242

4343
// NewMutableTree returns a new tree with the specified cache size and datastore.
@@ -88,8 +88,8 @@ func (tree *MutableTree) VersionExists(version int64) bool {
8888

8989
// AvailableVersions returns all available versions in ascending order
9090
func (tree *MutableTree) AvailableVersions() []int {
91-
tree.mtx.RLock()
92-
defer tree.mtx.RUnlock()
91+
tree.mtx.Lock()
92+
defer tree.mtx.Unlock()
9393

9494
res := make([]int, 0, len(tree.versions))
9595
for i, v := range tree.versions {

0 commit comments

Comments
 (0)