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

[Pfc] Implement async read and readV from the perspective of XrdOucCacheIO. #1717

Merged
merged 13 commits into from
Jun 7, 2022

Conversation

osschar
Copy link
Contributor

@osschar osschar commented Jun 6, 2022

  • Implement async Read, pgRead, and ReadV.

  • Mark file as complete when final block is successfully written to disk.

  • Perform sync when file is completely downloaded, do not wait for final detach.

  • Adjust default block size down to 128 kB to be closer to async default of 64 kB.

  • Rename class IOEntireFile to IOFile.

  • IO: Use override for virtual methods.

  • File: Cache some frequently used variables in adjacent locations.

  • Info: Coalesce functions SetBufferSize/FileSizeAndCreationTime() into a single function as this all needs to happen at the same time.

  • Put pfc.blocksize into env XRDPFC.SEGSIZE.

osschar added 11 commits June 1, 2022 13:35
IO: Use override for virtual methods.

File: Cache some frequently used variables in adjacent locations.

Info: Coalesce functions SetBufferSize/FileSizeAndCreationTime() into
a single function as this all needs to happend at the same time.
Put pfc.blocksize into env XRDPFC.SEGSIZE.

Merge ReadV chunks from conscutive blocks if they are about to be requested
from the same source (disk or direct).

Remove commented out obsolete function declarations in XrdPfcFile.hh.
@osschar osschar requested a review from abh3 June 6, 2022 08:15
@osschar osschar merged commit 8caf77f into xrootd:master Jun 7, 2022
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

1 participant