diff --git a/index/store/moss/lower.go b/index/store/moss/lower.go index 52049f36..8405e794 100644 --- a/index/store/moss/lower.go +++ b/index/store/moss/lower.go @@ -187,14 +187,6 @@ func (s *llStore) update(ssHigher moss.Snapshot, maxBatchSize uint64) ( s.logf("llStore.update, i: %d", i) } - err = iter.Next() - if err == moss.ErrIteratorDone { - break - } - if err != nil { - return nil, err - } - ex, key, val, err := iter.CurrentEx() if err == moss.ErrIteratorDone { break @@ -227,6 +219,14 @@ func (s *llStore) update(ssHigher moss.Snapshot, maxBatchSize uint64) ( " unexpected operation, ex: %v", ex) } + err = iter.Next() + if err == moss.ErrIteratorDone { + break + } + if err != nil { + return nil, err + } + if maxBatchSize > 0 && i%maxBatchSize == 0 { err = kvWriter.ExecuteBatch(batch) if err != nil {