diff options
| author | Chris Lu <chris.lu@gmail.com> | 2019-04-06 00:10:52 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2019-04-06 00:10:52 -0700 |
| commit | 94302935b2d2929f077c96b51de4287f8b63d816 (patch) | |
| tree | 0a9a24b50eb4f695038c3cb863893dae1b6edd9d | |
| parent | b2d92a29921775c8e9411fc31950e92656d328b9 (diff) | |
| download | seaweedfs-94302935b2d2929f077c96b51de4287f8b63d816.tar.xz seaweedfs-94302935b2d2929f077c96b51de4287f8b63d816.zip | |
weed volume: only store compressed data if compression is effective
| -rw-r--r-- | weed/storage/needle_parse_multipart.go | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/weed/storage/needle_parse_multipart.go b/weed/storage/needle_parse_multipart.go index e8d57ee38..3dba81fcf 100644 --- a/weed/storage/needle_parse_multipart.go +++ b/weed/storage/needle_parse_multipart.go @@ -88,10 +88,12 @@ func parseMultipart(r *http.Request) ( } isGzipped = true } else if operation.IsGzippable(ext, mtype, data) { - if data, e = operation.GzipData(data); e != nil { - return + if compressedData, err := operation.GzipData(data); err == nil { + if len(data) > len(compressedData) { + data = compressedData + isGzipped = true + } } - isGzipped = true } } |
