The GitHub Actions job "Build and Run Tests by Maven" on 
rocketmq.git/fix/client-remoting-null-body has failed.
Run started by GitHub user zjncs (triggered by zjncs).

Head commit for run:
56cab2b99e9fb6ad5d325936473986d1765b9273 / zjncs <[email protected]>
[ISSUE #D11] Guard ClientRemotingProcessor against requests without body

checkTransactionState and consumeMessageDirectly wrap request.getBody()
in ByteBuffer without a null check, so a bodiless request makes the
client throw a NullPointerException inside processRequest. This is
reachable in practice: the broker side of CONSUME_MESSAGE_DIRECTLY
forwards the message it resolved by msgId, and when the offset no
longer maps to a stored message the forwarded request carries no body,
so the client NPEs on the admin's behalf instead of reporting the
problem.

Skip the transaction check with a warn (the broker re-checks later)
and answer SYSTEM_ERROR with an explicit remark for
consumeMessageDirectly.

Signed-off-by: zjncs <[email protected]>

Report URL: https://github.com/apache/rocketmq/actions/runs/34467112361

With regards,
GitHub Actions via GitBox

Reply via email to