make view protection optimistic again, as there is a race window
This commit is contained in:
parent
da0feb3fa4
commit
095d7427ba
@ -432,9 +432,7 @@ func (s *SplitStore) View(cid cid.Cid, cb func([]byte) error) error {
|
||||
return cb(data)
|
||||
}
|
||||
|
||||
err := s.hot.View(cid,
|
||||
func(data []byte) error {
|
||||
// views are protected two-fold:
|
||||
// views are (optimistically) protected two-fold:
|
||||
// - if there is an active transaction, then the reference is protected.
|
||||
// - if there is no active transaction, active views are tracked in a
|
||||
// wait group and compaction is inhibited from starting until they
|
||||
@ -447,9 +445,7 @@ func (s *SplitStore) View(cid cid.Cid, cb func([]byte) error) error {
|
||||
defer wg.Done()
|
||||
}
|
||||
|
||||
return cb(data)
|
||||
})
|
||||
|
||||
err := s.hot.View(cid, cb)
|
||||
switch err {
|
||||
case bstore.ErrNotFound:
|
||||
if s.debug != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user