Fix: skip compressing if message is a batch one by paper777 · Pull Request #186 · apache/rocketmq-client-cpp
What is the purpose of the change
Currently, BatchMessage might be compressed like a normal Message (when it's size reached the point), and this compressing action will cause an sending error:
[2019-Sep-20 14:07:20.254324](error):processSendResponse error remark:java.lang.ArrayIndexOutOfBoundsException, java.util.zip.CRC32.update(CRC32.java:74), error code:1[processSendResponse:537]
[2019-Sep-20 14:07:20.254504](error):send error[sendMessageSync:381]
[2019-Sep-20 14:07:20.254706](error):msg: response is null,error:-1,in file </fakepath/rocketmq-client-cpp/src/MQClientAPIImpl.cpp> line:384[send:147]
Brief changelog
- Align to JAVA SDK: Skip compressing if message is a batch one. (You can refer to apache/rocketmq )
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.
- Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
- Format the pull request title like
[ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body. - Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
- Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when a cross-module dependency exists.
- If this contribution is large, please file an Apache Individual Contributor License Agreement.