From 616d144e72569bccd7880a31d5c2d6fe7cf29053 Mon Sep 17 00:00:00 2001 From: Klaus Post Date: Wed, 25 Dec 2019 07:29:23 -0800 Subject: [PATCH] Tweak singlesegment default Default single segment wasn't as intended. Tweak it to be enabled between Minimum Window and 1MB. For small sizes it adds 1-2 bytes of overhead, so we only add it above minimum window. --- zstd/encoder.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/zstd/encoder.go b/zstd/encoder.go index f413042f4e..9ab3aadbf2 100644 --- a/zstd/encoder.go +++ b/zstd/encoder.go @@ -433,7 +433,8 @@ func (e *Encoder) EncodeAll(src, dst []byte) []byte { }() enc.Reset() blk := enc.Block() - single := len(src) > 1<<20 + // Use single segments when above minimum window and below 1MB. + single := len(src) < 1<<20 && len(src) > MinWindowSize if e.o.single != nil { single = *e.o.single }