diff options
| -rw-r--r-- | weed/filer/embedded_filer/filer_embedded.go | 5 | ||||
| -rw-r--r-- | weed/server/volume_server_handlers_read.go | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/weed/filer/embedded_filer/filer_embedded.go b/weed/filer/embedded_filer/filer_embedded.go index 27299eb40..4a335058b 100644 --- a/weed/filer/embedded_filer/filer_embedded.go +++ b/weed/filer/embedded_filer/filer_embedded.go @@ -5,6 +5,7 @@ import ( "fmt" "path/filepath" "strings" + "sync" "github.com/chrislusf/seaweedfs/weed/filer" "github.com/chrislusf/seaweedfs/weed/operation" @@ -14,6 +15,7 @@ type FilerEmbedded struct { master string directories *DirectoryManagerInMap files *FileListInLevelDb + mvMutex sync.Mutex } func NewFilerEmbedded(master string, dir string) (filer *FilerEmbedded, err error) { @@ -121,6 +123,9 @@ mv fromFile toDir mv fromFile toFile */ func (filer *FilerEmbedded) Move(fromPath string, toPath string) error { + filer.mvMutex.Lock() + defer filer.mvMutex.Unlock() + if _, dir_err := filer.FindDirectory(fromPath); dir_err == nil { if _, err := filer.FindDirectory(toPath); err == nil { // move folder under an existing folder diff --git a/weed/server/volume_server_handlers_read.go b/weed/server/volume_server_handlers_read.go index b111fb1af..2e33b415c 100644 --- a/weed/server/volume_server_handlers_read.go +++ b/weed/server/volume_server_handlers_read.go @@ -165,7 +165,7 @@ func (vs *VolumeServer) FaviconHandler(w http.ResponseWriter, r *http.Request) { } func (vs *VolumeServer) tryHandleChunkedFile(n *storage.Needle, fileName string, w http.ResponseWriter, r *http.Request) (processed bool) { - if !n.IsChunkedManifest() { + if !n.IsChunkedManifest() || r.URL.Query().Get("cm") == "false" { return false } |
