jchristn/WatsonWebsocket

Stack Overflow

Closed this issue · 2 comments

I just noticed the following exception when checking our development server. There were like 5 clients connected and it seemed to happen after one disconnected. Any ideas what might have caused this issue?

Stack overflow.
at Interop+WebSocket.WebSocketCompleteAction(System.Runtime.InteropServices.SafeHandle, IntPtr, UInt32)
at System.Net.WebSockets.WebSocketProtocolComponent.WebSocketCompleteAction(System.Net.WebSockets.WebSocketBase, IntPtr, Int32)
at System.Net.WebSockets.WebSocketBase+WebSocketOperation+d__19.MoveNext()
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1+AsyncStateMachineBox1[[System.__Canon, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Net.WebSockets.WebSocketBase+WebSocketOperation+d__19, System.Net.HttpListener, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51]].MoveNext(System.Threading.Thread)
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(System.Runtime.CompilerServices.IAsyncStateMachineBox, Boolean)
at System.Threading.Tasks.Task.RunContinuations(System.Object)
at System.Threading.Tasks.Task.CancellationCleanupLogic()
at System.Threading.Tasks.Task.TrySetCanceled(System.Threading.CancellationToken, System.Object)
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[[System.Int32, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].SetException(System.Exception, System.Threading.Tasks.Task1 ByRef)
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1[[System.Int32, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].SetException(System.Exception) at System.Net.WebSockets.WebSocketHttpListenerDuplexStream+<ReadAsyncCore>d__30.MoveNext() at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object) at System.Runtime.CompilerServices.AsyncTaskMethodBuilder1+AsyncStateMachineBox1[[System.Int32, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Net.WebSockets.WebSocketHttpListenerDuplexStream+<ReadAsyncCore>d__30, System.Net.HttpListener, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51]].MoveNext(System.Threading.Thread) at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(System.Runtime.CompilerServices.IAsyncStateMachineBox, Boolean) at System.Threading.Tasks.Task.RunContinuations(System.Object) at System.Threading.Tasks.Task.CancellationCleanupLogic() at System.Threading.Tasks.Task.TrySetCanceled(System.Threading.CancellationToken, System.Object) at System.Threading.Tasks.TaskCompletionSource1[[System.Int32, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].TrySetCanceled(System.Threading.CancellationToken)
at System.Threading.Tasks.TaskCompletionSource`1[[System.Int32, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].TrySetCanceled()
at System.Net.WebSockets.WebSocketHttpListenerDuplexStream.OnCancel(System.Object)
at System.Threading.CancellationTokenSource+CallbackNode+<>c.b__9_0(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.CancellationTokenSource+CallbackNode.ExecuteCallback()
at System.Threading.CancellationTokenSource.ExecuteCallbackHandlers(Boolean)
at System.Threading.CancellationTokenSource.NotifyCancellation(Boolean)
at System.Threading.CancellationTokenSource.Cancel()
at System.Net.WebSockets.WebSocketBase+OutstandingOperationHelper.CancelIO()
at System.Net.WebSockets.WebSocketBase.Abort()
at System.Net.WebSockets.WebSocketBase.OnBackgroundTaskException(System.Exception)
at System.Net.WebSockets.WebSocketBase+d__77.MoveNext()
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[[System.Net.WebSockets.WebSocketBase+d__77, System.Net.HttpListener, Version=5.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51]](d__77 ByRef)
at System.Net.WebSockets.WebSocketBase.OnKeepAlive(System.Object)
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(System.Threading.Thread, System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.TimerQueueTimer.CallCallback(Boolean)
at System.Threading.TimerQueueTimer.Fire(Boolean)
at System.Threading.ThreadPoolWorkQueue.Dispatch()

Hi @venjirai from the stacktrace it looks like it's in the underlying layers. Can you reproduce it reliably? Steps? Cheers, Joel

Closing, please re-open if you can provide steps to reproduce.