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.
This took me quite a number of hours with the debugger to figure out.
The key parts are:
Arc
, they have a reference count.span_a.follows_from(span_b_id)
after span B has been closed, it will panic. Therefore, aSpan
with that ID must still be in scope.span_a.follows_from(span_b)
then span B will be consumed (and hence dropped) and converted into an ID before being passed to the function. This ID will no longer refer to a valid span in the Registry.The following both work:
span_a.follows_from(&span_b)
span_a.follows_from(span_b.id())