mirror of
https://github.com/octoleo/syncthing.git
synced 2024-09-20 05:39:02 +00:00
Refactor: use leveldb/util.BytesPrefix
This commit is contained in:
parent
3cc288a169
commit
6f2b4b96cf
@ -901,8 +901,6 @@ outer:
|
|||||||
func ldbListFolders(db *leveldb.DB) []string {
|
func ldbListFolders(db *leveldb.DB) []string {
|
||||||
runtime.GC()
|
runtime.GC()
|
||||||
|
|
||||||
start := []byte{keyTypeGlobal}
|
|
||||||
limit := []byte{keyTypeGlobal + 1}
|
|
||||||
snap, err := db.GetSnapshot()
|
snap, err := db.GetSnapshot()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
@ -917,7 +915,7 @@ func ldbListFolders(db *leveldb.DB) []string {
|
|||||||
snap.Release()
|
snap.Release()
|
||||||
}()
|
}()
|
||||||
|
|
||||||
dbi := snap.NewIterator(&util.Range{Start: start, Limit: limit}, nil)
|
dbi := snap.NewIterator(util.BytesPrefix([]byte{keyTypeGlobal}), nil)
|
||||||
defer dbi.Release()
|
defer dbi.Release()
|
||||||
|
|
||||||
folderExists := make(map[string]bool)
|
folderExists := make(map[string]bool)
|
||||||
@ -955,9 +953,7 @@ func ldbDropFolder(db *leveldb.DB, folder []byte) {
|
|||||||
}()
|
}()
|
||||||
|
|
||||||
// Remove all items related to the given folder from the device->file bucket
|
// Remove all items related to the given folder from the device->file bucket
|
||||||
start := []byte{keyTypeDevice}
|
dbi := snap.NewIterator(util.BytesPrefix([]byte{keyTypeDevice}), nil)
|
||||||
limit := []byte{keyTypeDevice + 1}
|
|
||||||
dbi := snap.NewIterator(&util.Range{Start: start, Limit: limit}, nil)
|
|
||||||
for dbi.Next() {
|
for dbi.Next() {
|
||||||
itemFolder := deviceKeyFolder(dbi.Key())
|
itemFolder := deviceKeyFolder(dbi.Key())
|
||||||
if bytes.Compare(folder, itemFolder) == 0 {
|
if bytes.Compare(folder, itemFolder) == 0 {
|
||||||
@ -967,9 +963,7 @@ func ldbDropFolder(db *leveldb.DB, folder []byte) {
|
|||||||
dbi.Release()
|
dbi.Release()
|
||||||
|
|
||||||
// Remove all items related to the given folder from the global bucket
|
// Remove all items related to the given folder from the global bucket
|
||||||
start = []byte{keyTypeGlobal}
|
dbi = snap.NewIterator(util.BytesPrefix([]byte{keyTypeGlobal}), nil)
|
||||||
limit = []byte{keyTypeGlobal + 1}
|
|
||||||
dbi = snap.NewIterator(&util.Range{Start: start, Limit: limit}, nil)
|
|
||||||
for dbi.Next() {
|
for dbi.Next() {
|
||||||
itemFolder := globalKeyFolder(dbi.Key())
|
itemFolder := globalKeyFolder(dbi.Key())
|
||||||
if bytes.Compare(folder, itemFolder) == 0 {
|
if bytes.Compare(folder, itemFolder) == 0 {
|
||||||
|
Loading…
Reference in New Issue
Block a user