Don't Compare Fiber Ids When Joining Fiber Refs #8333
Merged
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.
Currently we compare fiber identifiers when identifying the common ancestor of two fibers. However, in certain circumstances the order of fiber identifiers could not reflect the order in which fibers were created, for example if the system time was changed.
Since we are looking for the common ancestor between two fibers, we can instead reason that up to the common ancestor the ancestry of the two fibers must be the same and thus must have the same depth. So instead of comparing fiber identifiers we can simply drop an element from the longest ancestry if we haven't gotten to a common ancestor yet, or both if the depth is the same and we haven't gotten to a common ancestor yet.