diff options
| author | tnextday <fw2k4@163.com> | 2015-12-02 16:35:16 +0800 |
|---|---|---|
| committer | tnextday <fw2k4@163.com> | 2015-12-02 16:35:16 +0800 |
| commit | d0e2475ecea97ac96ddbdc76f98a5de32e4a68ad (patch) | |
| tree | 1975074bc84c01a5179edc517ffd46b3e40c0a6e /go/weed | |
| parent | 2c0a7fe75e1e3c1a0f04ab22414d3054a3095078 (diff) | |
| download | seaweedfs-d0e2475ecea97ac96ddbdc76f98a5de32e4a68ad.tar.xz seaweedfs-d0e2475ecea97ac96ddbdc76f98a5de32e4a68ad.zip | |
`FilePart.Upload` use base name instead of full path
fix chunked file download error
Diffstat (limited to 'go/weed')
| -rw-r--r-- | go/weed/weed_server/volume_server_handlers_read.go | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/go/weed/weed_server/volume_server_handlers_read.go b/go/weed/weed_server/volume_server_handlers_read.go index d2375099f..6a7944d25 100644 --- a/go/weed/weed_server/volume_server_handlers_read.go +++ b/go/weed/weed_server/volume_server_handlers_read.go @@ -225,18 +225,22 @@ func (vs *VolumeServer) tryHandleChunkedFile(n *storage.Needle, fileName string, if !n.IsChunkedManifest() { return false } - processed = true raw, _ := strconv.ParseBool(r.FormValue("raw")) if raw { - w.Header().Set("Content-Type", "application/json") - w.Header().Set("Content-Length", strconv.Itoa(len(n.Data))) - if _, e := w.Write(n.Data); e != nil { - glog.V(0).Infoln("response write error:", e) + return false + } + processed = true + if n.IsGzipped(){ + var err error + if n.Data, err = storage.UnGzipData(n.Data); err != nil { + glog.V(0).Infoln("ungzip data error:", err, r.URL.Path) + return false } - return true } + chunkManifest, e := operation.LoadChunkedManifest(n.Data) if e != nil { + glog.V(0).Infoln("load chunked manifest error:", e) return false } ext := "" |
