aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2022-03-07 00:08:09 -0800
committerchrislu <chris.lu@gmail.com>2022-03-07 00:08:09 -0800
commitf7ee60996c433a596b0ea75961cc5f23c6663c6f (patch)
tree121f38cf6967c35f09c7d9f5d816d6b0d9bc4334
parent6f3ec989a7fe6e727059f2a4c53b944745d64038 (diff)
parent1e7fcef5816404371c52253110dfaeb00b9f0cbd (diff)
downloadseaweedfs-f7ee60996c433a596b0ea75961cc5f23c6663c6f.tar.xz
seaweedfs-f7ee60996c433a596b0ea75961cc5f23c6663c6f.zip
Merge branch 'master' of https://github.com/chrislusf/seaweedfs2.93
-rw-r--r--weed/server/filer_server_handlers_read.go11
1 files changed, 10 insertions, 1 deletions
diff --git a/weed/server/filer_server_handlers_read.go b/weed/server/filer_server_handlers_read.go
index 431eea979..17a6b3049 100644
--- a/weed/server/filer_server_handlers_read.go
+++ b/weed/server/filer_server_handlers_read.go
@@ -119,7 +119,16 @@ func (fs *FilerServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request)
return
}
- if r.URL.Query().Has("metadata") {
+ query := r.URL.Query()
+ if query.Get("metadata") == "true" {
+ if query.Get("resolveManifest") == "true" {
+ if entry.Chunks, _, err = filer.ResolveChunkManifest(
+ fs.filer.MasterClient.GetLookupFileIdFunction(),
+ entry.Chunks, 0, int64(entry.Size())); err != nil {
+ err = fmt.Errorf("failed to resolve chunk manifest, err: %s", err.Error())
+ writeJsonError(w, r, http.StatusInternalServerError, err)
+ }
+ }
writeJsonQuiet(w, r, http.StatusOK, entry)
return
}