Merge pull request #2729 from banjiaojuhao/filer_metadata-resolve-manifest

filer: support get metadata with resolved manifest chunk
This commit is contained in:
Chris Lu 2022-03-07 00:05:46 -08:00 committed by GitHub
commit 1e7fcef581
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -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
}