aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2019-04-06 00:10:52 -0700
committerChris Lu <chris.lu@gmail.com>2019-04-06 00:10:52 -0700
commit94302935b2d2929f077c96b51de4287f8b63d816 (patch)
tree0a9a24b50eb4f695038c3cb863893dae1b6edd9d
parentb2d92a29921775c8e9411fc31950e92656d328b9 (diff)
downloadseaweedfs-94302935b2d2929f077c96b51de4287f8b63d816.tar.xz
seaweedfs-94302935b2d2929f077c96b51de4287f8b63d816.zip
weed volume: only store compressed data if compression is effective
-rw-r--r--weed/storage/needle_parse_multipart.go8
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
}
}