A122: zstd message compression - #562
Conversation
|
Two things that may help move this along: a process note, and some measured data The comment period may not have startedThe header still reads Measured data from a production systemThe Rationale currently argues the ratio/CPU tradeoff qualitatively ("gzip is CPU-heavy
Three observations, including one that cuts against the current wording:
Caveats, so this is weighed correctly: Python bindings over C zlib and C libzstd rather than Happy to re-run this on a larger corpus, on aarch64 Linux, or against C-core directly if that |
|
Thank you for the submission. Unfortunately, the content here appears heavily AI-authored. Primarily: this design is extremely long and has a very low signal:noise ratio, so it could benefit from a significant human rewrite. The original content and also the follow-up comment both appear to be in violation of the team's AI contribution guidelines: Generative AI PolicyAI tools have the ability to produce more code than is possible for the gRPC
In addition to the above requirements, any AI-assisted contributions must also |
A122: zstd message compression
gRFC for a first-class, cross-language
zstdmessage codec (grpc-encoding: zstd). Per-message RFC 8878 frames. No dictionaries, skippable frames, or concatenated frames in the gRPC profile.Blocked grpc/grpc#26460 and grpc/grpc#41813 pending this design.
Summary
zstd(IANA / RFC 8878); magic0xFD2FB528; Dictionary_ID 0grpc-encoding, per-message Compressed-Flag (existing model)GRPC_COMPRESS_ZSTD; PythonCompression.Zstd; Java optional artifact; Goencoding/zstdGRPC_EXPERIMENTAL_ZSTD_COMPRESSION; Java/Go use artifact/import as the flagC-core, Java, and Go language owners should review.