Closed mxsm closed 2 months ago
The changes focus on enhancing and optimizing various parts of the RocketMQ broker and store. Key updates include the addition of new methods and structs for handling consumer information, cold data flow control, and message filtering. Other modifications streamline the message pull logic and enhance the handling of topic queue mappings. Important updates also include the modernization of the RequestSource
enum and improvements to the message store functionalities and compaction logic.
Files/Modules | Change Summary |
---|---|
Cargo.toml | Added cfg-if = "1.0.0" dependency to rocketmq-broker . |
rocketmq-broker/src/client/manager/consumer_manager.rs |
Added a public method compensate_basic_consumer_info to ConsumerManager . |
rocketmq-broker/src/coldctr/cold_data_cg_ctr_service.rs |
Changed ColdDataCgCtrService to a unit struct, and added is_cg_need_cold_data_flow_ctr method. |
rocketmq-broker/src/filter/...retry_message_filter.rs , rocketmq-broker/src/filter/...rs |
Updated functions to return true instead of using todo!() . |
rocketmq-broker/src/processor/default_pull_message_result_handler.rs , pull_message_processor.rs |
Added imports and fields related to ColdDataCgCtrService , modified message handling logic, updated checks for broadcast and stream requests. |
rocketmq-broker/src/topic/.../topic_queue_mapping_manager.rs |
Revised logic for handling topic queue mappings, ensuring correct retrieval and processing. |
rocketmq-remoting/src/protocol/request_source.rs |
Updated RequestSource enum to include Unknown variant with value -2 and remapped SDK to Unknown . Implemented From<i32> for RequestSource . |
rocketmq-store/src/base/store_stats_service.rs |
Added get_message_transferred_msg_count method to StoreStatsService . |
rocketmq-store/src/kv.rs , rocketmq-store/src/kv/compaction_store.rs |
Added compaction_store module and CompactionStore struct with methods for creating instances and retrieving messages. |
rocketmq-store/src/log_file.rs , rocketmq-store/src/message_store/default_message_store.rs |
Added find_consume_queue method to RocketMQMessageStore trait. Updated DefaultMessageStore to include compaction_store field and implemented related methods in MessageStore trait. |
rocketmq-store/src/queue/single_consume_queue.rs |
Modified iterate_from_inner method to call self.iterate_from . |
(Not applicable or too varied to generate meaningful sequence diagrams.)
Objective (Issues) | Addressed | Explanation |
---|---|---|
Optimize pull message logic (#735) | ✅ | |
Add methods for consumer and compaction management (N/A) | ✅ | |
Enhance message filtering and cold data handling (N/A) | ✅ | |
Update RequestSource enum and store functionalities (N/A) |
✅ |
In the land of RocketMQ, Changes flutter, fresh and new, Pulls and filters, messages flow, Cold data dances, in a rhythmic show. Enum evolves, mappings bring cheer, Swift and strong, enhancements here! 🚀🐇
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
🚀Thanks for your contribution🎉. CodeRabbit(AI) will review your code first🔥
🚀Thanks for your contribution🎉. CodeRabbit(AI) will review your code first🔥
Attention: Patch coverage is 22.74368%
with 214 lines
in your changes missing coverage. Please review.
Project coverage is 27.94%. Comparing base (
e5330d1
) to head (e4efa93
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Which Issue(s) This PR Fixes(Closes)
Fixes #735
Brief Description
How Did You Test This Change?
Summary by CodeRabbit
New Features
Unknown
variant toRequestSource
enum, and updated variant mappings.Improvements
Bug Fixes
todo!()
statements to return proper values in several modules.ConsumeQueue
.