Azure搜索SDK给出“由于系统缺少足够的缓冲区空间或队列已满,无法在套接字上执行操作”

时间:2019-07-03 06:15:15

标签: azure-search-.net-sdk

我们看到有时高使用率会导致Azure Search .NET SDK抛出此异常: 套接字上的操作无法执行,因为系统缺少足够的缓冲区空间或队列已满。

这是调用堆栈: {“ ClassName”:“ System.Net.Http.HttpRequestException”,“ Message”:“发送请求时发生错误。”,“ Data”:null,“ InnerException”:{“ ClassName”:“ System.Net。 WebException“,” Message“:”无法连接到远程服务器“,” Data“:null,” InnerException“:{” NativeErrorCode“:10055,” ClassName“:” System.Net.Sockets.SocketException“,”消息“:”因为系统缺少足够的缓冲区空间或队列已满,所以无法执行套接字上的操作“,” Data“:null,” InnerException“:null,” HelpURL“:null,” StackTraceString“:”在System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot,SocketAddress socketAddress)\ r \ n在System.Net.Sockets.Socket.InternalBind(EndPoint localEP)\ r \ n在System.Net.Sockets.Socket.BeginConnectEx( System.Net.Sockets.Socket.UnsafeBeginConnect上的EndPoint remoteEP,布尔型FlowContext,AsyncCallback回调,对象状态)\ r \ n(System.Net.ServicePoint.ConnectSocketInternal(EndPoint remoteEP,AsyncCallback回调,对象状态)\ r \ n connectFailure,套接字s4,套接字s6,套接字和套接字,IP地址和地址,ConnectSocketState状态,IAsyncResult asyncResult,异常和异常)“,” RemoteStackTraceString“:null,” RemoteStackIndex“:0,” ExceptionMethod“:” 8 \ nDoBind \ nSystem,Version = 4.0.0.0,区域性=中性,PublicKeyToken = b77a5c561934e089 \ nSystem.Net.Sockets.Socket \ nVoid DoBind(System.Net.EndPoint,System.Net.SocketAddress)“,” HResult“:-2147467259,” Source“:” System “,” WatsonBuckets“:null},” HelpURL“:null,” StackTraceString“:”在System.Net.HttpWebRequest.EndGetRequestStream(IAsyncResult asyncResult,TransportContext&context)\ r \ n在System.Net.Http.HttpClientHandler.GetRequestStreamCallback( IAsyncResult ar)“,” RemoteStackTraceString“:null,” RemoteStackIndex“:0,” ExceptionMethod“:” 8 \ nEndGetRequestStream \ nSystem,版本= 4.0.0.0,文化=中性,PublicKeyToken = b77a5c561934e089 \ nSystem.Net.HttpWebRequest \ nSystem。 IO.Stream EndGetRequestStream(System.IAsyncResult,System.Net.TransportContext ByRef)“,” HResult“:-2146233079,”源在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\ r \ n,在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\ r \ n在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification中,“:” System“,” WatsonBuckets“:null},” HelpURL“:null,” StackTraceString“:” (任务任务)\ r \ n在Microsoft.Rest.RetryDelegatingHandler。<> c__DisplayClass11_0。 d.MoveNext()\ r \ n ---从上一个引发异常的位置开始的堆栈跟踪--- \ r \ n在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\ r \ n在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)\ r \ n在Microsoft.Rest.RetryDelegatingHandler.d__11.MoveNext()\ r \ n ---从上一个引发异常的位置开始的堆栈结束跟踪--- \ r \ n位于System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\ r \ n位于System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification( Task。)\ r \ n在Microsoft.Azure.Search.DocumentsOperations.d__21`3.MoveNext()\ r \ n ---堆栈跟踪结束e从发生异常的先前位置--- \ r \ n在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\ r \ n在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\ r \ n在Microsoft.Azure.Search.DocumentsOperationsExtensions.d__15.MoveNext()\ r \ n ---从上一个引发异常的位置开始的堆栈结束跟踪--- \ r \ n位于System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() \ r \ n,位于System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)\ r \ n,位于Microsoft.Azure.CXP.ES.Providers.SearchIndex.SearchIndexProvider.d__6.MoveNext()i

这与限制服务有关,还是与客户端有关?

调用堆栈包含相关的代码流。

0 个答案:

没有答案