-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Added telemetry injection point for Ask<T>
#5297
Conversation
Looking for a way to help trace timeouts inside `Ask<T>` operations - needed some way to tap into the `TaskCompletionSource` and to create an active `ISpan` before the operation begins.
@@ -1561,8 +1561,9 @@ public void StopSeedNodeProcess() | |||
/// Received `Join` message and replies with `Welcome` message, containing | |||
/// current gossip state, including the new joining member. | |||
/// </summary> | |||
/// <param name="node">TBD</param> | |||
/// <param name="roles">TBD</param> | |||
/// <param name="node">The unique address of the joining node.</param> |
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.
Unrelated XML-DOC fix I made to resolve a compiler warning.
/// <typeparam name="T">The type of output this <see cref="FutureActorRef{T}"/> expects.</typeparam> | ||
/// <returns>A new, single-use <see cref="FutureActorRef{T}"/> instance.</returns> | ||
[InternalApi] | ||
FutureActorRef<T> CreateFutureRef<T>(TaskCompletionSource<T> tcs); |
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.
New InternalApi
, but still public
member on the IActorRefProvider
interface. This is our injection point.
//create a new tempcontainer path | ||
var path = provider.TempPath(); | ||
|
||
var future = new FutureActorRef<T>(result, path, provider); |
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.
Moved these two lines to the factory method - all of the TCS setup is left as-is.
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.
LGTM
@Arkatufus thanks - still integration testing this with Phobos to make sure it actually works first. |
Validated this on our end - looking good there. |
Looking for a way to help trace timeouts inside
Ask<T>
operations - needed some way to tap into theTaskCompletionSource
and to create an activeISpan
before the operation begins.