btlqql opened a new pull request, #10626:
URL: https://github.com/apache/rocketmq/pull/10626

   ### Which Issue(s) This PR Fixes
   
   Fixes #9638
   
   ### Problem
   
   `mqadmin consumeMessage` uses `DefaultMQPullConsumer`, so operators who need 
to reproduce PushConsumer delivery behavior must compile and run a separate 
demo. That also makes it difficult to inspect live delivery metadata, per-queue 
progress, orderly consumption, and message tracing from the standard 
administration tool.
   
   ### Root Cause
   
   The tools module did not expose a PushConsumer-backed command or a bounded 
execution model suitable for both interactive diagnostics and automation.
   
   ### Changes
   
   - add `mqadmin consumeMessageByPush` backed by `DefaultMQPushConsumer`
   - support concurrent or orderly listeners, tag expressions, configurable 
batch size, first/last/timestamp start positions, and optional message tracing
   - support message-count and time limits while retaining an unlimited 
interactive mode
   - print message metadata, optional body/properties, and a deterministic 
per-queue progress summary
   - validate invalid booleans, ranges, charsets, trace settings, timestamp 
format, and wait-time overflow before starting the consumer
   - register the command in `MQAdminStartup`
   - add focused tests for command wiring, configuration validation, listener 
accounting, output formatting, shutdown, interruption, and failure paths
   
   ### Impact
   
   The change is isolated to the tools module. Existing commands and client 
APIs are unchanged. Operators can now diagnose PushConsumer behavior with the 
same `mqadmin` distribution used for other RocketMQ administration tasks.
   
   ### Validation
   
   - `mvn -pl tools 
-Dtest=PushConsumeMessageConfigTest,PushConsumeMessageObserverTest,PushConsumeMessagePrinterTest,PushConsumeMessageCommandTest
 -Dspotbugs.skip=true -Djacoco.skip=true test`
   - 47 tests passed
   - Checkstyle passed with 0 violations


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to