-
Notifications
You must be signed in to change notification settings - Fork 9.8k
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
[WIP] *: Fully concurrent large reads #10472
Conversation
mvcc: add metrics to characterize backend expensive reads
*: add flag for backend expensive read limit
mvcc: Limit number of bbolt read transactions opened by committed reads
Codecov Report
@@ Coverage Diff @@
## master #10472 +/- ##
==========================================
- Coverage 71.67% 63.51% -8.17%
==========================================
Files 392 392
Lines 36495 36546 +51
==========================================
- Hits 26158 23212 -2946
- Misses 8517 11387 +2870
- Partials 1820 1947 +127
Continue to review full report at Codecov.
|
rtx, err := r.b.db.Begin(false) | ||
if err != nil { | ||
plog.Fatalf("cannot begin read tx (%s)", err) | ||
} |
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.
Do we want to also add zap here capnslog will be dropped in 3.4
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.
Good catch, I'll add it.
func (rt *concurrentReadTx) UnsafeRange(bucketName, key, endKey []byte, limit int64) ([][]byte, [][]byte) { | ||
bucket := rt.tx.Bucket(bucketName) | ||
if bucket == nil { | ||
plog.Fatalf("bucket %s does not exist", bucketName) |
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.
same
See #10523 for current efforts |
This is a WIP continuation of #9384.