[new] Re-enable Snappy compressor
Upstream safety issue has been resolved, Ref. <https://github.com/airlift/aircompressor/issues/183>.
This commit is contained in:
parent
7be9b4f789
commit
cb0b871fe8
3 changed files with 20 additions and 12 deletions
|
|
@ -337,7 +337,7 @@
|
||||||
compression/lz4-compressor
|
compression/lz4-compressor
|
||||||
compression/lz4hc-compressor
|
compression/lz4hc-compressor
|
||||||
#_compression/lzo-compressor
|
#_compression/lzo-compressor
|
||||||
#_compression/snappy-compressor ; Can be unsafe
|
compression/snappy-compressor
|
||||||
compression/lzma2-compressor
|
compression/lzma2-compressor
|
||||||
|
|
||||||
encryption/encrypt
|
encryption/encrypt
|
||||||
|
|
|
||||||
|
|
@ -201,13 +201,16 @@
|
||||||
See `taoensso.nippy-benchmarks` for detailed comparative benchmarks."
|
See `taoensso.nippy-benchmarks` for detailed comparative benchmarks."
|
||||||
(LZMA2Compressor. 0))
|
(LZMA2Compressor. 0))
|
||||||
|
|
||||||
|
(enc/def* snappy-compressor
|
||||||
|
"Default `Snappy` compressor:
|
||||||
|
- Compression ratio: `C` (0.58 on reference benchmark).
|
||||||
|
- Compression speed: `A+` (206 msecs on reference benchmark).
|
||||||
|
- Decompression speed: `B` (134 msecs on reference benchmark).
|
||||||
|
Good general-purpose compressor, favours speed.
|
||||||
|
See `taoensso.nippy-benchmarks` for detailed comparative benchmarks."
|
||||||
|
(SnappyCompressor. false))
|
||||||
|
|
||||||
(enc/def* ^:no-doc lz4hc-compressor
|
(enc/def* ^:no-doc lz4hc-compressor
|
||||||
"Different LZ4 modes no longer supported, prefer `lz4-compressor`."
|
"Different LZ4 modes no longer supported, prefer `lz4-compressor`."
|
||||||
{:deprecated "v3.4.0-RC1 (2024-02-06)"}
|
{:deprecated "v3.4.0-RC1 (2024-02-06)"}
|
||||||
(LZ4Compressor.))
|
(LZ4Compressor.))
|
||||||
|
|
||||||
(enc/def* ^:no-doc snappy-compressor
|
|
||||||
"Snappy compressor no longer recommended, prefer `lz4-compressor`.
|
|
||||||
Decompression can be unsafe against untrusted data!"
|
|
||||||
{:deprecated "v3.4.0-RC1 (2024-02-06)"}
|
|
||||||
(SnappyCompressor. false))
|
|
||||||
|
|
|
||||||
|
|
@ -423,16 +423,21 @@
|
||||||
;;;; Compressors
|
;;;; Compressors
|
||||||
|
|
||||||
(deftest _compressors
|
(deftest _compressors
|
||||||
|
(println "\nTesting decompression of random data...")
|
||||||
(doseq [c [compr/zstd-compressor
|
(doseq [c [compr/zstd-compressor
|
||||||
compr/lz4-compressor
|
compr/lz4-compressor
|
||||||
compr/lzo-compressor
|
compr/lzo-compressor
|
||||||
#_compr/snappy-compressor ; Ref. <https://github.com/airlift/aircompressor/issues/183>
|
compr/snappy-compressor
|
||||||
compr/lzma2-compressor]]
|
compr/lzma2-compressor]]
|
||||||
|
|
||||||
(dotimes [_ 2e4]
|
(print (str " With " (name (compr/header-id c)))) (flush)
|
||||||
(is
|
(dotimes [_ 5] ; Slow, a few k laps should be sufficient for CI
|
||||||
(nil? (enc/catching (compr/decompress c (crypto/rand-bytes 1024))))
|
(print ".") (flush)
|
||||||
"Decompression never crashes JVM, even against invalid data"))))
|
(dotimes [_ 1000]
|
||||||
|
(is
|
||||||
|
(nil? (enc/catching (compr/decompress c (crypto/rand-bytes 1024))))
|
||||||
|
"Decompression never crashes JVM, even against invalid data")))
|
||||||
|
(println)))
|
||||||
|
|
||||||
;;;; Benchmarks
|
;;;; Benchmarks
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue