Skip to content
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

fix: wait for profiling session shutdown #3966

Merged
merged 1 commit into from
Feb 18, 2025
Merged

Conversation

vaind
Copy link
Collaborator

@vaind vaind commented Feb 13, 2025

This was reproducible on Linux in our tests, although they did not fail:

error: There is no currently active test.
    Test: Sentry.Profiling.Tests.SamplingTransactionProfilerTests.EventPipeSession_ReceivesExpectedCLREvents
    Message: [Warning 00:00:01.05]: Error during sampler profiler EventPipeSession processing.
    Exception: System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'Microsoft.Diagnostics.NETCore.Client.ExposedSocketNetworkStream'.
   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 count)
   at FastSerialization.IOStreamStreamReader.Fill(Int32 minimum) in /home/ivan/dev/sentry-dotnet/modules/perfview/src/FastSerialization/StreamReaderWriter.cs:line 872
   at FastSerialization.MemoryStreamReader.ReadByte() in /home/ivan/dev/sentry-dotnet/modules/perfview/src/FastSerialization/StreamReaderWriter.cs:line 79
   at FastSerialization.Deserializer.ReadTag() in /home/ivan/dev/sentry-dotnet/modules/perfview/src/FastSerialization/FastSerialization.cs:line 2139
   at FastSerialization.Deserializer.FindEndTag(SerializationType type, IFastSerializable objectBeingDeserialized) in /home/ivan/dev/sentry-dotnet/modules/perfview/src/FastSerialization/FastSerialization.cs:line 2037
   at FastSerialization.Deserializer.ReadObjectDefinition(Tags tag, StreamLabel objectLabel) in /home/ivan/dev/sentry-dotnet/modules/perfview/src/FastSerialization/FastSerialization.cs:line 1964
   at FastSerialization.Deserializer.ReadObject() in /home/ivan/dev/sentry-dotnet/modules/perfview/src/FastSerialization/FastSerialization.cs:line 1411
   at Microsoft.Diagnostics.Tracing.EventPipeEventSource.Process() in /home/ivan/dev/sentry-dotnet/modules/perfview/src/TraceEvent/EventPipe/EventPipeEventSource.cs:line 160
   at Microsoft.Diagnostics.Tracing.Etlx.TraceLogEventSource.Process() in /home/ivan/dev/sentry-dotnet/modules/perfview/src/TraceEvent/TraceLog.cs:line 4519
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)

#skip-changelog

@vaind vaind marked this pull request as ready for review February 14, 2025 07:45
@vaind vaind merged commit c6a5d4a into main Feb 18, 2025
24 of 25 checks passed
@vaind vaind deleted the fix/profile-session-shutdown branch February 18, 2025 08:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants