[ISSUE #9343]♻️Inject remoting command factories into Broker request processors - #9346
Conversation
|
🔊@mxsm 🚀Thanks for your contribution🎉! 💡CodeRabbit(AI) will review your code first🔥! Note 🚨The code review suggestions from CodeRabbit are to be used as a reference only, and the PR submitter can decide whether to make changes based on their own judgment. Ultimately, the project management personnel will conduct the final code review💥. |
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (39)
WalkthroughThe pull request injects ChangesBroker factory injection
Estimated code review effort: 4 (Complex) | ~60 minutes Possibly related PRs
Poem
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Which Issue(s) This PR Fixes(Closes)
Brief Description
Inject the Broker-owned
RemotingCommandFactorythrough runtime composition, request processor contexts,Broker2Client, and fast-failure paths so each Broker instance controls command version and serialization defaults. Preserve compatibility constructors for external callers, route transport error and RPC response helpers through explicit factory-aware APIs, and add a production-source audit plus JSON/ROCKETMQ owner-default regression coverage.How Did You Test This Change?
cargo fmt -p <workspace-package> -- --checkfor all 28 root workspace packages (Windows-safe equivalent aftercargo fmt --all -- --checkhit OS error 206)cargo clippy --workspace --no-deps --all-targets --all-features -- -D warningscargo test -p rocketmq-broker --test remoting_command_factory_owner_auditcargo test -p rocketmq-broker consume_message_directly_returns_offline_error_for_known_message --libcargo test -p rocketmq-broker invoke_broker_to_get_consumer_status_returns_offline_group_error --libcargo test -p rocketmq-broker invoke_broker_to_reset_offset_preserves_factory --libcargo test -p rocketmq-broker --lib -- --skip processor::send_message_processor::capability::tests::extended_timer_capability_is_published_from_one_policy_generationcargo test -p rocketmq-transport --libcargo test -p rocketmq-protocol --test remoting_wire_goldencargo doc -p rocketmq-broker -p rocketmq-transport --no-depscargo +nightly-2026-07-05 check --locked --all-targets --all-featuresfromfuzz/rocketmq-example: per-package format check andcargo clippy --all-targets -- -D warningsrocketmq-mcp: per-package format check, read-only boundary check, locked check/tests/all-feature tests, Streamable HTTP Clippy, and docs.\scripts\runtime-audit.ps1 -SkipBaseline -EnforceBoundaryBaseline.\scripts\check-error-hygiene.ps1git diff --checkThe unmodified Broker baseline test
processor::send_message_processor::capability::tests::extended_timer_capability_is_published_from_one_policy_generationfails identically onmain; the remaining 803 Broker library tests pass when that known baseline failure is skipped.Summary by CodeRabbit