-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Description
I have a redis server and client applications are using StackExchange.Redis nuget package.
Randomly I am losing connection to Redis server with the exception below:
Exception in the client :
[13:11:19.895] [ERR] { ThreadId: 60 } No connection is active/available to service this operation: GET CH:coreGetCNCDeviceByMachine-1947848840; An established connection was aborted by the software in your host machine, mc: 1/1/0, mgr: 10 of 10 available, clientName: XXXXXXXXXXXXX, IOCP: (Busy=0,Free=1000,Min=16,Max=1000), WORKER: (Busy=2,Free=32765,Min=16,Max=32767), v: 2.2.88.56325
StackExchange.Redis.RedisConnectionException: No connection is active/available to service this operation: GET CH:coreGetCNCDeviceByMachine-1947848840; An established connection was aborted by the software in your host machine, mc: 1/1/0, mgr: 10 of 10 available, clientName: EPDI-WEB01b71cfb44-36bf-4694-8a03-23c35315ff4c, IOCP: (Busy=0,Free=1000,Min=16,Max=1000), WORKER: (Busy=2,Free=32765,Min=16,Max=32767), v: 2.2.88.56325 ---> StackExchange.Redis.RedisConnectionException: SocketFailure (ReadEndOfStream, 0-read, last-recv: 0) on XXXXXXXXXXX/Subscription, Flushing/NotStarted, last: SUBSCRIBE, origin: OnEstablishingAsyncAwaited, outstanding: 3, last-read: 0s ago, last-write: 0s ago, keep-alive: 60s, state: ConnectedEstablishing, mgr: 10 of 10 available, last-heartbeat: never, global: 0s ago, v: 2.2.88.56325 ---> System.Net.Sockets.SocketException: An established connection was aborted by the software in your host machine
at Pipelines.Sockets.Unofficial.Internal.Throw.Socket(Int32 errorCode) in //src/Pipelines.Sockets.Unofficial/Internal/Throw.cs:line 59
at Pipelines.Sockets.Unofficial.SocketAwaitableEventArgs.GetResult() in //src/Pipelines.Sockets.Unofficial/SocketAwaitableEventArgs.cs:line 74
at Pipelines.Sockets.Unofficial.SocketConnection.d__81.MoveNext() in //src/Pipelines.Sockets.Unofficial/SocketConnection.Send.cs:line 64
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.IO.Pipelines.PipeCompletion.ThrowLatchedException()
at System.IO.Pipelines.Pipe.GetFlushResult(FlushResult& result)
at System.IO.Pipelines.Pipe.PrepareFlush(CompletionData& completionData, ValueTask1& result, CancellationToken cancellationToken) at System.IO.Pipelines.Pipe.FlushAsync(CancellationToken cancellationToken) at System.IO.Pipelines.Pipe.DefaultPipeWriter.FlushAsync(CancellationToken cancellationToken) at Pipelines.Sockets.Unofficial.SocketConnection.WrappedWriter.FlushAsync(CancellationToken cancellationToken) in /_/src/Pipelines.Sockets.Unofficial/SocketConnection.cs:line 432 at StackExchange.Redis.PhysicalConnection.FlushAsync() in /_/src/StackExchange.Redis/PhysicalConnection.cs:line 286 at StackExchange.Redis.ServerEndPoint.<HandshakeAsync>d__120.MoveNext() in /_/src/StackExchange.Redis/ServerEndPoint.cs:line 885 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at StackExchange.Redis.ServerEndPoint.<OnEstablishingAsyncAwaited>d__97.MoveNext() in /_/src/StackExchange.Redis/ServerEndPoint.cs:line 566 --- End of inner exception stack trace --- --- End of inner exception stack trace --- at StackExchange.Redis.ConnectionMultiplexer.ExecuteSyncImpl[T](Message message, ResultProcessor
1 processor, ServerEndPoint server) in //src/StackExchange.Redis/ConnectionMultiplexer.cs:line 2863
at StackExchange.Redis.RedisBase.ExecuteSync[T](Message message, ResultProcessor`1 processor, ServerEndPoint server) in //src/StackExchange.Redis/RedisBase.cs:line 54
at StackExchange.Redis.RedisDatabase.StringGet(RedisKey key, CommandFlags flags) in //src/StackExchange.Redis/RedisDatabase.cs:line 2433
at CommonUtils.RedisWrapper.StringGet(String key, String prefix) in