Merge pull request #1738 from qieqieplus/rocksdb

fix rocksdb crash when list directory
This commit is contained in:
Chris Lu 2021-01-07 02:26:41 -08:00 committed by GitHub
commit 07f4703bfc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -181,18 +181,12 @@ func enumerate(iter *gorocksdb.Iterator, prefix, lastKey []byte, includeLastKey
iter.Seek(prefix) iter.Seek(prefix)
} else { } else {
iter.Seek(lastKey) iter.Seek(lastKey)
if !includeLastKey { if !includeLastKey {
key := iter.Key().Data() if iter.Valid() {
if bytes.Equal(iter.Key().Data(), lastKey) {
if !bytes.HasPrefix(key, prefix) { iter.Next()
return nil }
} }
if bytes.Equal(key, lastKey) {
iter.Next()
}
} }
} }
@ -250,10 +244,6 @@ func (store *RocksDBStore) ListDirectoryPrefixedEntries(ctx context.Context, ful
if fileName == "" { if fileName == "" {
return true return true
} }
limit--
if limit < 0 {
return false
}
entry := &filer.Entry{ entry := &filer.Entry{
FullPath: weed_util.NewFullPath(string(fullpath), fileName), FullPath: weed_util.NewFullPath(string(fullpath), fileName),
} }