fix(server): stop returning diagnostic messages of all invocations being placed #1132
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.
Context
If lots of invocations / tasks are being placed at the same time by the scheduler, it will broadcast placement issues for all invocations to all callers using block_until_done.
This results in leaking data about other tasks and can also result in lots of bandwidth being spent across all clients and tasks.
For example: a simple task can easily get megabytes of data.
What
Only returning diagnostic data related to the current invocation.
In the future, we should consider adding a way to toggle diagnostic messages in the server config.
Testing
Using:
I invoke the graph multiple times from multiple terminals to confirm each terminal was getting the scheduler diagnostic only once instead of once per pending tasks:
Contribution Checklist
make fmt
inpython-sdk/
.make fmt
inserver/
.