-
Notifications
You must be signed in to change notification settings - Fork 301
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
DAOS-13216 dfuse: Add a pre-read feature for non-cached files. #12015
Merged
Merged
Changes from 6 commits
Commits
Show all changes
45 commits
Select commit
Hold shift + click to select a range
709d5c9
DAOS-0000 dfuse: Add a pre-read feature for non-cached files.
ashleypittman b3af6ba
Skip some logging.
ashleypittman 5134632
Fix a potential crash on free.
ashleypittman 6e8f258
Add some comments on testing.
ashleypittman 332628c
Fix another crash.
ashleypittman ade793e
Fix another crash.
ashleypittman 2871a77
Fix compile.
ashleypittman f6110ae
Merge branch 'master' into amd/pre-read
ashleypittman 3b9de4a
Test properly with seperate data cache times.
ashleypittman 0da5cfd
Fix a formatting issue.
ashleypittman 2b042fa
Merge branch 'master' into amd/pre-read
ashleypittman ce17d7a
Merge branch 'master' into amd/pre-read
ashleypittman ea1784a
Update to read up to max buffer size.
ashleypittman 4d90774
Merge branch 'master' into amd/pre-read
ashleypittman 3e0e986
Merge branch 'master' into amd/pre-read
ashleypittman db037f3
Merge branch 'master' into amd/pre-read
ashleypittman 049e4cf
Merge branch 'master' into amd/pre-read
ashleypittman 23cd4b0
Merge branch 'master' into amd/pre-read
ashleypittman 0b6c159
fix formatting
ashleypittman 899dc22
Merge branch 'master' into amd/pre-read
ashleypittman 26e0c8d
Merge branch 'master' into amd/pre-read
ashleypittman 9bb0a49
Merge branch 'master' into amd/pre-read
ashleypittman 5bdfa4f
Merge branch 'master' into amd/pre-read
ashleypittman 27c4e7d
Improve the decision on when to readahead.
ashleypittman 59a4bb2
Merge branch 'master' into amd/pre-read
ashleypittman 238a793
Update comment.
ashleypittman 7b8aafd
DAOS-13493 rebuild: upgrate the whole group (#12550)
fd554cd
DAOS-13471 control: Add JSON-format version to utilities (#12508)
mjmac e636b7a
DAOS-13471 control: Fix conflict with go build. (#12574)
ashleypittman 8b0a3e3
Add metrics for testing.
ashleypittman a8a3d8f
Fix error path.
ashleypittman beae16e
Back out metrics.
ashleypittman d99b473
Merge branch 'master' into amd/pre-read
ashleypittman 554c3cf
Merge branch 'master' into amd/pre-read
ashleypittman 0f1fc21
Fix merge.
ashleypittman 7a31d3f
Merge branch 'master' into amd/pre-read
ashleypittman 7a362a1
Merge branch 'master' into amd/pre-read
ashleypittman 6005826
Merge branch 'master' into amd/pre-read
ashleypittman 0d17e1c
Merge branch 'master' into amd/pre-read
ashleypittman 3756450
Merge branch 'master' into amd/pre-read
ashleypittman 87ef42b
Merge branch 'master' into amd/pre-read
ashleypittman 036d047
Merge branch 'master' into amd/pre-read
ashleypittman 931b578
Merge branch 'master' into amd/pre-read
ashleypittman 661c033
Merge branch 'master' into amd/pre-read
ashleypittman 4d3f28e
Merge branch 'master' into amd/pre-read
ashleypittman File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
So "linear read" is synonymous with "readahead"?
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.
Apparently yes. This PR started are read-ahead after the first read before I realised that the speculative read could happen on open. This is debugging so I think it's Ok though.
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.
I was thinking from the perspective of the variable names, etc., but not asking you to change this
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.
https://github.com/daos-stack/daos/blob/master/src/client/dfuse/dfuse.h#L117-L126
linear read
means the file was opened, read from start to end without seeking and closed. We already track this to short-circuit the last zero-length read so we use that data to know if to use the pre-read buffer.