-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Sending large payload crashes EventPipe #50515
Comments
dotnet-issue-labeler
bot
added
the
untriaged
New issue has not been triaged by the area owner
label
Mar 31, 2021
sywhang
added
EventPipe
and removed
untriaged
New issue has not been triaged by the area owner
labels
Mar 31, 2021
Fixed via #50600. |
ghost
locked as resolved and limited conversation to collaborators
May 6, 2021
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Currently, EventPipe's buffer manager is capable of allocating up to 1MB buffer to save event payloads. But the EventPipeFile's block which is used to flush the buffer has a maximum size of 100 KB. This causes an event whose payload is small enough to fit in a EventPipe buffer ( < 1MB) but is larger than the max size of the block (> 100 KB) to crash with a call stack like this:
Note that in the previous C++ implementation, this would've led to the event simply getting dropped, but in the current C implementation we are using EP_UNREACHABLE() that puts us at this state. This is a regression from Preview 1 to Preview 2 which made the transition from C++ to C implementation of EventPipe.
cc @josalem
The text was updated successfully, but these errors were encountered: