aboutsummaryrefslogtreecommitdiff
path: root/weed/server/filer_server_handlers_write.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2019-09-11 20:26:20 -0700
committerChris Lu <chris.lu@gmail.com>2019-09-11 20:26:20 -0700
commitae53f636804e41c2c7a0817e8f35434a00b6eacb (patch)
tree82bbdbcf4b454cb506934847e26076cfdd79e4b7 /weed/server/filer_server_handlers_write.go
parent5e9c65469ecf3356fa02b1cef246d83abdb02d14 (diff)
downloadseaweedfs-ae53f636804e41c2c7a0817e8f35434a00b6eacb.tar.xz
seaweedfs-ae53f636804e41c2c7a0817e8f35434a00b6eacb.zip
filer: recursive deletion optionally ignoring any errors
fix https://github.com/chrislusf/seaweedfs/issues/1062
Diffstat (limited to 'weed/server/filer_server_handlers_write.go')
-rw-r--r--weed/server/filer_server_handlers_write.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/weed/server/filer_server_handlers_write.go b/weed/server/filer_server_handlers_write.go
index 0bf1218ce..b419c51af 100644
--- a/weed/server/filer_server_handlers_write.go
+++ b/weed/server/filer_server_handlers_write.go
@@ -269,11 +269,13 @@ func (fs *FilerServer) uploadToVolumeServer(r *http.Request, u *url.URL, auth se
// curl -X DELETE http://localhost:8888/path/to
// curl -X DELETE http://localhost:8888/path/to?recursive=true
+// curl -X DELETE http://localhost:8888/path/to?recursive=true&ignoreRecursiveError=true
func (fs *FilerServer) DeleteHandler(w http.ResponseWriter, r *http.Request) {
isRecursive := r.FormValue("recursive") == "true"
+ ignoreRecursiveError := r.FormValue("ignoreRecursiveError") == "true"
- err := fs.filer.DeleteEntryMetaAndData(context.Background(), filer2.FullPath(r.URL.Path), isRecursive, true)
+ err := fs.filer.DeleteEntryMetaAndData(context.Background(), filer2.FullPath(r.URL.Path), isRecursive, ignoreRecursiveError,true)
if err != nil {
glog.V(1).Infoln("deleting", r.URL.Path, ":", err.Error())
writeJsonError(w, r, http.StatusInternalServerError, err)