-
Notifications
You must be signed in to change notification settings - Fork 60
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
For small index scans, avoid spurious copy of whole block #1260
For small index scans, avoid spurious copy of whole block #1260
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1260 +/- ##
==========================================
+ Coverage 87.52% 87.53% +0.01%
==========================================
Files 308 308
Lines 27909 27916 +7
Branches 3122 3123 +1
==========================================
+ Hits 24426 24437 +11
Misses 2346 2346
+ Partials 1137 1133 -4 ☔ View full report in Codecov by Sentry. |
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
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.
1-1 with Johannes, minor changes in documentation
…on-very-small-index-scans
These are changes that I forgot to commit before #1260 was merged.
These are small changes that I forgot to commit before #1260 was merged.
For small index scans, which read only a part of a single block, QLever so far made a copy of the whole block, even when the block was already in the block cache. This spurious copy is now avoided, so that, when the block is already in the cache, only the requested part is copied. In particular, this makes full index scans much faster and also helps other queries with
?s ?p ?o
where?s
is bound by the rest of the query.Note: There is potential for more performance gains for such scans, but we have other issues for now.