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
AsyncMemoize: do not cancel and restart jobs that are being requested #16547
Closed
Closed
Changes from all commits
Commits
Show all changes
52 commits
Select commit
Hold shift + click to select a range
c3a6b0f
Improve AsyncMemoize tests
0101 de170ae
relax test condition
0101 af8fc6a
Revert "Cancellable: set token from node/async in features code (#163…
0101 0a9f728
remove UsingToken
0101 a03215e
remove UsingToken
0101 2ad0e81
test improvement
0101 5bdae17
test improvement
0101 c052c3f
Merge branch 'main' into revert-16348
0101 569b50a
Merge branch 'main' into improve-async-tests
0101 76223ff
Merge remote-tracking branch '0101/revert-16348' into asyncmemo
majocha f3f4559
Task.Yield
majocha 4a12103
relax test condition
0101 c511763
Merge branch 'revert-16348' of github.com:0101/fsharp into revert-16348
0101 8ee674c
relax test condition
0101 c1fb312
unindent a bit
majocha 77920a6
Merge remote-tracking branch '0101/revert-16348' into asyncmemo
majocha 1a66d72
fantomas
majocha a8201eb
draft release notes
majocha 8d00ee6
use thread-safe collections when collecting events from AsyncMemoize
0101 22cc080
use thread-safe collections when collecting events from AsyncMemoize
0101 da52d7c
try adding Cancellable.UsingToken in ProjectWorkflowBuilder
0101 058d256
Merge branch 'main' into revert-16348
0101 e0a81c6
this might be better
0101 de74123
sprinkle in some more Cancellable.UsingToken
0101 27b492a
revert
0101 ff13476
f
0101 adeeb88
Merge remote-tracking branch '0101/revert-16348' into asyncmemo
majocha a82f875
Merge branch 'main' into improve-async-tests
0101 6617652
Merge branch 'asyncmemo' of https://github.com/majocha/fsharp into as…
majocha 78048ce
only posted cancel requests
majocha 1cc0ffd
format
majocha 4319d1d
don't restart while there are requestors
majocha 9090f3f
add test
majocha 36ed2ab
no restart
majocha 607d1e1
wip rel notes
majocha 6a06ad1
merge from improve-async.tests
majocha 98e6271
Merge branch 'main' into asyncmemo-no-restart
majocha 6132eae
try to fix test
majocha 337ba5d
Merge branch 'asyncmemo-no-restart' of https://github.com/majocha/fsh…
majocha cb660ce
rel notes
majocha e23f203
fix flaky test
majocha e4e5b59
fix test again
majocha a6930de
Merge branch 'main' into asyncmemo-no-restart
0101 b152e6d
stringbuilder is not threadsafe
majocha 2e0fa2f
merge test fix
majocha 0001d0e
Merge branch 'main' into asyncmemo-no-restart
majocha c623ea8
try to fix test
majocha 73643fd
just in case
majocha 9fef34b
revert
majocha 41a849c
tests
majocha 298b8f0
Merge branch 'main' into asyncmemo-no-restart
majocha 010a418
try fix test
majocha File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
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
Large diffs are not rendered by default.
Oops, something went wrong.
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
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.
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.
Removing these bits looks suspicious to me. It's what keeps the needed parts of the compiler context when it switches threads.
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 think I just replaced it with what we use in production? (AwaitNodeCode)
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.
Now that I look at it, this code is different than
wrapThreadStaticInfo
.Here
DiagnosticsThreadStatics
of the calling thread are passed onto the new thread.In
wrapThreadStaticInfo
they are not:fsharp/src/Compiler/Facilities/BuildGraph.fs
Lines 16 to 26 in 3af3d41