Skip to content
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

Conversation

joka921
Copy link
Member

@joka921 joka921 commented Feb 2, 2024

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.

Copy link

codecov bot commented Feb 2, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (ac9db29) 87.52% compared to head (7ae9551) 87.53%.

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.
📢 Have feedback on the report? Share it here.

Copy link

sonarqubecloud bot commented Feb 2, 2024

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

Copy link
Member

@hannahbast hannahbast left a 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

@hannahbast hannahbast changed the title Faster implementation very small index scans. For small index scans, avoid spurious copy of whole block Feb 5, 2024
@joka921 joka921 merged commit 60bf149 into ad-freiburg:master Feb 6, 2024
17 checks passed
hannahbast pushed a commit that referenced this pull request Feb 7, 2024
These are changes that I forgot to commit before
#1260 was merged.
hannahbast added a commit that referenced this pull request Feb 7, 2024
These are small changes that I forgot to commit before
#1260 was merged.
@joka921 joka921 deleted the faster-implementation-very-small-index-scans branch February 28, 2024 13:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants