-
Notifications
You must be signed in to change notification settings - Fork 317
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(log_store): introduce the IndexCollector
#4461
feat(log_store): introduce the IndexCollector
#4461
Conversation
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughThe changes introduce a comprehensive restructuring of the Kafka log storage system, enhancing index management and producer functionality. New traits and structures improve modularity, while error handling has been simplified. The implementation of background workers allows for asynchronous processing of produce requests, ensuring efficient data handling. Overall, these updates aim to bolster performance, maintainability, and clarity within the logging infrastructure. Changes
Sequence Diagram(s)sequenceDiagram
participant ClientManager
participant BackgroundProducerWorker
participant GlobalIndexCollector
participant KafkaProvider
ClientManager->>BackgroundProducerWorker: Create producer with region_id
BackgroundProducerWorker->>GlobalIndexCollector: Use global index collector
BackgroundProducerWorker->>KafkaProvider: Produce records
KafkaProvider-->>BackgroundProducerWorker: Confirmation
BackgroundProducerWorker->>GlobalIndexCollector: Update index with produced results
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? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configuration File (
|
IndexCollector
e67c433
to
708d5bc
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #4461 +/- ##
==========================================
- Coverage 85.01% 84.67% -0.34%
==========================================
Files 1084 1090 +6
Lines 193863 194321 +458
==========================================
- Hits 164806 164543 -263
- Misses 29057 29778 +721 |
6e373d6
to
54df541
Compare
54df541
to
83567cf
Compare
@coderabbitai summary |
Actions performedSummary regeneration triggered. |
@fengjiachun @v0y4g3r PTAL |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
* feat: introduce the IndexCollector * refactor: separate BackgroundProducerWorker code into files * feat: introduce index related operations * feat: introduce the `GlobalIndexCollector` * refactor: move collector to index mod * refactor: refactor `GlobalIndexCollector` * chore: remove unused collector.rs * chore: add comments * chore: add comments * chore: apply suggestions from CR * chore: apply suggestions from CR
I hereby agree to the terms of the GreptimeDB CLA.
Refer to a related PR or issue link (optional)
#4385
What's changed and what's your intention?
BackgroundProducerWorker
into filesIndexCollector
to collect WAL EntryIdsChecklist
Summary by CodeRabbit
New Features
produce
method to include region-specific context for better data processing.Bug Fixes
Documentation
Refactor
Chores