From 8c58b0d01764ad7df4a05f5d431657818804f9db Mon Sep 17 00:00:00 2001 From: bukton Date: Sun, 19 Apr 2020 00:31:49 +0700 Subject: [PATCH] filer mongodb delete folder children --- weed/filer2/mongodb/mongodb_store.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/weed/filer2/mongodb/mongodb_store.go b/weed/filer2/mongodb/mongodb_store.go index d0d8dcf2c..b9fbd7fa2 100644 --- a/weed/filer2/mongodb/mongodb_store.go +++ b/weed/filer2/mongodb/mongodb_store.go @@ -110,7 +110,9 @@ func (store *MongodbStore) FindEntry(ctx context.Context, fullpath util.FullPath func (store *MongodbStore) DeleteEntry(ctx context.Context, fullpath util.FullPath) error { - where := bson.M{"directory": fullpath} + dir, name := fullpath.DirAndName() + + where := bson.M{"directory": dir, "name": name} _, err := store.connect.Database(store.database).Collection(store.collectionName).DeleteOne(ctx, where) if err != nil { return fmt.Errorf("delete %s : %v", fullpath, err) @@ -121,6 +123,12 @@ func (store *MongodbStore) DeleteEntry(ctx context.Context, fullpath util.FullPa func (store *MongodbStore) DeleteFolderChildren(ctx context.Context, fullpath util.FullPath) error { + where := bson.M{"directory": fullpath} + _, err := store.connect.Database(store.database).Collection(store.collectionName).DeleteOne(ctx, where) + if err != nil { + return fmt.Errorf("delete %s : %v", fullpath, err) + } + return nil }