Fix bug related to minMatch in qzstd #77
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When using
ZSTD_compressSequences()
, it's important to make sure that the input sequences do not have any matches shorter thanZSTD_c_minMatch
. From the docs:Compression can fail if this condition is not satisfied, because zstd allocates memory for sequences using the assumption that all match lengths are >=
ZSTD_c_minMatch
.For QAT, this means we need to ensure that
ZSTD_c_minMatch
is not greater thang_sess_params.lz4s_mini_match
. That's what is accomplished by this PR.Setting
ZSTD_c_minMatch
won't affect software fallback compression, because qzstd.c is usingZSTD_compressCCtx()
, which ignores all parameter settings except for compression level.