filer: leveldb store add auto recovery, report correct error

fix https://github.com/chrislusf/seaweedfs/issues/1326
This commit is contained in:
Chris Lu
2020-05-22 10:54:42 -07:00
parent ab4c9ac221
commit e5a0787653
4 changed files with 21 additions and 3 deletions

View File

@@ -5,6 +5,7 @@ import (
"log"
"github.com/syndtr/goleveldb/leveldb"
"github.com/syndtr/goleveldb/leveldb/errors"
"github.com/syndtr/goleveldb/leveldb/opt"
"github.com/syndtr/goleveldb/leveldb/util"
)
@@ -25,6 +26,9 @@ func main() {
}
db, err := leveldb.OpenFile(*dir, opts)
if errors.IsCorrupted(err) {
db, err = leveldb.RecoverFile(*dir, opts)
}
if err != nil {
log.Fatal(err)
}