mirror of
https://github.com/zulip/zulip.git
synced 2025-10-23 04:52:12 +00:00
cache: Use zstd compression level 9 for bmemcached compression.
This commit is contained in:
committed by
Tim Abbott
parent
33e6d78f3b
commit
9715f6c104
@@ -104,6 +104,7 @@ not_yet_fully_covered = [
|
|||||||
"zerver/lib/test_fixtures.py",
|
"zerver/lib/test_fixtures.py",
|
||||||
"zerver/lib/test_runner.py",
|
"zerver/lib/test_runner.py",
|
||||||
"zerver/lib/test_console_output.py",
|
"zerver/lib/test_console_output.py",
|
||||||
|
"zerver/lib/zstd_level9.py",
|
||||||
"zerver/openapi/curl_param_value_generators.py",
|
"zerver/openapi/curl_param_value_generators.py",
|
||||||
"zerver/openapi/javascript_examples.py",
|
"zerver/openapi/javascript_examples.py",
|
||||||
"zerver/openapi/python_examples.py",
|
"zerver/openapi/python_examples.py",
|
||||||
|
@@ -2,14 +2,15 @@ import pickle
|
|||||||
from functools import lru_cache
|
from functools import lru_cache
|
||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
import zstd
|
|
||||||
from django_bmemcached.memcached import BMemcached
|
from django_bmemcached.memcached import BMemcached
|
||||||
|
|
||||||
|
from zerver.lib import zstd_level9
|
||||||
|
|
||||||
|
|
||||||
@lru_cache(None)
|
@lru_cache(None)
|
||||||
def _get_bmemcached(location: str, param_bytes: bytes) -> BMemcached:
|
def _get_bmemcached(location: str, param_bytes: bytes) -> BMemcached:
|
||||||
params = pickle.loads(param_bytes) # noqa: S301
|
params = pickle.loads(param_bytes) # noqa: S301
|
||||||
params["OPTIONS"]["compression"] = zstd
|
params["OPTIONS"]["compression"] = zstd_level9
|
||||||
return BMemcached(location, params)
|
return BMemcached(location, params)
|
||||||
|
|
||||||
|
|
||||||
|
10
zerver/lib/zstd_level9.py
Normal file
10
zerver/lib/zstd_level9.py
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
from zstd import compress as original_compress
|
||||||
|
from zstd import decompress
|
||||||
|
|
||||||
|
__all__ = ["compress", "decompress"]
|
||||||
|
|
||||||
|
|
||||||
|
def compress(data: bytes, level: int | None = None) -> bytes:
|
||||||
|
if level is None:
|
||||||
|
level = 9
|
||||||
|
return original_compress(data, level)
|
Reference in New Issue
Block a user