lib/db: Remove index ids when dropping folder (#7200)

This commit is contained in:
Simon Frei
2020-12-21 11:10:59 +01:00
committed by GitHub
parent d904dfa191
commit bd0c9913cf
4 changed files with 33 additions and 0 deletions
+7
View File
@@ -889,12 +889,19 @@ func (t readWriteTransaction) removeFromGlobal(gk, keyBuf, folder, device, file
}
func (t readWriteTransaction) deleteKeyPrefix(prefix []byte) error {
return t.deleteKeyPrefixMatching(prefix, func([]byte) bool { return true })
}
func (t readWriteTransaction) deleteKeyPrefixMatching(prefix []byte, match func(key []byte) bool) error {
dbi, err := t.NewPrefixIterator(prefix)
if err != nil {
return err
}
defer dbi.Release()
for dbi.Next() {
if !match(dbi.Key()) {
continue
}
if err := t.Delete(dbi.Key()); err != nil {
return err
}