-
Notifications
You must be signed in to change notification settings - Fork 21
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
Remove logstore family #281
Conversation
sanebay
commented
Jan 19, 2024
•
edited
Loading
edited
- Earlier logstore services have two fixed logstore families, 1 logdev under each family and family managing multiple logstores . This PR removes the logstore families indirection. Now we remove the logstore family class and let logstore service handles multiple logdev's and logdevs handle multiple logstores under it. Clients can now create multiple log devices each having its own state. This PR depends on the dynamic journal vdev PR. Earlier there were fixed number of metablks. Now we can have more metablks, one per logdev.
- Removed the LOG_REPLICATED and LOG_LOCAL and make it single LOG service.
- Move functionality of log store family of handling log stores to logdev class.
- We have a single journal vdev. All logdevices uses journal descriptors to talk to a single journal vdev. Each descriptor has its own list of chunks and state of the offset from a single journal vdev.
- Added api's to create/open logdev in logservice.
caeb941
to
4b45a01
Compare
4b45a01
to
a491acc
Compare
a491acc
to
25f245b
Compare
25f245b
to
389be5a
Compare
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.
Have some minor comments, but don't want to hold this PR merge. I am fine in merge this and we can adjust minor things in next checkin.
ad974d2
to
dfe3b53
Compare
Remove the fixed number of logstore families and instead dynamically create logdev and logstores under them. Logservice managers logdev's and logdev manages logstores. Create a single journal vdev and multiple logdev use the journal vdev with journal descriptor maintaing the state. Remove LOG_REPLICATED and LOG_LOCAL and use LOG service.
dfe3b53
to
371c2d9
Compare
Codecov ReportAttention:
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## master #281 +/- ##
==========================================
+ Coverage 60.95% 61.04% +0.08%
==========================================
Files 109 107 -2
Lines 9182 9197 +15
Branches 1185 1173 -12
==========================================
+ Hits 5597 5614 +17
- Misses 3052 3055 +3
+ Partials 533 528 -5 ☔ View full report in Codecov by Sentry. |