[5.8][Distributed] correct take semantics for synthesized ID assignments #63780
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.
Description: This is a regression and is crashing the cluster library build as reported in #62898. This code was always there and slightly wrong in some cases. SIL verification seems to not be enabled on macos releases however developers hit the issue when using a nightly toolchain; the issue also appears in Linux where assertions are turned on.
Risk: Low, and also confirmed using distributed cluster library that the changes are correct.
Review by: @xedin @drexin, @eeckstein helped come up with the diagnosis and solution
Testing: Verified this resolves the reproducer reported in the issue (using the distributed cluster library); Added added tests covering the not previously covered code paths.
Original PR: #63779
Radar: rdar://104583893