-
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
Akka.Actor: tuck all scheduled Tell
messages into IScheduledMsg
envelope
#6461
Akka.Actor: tuck all scheduled Tell
messages into IScheduledMsg
envelope
#6461
Conversation
Motivation for this is primarily telemetry - making it easier to determine what is and is not a scheduled message. I'd probably rather make this a 1.5.1 thing though since I think I need more time to let it cook... |
@Arkatufus if the tests look good, next thing we need to run are benchmarks - InMemoryPingPong and RemotePingPong, since this touches the hotpath in the |
RemotePingPong BenchmarkValues are a median of 5 runs New Code
Dev Branch
|
Akka.Benchmark PingPongBenchmarks ResultDev Branch
New Code
|
No negative performance impact - that's good. |
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.
Left some suggestions
namespace Akka.Actor.Scheduler | ||
{ | ||
[Akka.Annotations.InternalApiAttribute()] | ||
public interface IScheduledTellMsg : Akka.Actor.INoSerializationVerificationNeeded, Akka.Actor.IWrappedMessage { } |
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
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.
Fixing up some bad test changes - looks fine
Changes
Adds some overhead to actor message processing (minor), but makes it possible for us to detect scheduled messages and filter them out from telemetry. Doesn't need to ship as part of v1.5 - can be done after.
Checklist
For significant changes, please ensure that the following have been completed (delete if not relevant):