Conversation
CT Test Results 2 files 100 suites 1h 7m 15s ⏱️ Results for commit 8413ea4. ♻️ This comment has been updated with latest results. To speed up review, make sure that you have read Contributing to Erlang/OTP and that all checks pass. See the TESTING and DEVELOPMENT HowTo guides for details about how to run test locally. Artifacts
// Erlang/OTP Github Action Bot |
| Res -> | ||
| {flush, Output} -> | ||
| {_, Output2} = flush(Ctx, <<>>), | ||
| {continue, [Output | Output2]}; |
There was a problem hiding this comment.
This violates the spec too, the output has to be {continue, iovec(), binary()} or {continue, binary()}, we can't mix it up.
| {continue, [Output | Output2]}; | |
| {continue, iolist_to_binary([Output, Output2])}; |
There was a problem hiding this comment.
What happens if that output is sent directly to a file/socket, isn't the iolist_to_binary unnecessary there? Perhaps zstd can be updated to allow it to return more than binary() output?
Fix
zstd:flush/2introduced in #10511 @essen @jhogbergIn debug mode, the zstd NIF reduce the chunk size to 5 which causes the
zstd:flush/2function in thecstreamtestcase to return{flush, _}which causes the testcase to fail.{flush, _}is not a valid return value according to the docs.This PR prevents the testcase failure, but the change in this PR is a guess of what the
flush/2function should have done. I'm not sure if this fix is correct or complete.