-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Implement RandomAccess.FlushToDisk() #89100
Merged
Merged
Commits on Jul 18, 2023
-
Configuration menu - View commit details
-
Copy full SHA for eca321a - Browse repository at this point
Copy the full SHA eca321aView commit details -
This "platform-depedent" should read "platform-dependent". Co-authored-by: Dan Moseley <danmose@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for be1e81c - Browse repository at this point
Copy the full SHA be1e81cView commit details -
Declarations of class members in System.Runtime.cs should be in alphabetic order (see dotnet#89100 (comment)). Simplify comments on the call to "FileStreamHelpers.FlushToDisk()" (see dotnet#89100 (comment)).
Configuration menu - View commit details
-
Copy full SHA for 32dcdb2 - Browse repository at this point
Copy the full SHA 32dcdb2View commit details
Commits on Jul 20, 2023
-
This includes comments that: 1. Can become outdated if methods are renamed (see dotnet#89100 (comment)). 2. Are not absolutely critical (see dotnet#89100 (comment)). I also removed the mention of using FileOptions.WriteThrough as an alternative to RandomAccess.FlushToDisk(). This is an advanced scenario that can actually degrade performance if done incorrectly (i.e. if the user doesn't manage their own buffers such that all writes keep hitting the disk) so it's probably not wise to mention it unless we go into more detail than is ideal for inclusion in the Remarks section of an XML doc comment. To remove the lengthy comment in the ValidateInput() function I had to rename the optional parameter from "flushingToDisk" to the more generic and self-describing "allowUnseekableHandles" (see dotnet#89100 (comment)).
Configuration menu - View commit details
-
Copy full SHA for a7d6289 - Browse repository at this point
Copy the full SHA a7d6289View commit details
Commits on Jul 21, 2023
-
The differences between Unix and Windows when it comes to flushing unseekable handles is worth noting explicitly and the comment that did this was previously deleted but has now been restored with some minor edits to fit its new context (see dotnet@a7d6289#r1270505888).
Configuration menu - View commit details
-
Copy full SHA for 4748b8a - Browse repository at this point
Copy the full SHA 4748b8aView commit details -
Convert some tests to theories.
See the following discussions for the rationale: - dotnet#89100 (comment) - dotnet#89100 (comment) NOTE: the [MemberData] used by the theories returns one element in order to reduce the number of tests that need to run per build. Since the element is random, different builds will likely pick a different value allowing more variations to be tested over many build cycles.
Configuration menu - View commit details
-
Copy full SHA for 276f2c1 - Browse repository at this point
Copy the full SHA 276f2c1View commit details
Commits on Jul 24, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 8ab5bee - Browse repository at this point
Copy the full SHA 8ab5beeView commit details -
Avoid randomness in UpdatesFileLastWriteTime().
See the following: - dotnet#89100 (comment) - dotnet#89100 (comment)
Configuration menu - View commit details
-
Copy full SHA for 54a3215 - Browse repository at this point
Copy the full SHA 54a3215View commit details
Commits on Aug 4, 2023
-
Harmonize flushing of read-only files.
There is a difference in behaviour between FlushFileBuffers() on Windows and fsync() on Unix when it comes to read-only files. On Windows it fails with ERROR_ACCESS_DENIED while on Unix it just works. We made a decision to harmonize the platforms by making Windows behave like Unix (i.e. we catch and ignore the error if a user attempts to flush a file opened for reading, so it is effectively a no-op). See dotnet#89100 (comment)
Configuration menu - View commit details
-
Copy full SHA for 749d9b8 - Browse repository at this point
Copy the full SHA 749d9b8View commit details
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.