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

[Server] Use length returned by read and fix an alignment check in pgRead #1510

Merged
merged 1 commit into from
Sep 10, 2021

Conversation

smithdh
Copy link
Contributor

@smithdh smithdh commented Sep 7, 2021

Changes XrdOssDF and XrdOucCacheIO pgRead to use the length returned by read when calculating the checksums, rather than the requested read size. Believed to fix issue #1507 (due to XrdOucCacheIO pgRead).

Also removes an alignment check which may have been inadvertently re-added to XrdOucCacheIO::pgRead during a rebase.

Copy link
Member

@abh3 abh3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you David for catching this. An obvious and stupid mistake. That said, I did ask about the removal the the test for pgRead() as it seem at least the offset check should stay.

@smithdh
Copy link
Contributor Author

smithdh commented Sep 10, 2021

(some discussion going on by email with Andy & Matevz about the alignment check(s) in XrdOucCacheIO::pgRead)

Copy link
Member

@abh3 abh3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You are absolutely correct. Somewhere along the way we started using the CacheIO object for all IO requests, cache or not. Since pgRead and pgWrite were extended to be able to do unaligned reads and writes the change was indeed necessary.

@abh3 abh3 merged commit 9f846cd into xrootd:master Sep 10, 2021
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.

None yet

2 participants