.net - PubSub API GRPC 调用总是失败并超过最后期限
问题描述
这不是代码问题,因为它在其他机器上运行。所以不会粘贴代码。这是环保的。我在使用带有简单命令的 dotnet core 控制台应用程序创建主题的 Windows 10 机器上。我只在我的机器上得到这个异常。
我正在使用 nuget 包 Google.Cloud.PubSub.V1 Version="2.6.0" 进行创建主题调用。
任何帮助表示赞赏。
未处理的异常。Grpc.Core.RpcException: 状态(StatusCode="DeadlineExceeded", Detail="Deadline Exceeded", DebugException="Grpc.Core.Internal.CoreErrorDetailException: {"created":"@1629993406.845000000","description":"Deadline Exceeded" ,"file":"......\src\core\ext\filters\deadline\deadline_filter.cc","file_line":81,"grpc_status":4}") 在 Grpc.Core.Internal.AsyncCall 2.UnaryCall(TRequest msg) at Grpc.Core.Calls.BlockingUnaryCall[TRequest,TResponse](CallInvocationDetails
2 call, TRequest req) at Grpc.Core.DefaultCallInvoker.BlockingUnaryCall[TRequest,TResponse](Method 2 method, String host, CallOptions options, TRequest request) at Grpc.Core.Interceptors.InterceptingCallInvoker.<BlockingUnaryCall>b__3_0[TRequest,TResponse](TRequest req, ClientInterceptorContext
2 ctx) at Grpc.Core.ClientBase.ClientBaseConfiguration.ClientBaseConfigurationInterceptor.BlockingUnaryCall[TRequest,TResponse](TRequest request, ClientInterceptorContext 2 context, BlockingUnaryCallContinuation
2 continuation) at Grpc.Core.Interceptors.InterceptingCallInvoker。2 method, String host, CallOptions options, TRequest request) at Google.Cloud.PubSub.V1.Publisher.PublisherClient.CreateTopic(Topic request, CallOptions options) at Google.Api.Gax.Grpc.ApiCall.GrpcCallAdapter
2.CallSync(TRequest request, CallSettings callSettings) at Google.Api.Gax.Grpc.ApiCallRetryExtensions.<>c__DisplayClass1_0 2.<WithRetry>b__0(TRequest request, CallSettings callSettings) at Google.Api.Gax.Grpc.ApiCall
2.<>c__DisplayClass10_0.b__1(TRequest req, CallSettings cs) at Google.Api.Gax.Grpc.ApiCall`2 .Sync(TRequest request, CallSettings perCallSettings) at Google.Cloud.PubSub.V1.PublisherServiceApiClientImpl.CreateTopic(Topic request, CallSettings callSettings) at Google.Cloud.PubSub.V1.PublisherServiceApiClient.CreateTopic(TopicName name, CallSettings callSettings) at testapps。 MessagePublisher.CreateTopic(String topicId) in C:\code\testapps\MessagePublisher.cs:line 29 at testapps.Program.Main(String[] args) in C:\code\testapps\Program.cs:line 20
下面是来自 grpc 跟踪的跟踪消息片段
I0826 11:45:22.895388 2224713612736 ......\src\core\lib\iomgr\timer_generic.cc:537: .. shard[18]: heap_empty=true I0826 11:45:22.895393 2224713612736 ..... .\src\core\lib\iomgr\timer_generic.cc:512: .. shard[18]->queue_deadline_cap --> 60473 I0826 11:45:22.895399 2224713612736 ......\src\core\lib\iomgr \timer_generic.cc:578: .. shard[18] 弹出 0 I0826 11:45:22.895405 2224713612736 ......\src\core\lib\iomgr\timer_generic.cc:632: .. 结果 --> 1 , shard[18]->min_deadline 59459 --> 60474, now=59473 I0826 11:45:22.895411 2224713612736 ......\src\core\lib\iomgr\timer_generic.cc:741: TIMER CHECK END: r =1; next=60036 I0826 11:45:22.895417 2224713612736 ......\src\core\lib\iomgr\timer_manager.cc:188: 休眠 563 毫秒 I0826 11:45:23.459363 2224713612736 ......\ src\core\lib\iomgr\timer_manager.cc:204:等待结束:was_timed:\src\core\lib\iomgr\timer_generic.cc:578: .. shard[19] 弹出 1 I0826 11:45:23.459502 2224713612736 ......\src\core\lib\iomgr\timer_generic.cc:632 : .. 结果 --> 2, shard[19]->min_deadline 60036 --> 60474, now=60038 I0826 11:45:23.459509 2224713612736 ......\src\core\lib\iomgr\timer_generic.cc :741: 定时器检查结束: r=2; next=60086 I0826 11:45:23.459514 2224713612736 ......\src\core\lib\iomgr\timer_manager.cc:124: 踢不定时服务员 I0826 11:45:23.459525 2224713612736 ......\src\ core\lib\iomgr\timer_manager.cc:132: 刷新 exec_ctx I0826 11:45:23.459562 2224713612736 ......\src\core\ext\filters\client_channel\client_channel.cc:2869:chand=00000205FB2CFAA8 lb_call=00000205FB189C50 :取消排队选择:error={"created":"@1629992723.459000000","description":"Deadline Exceeded","file": "file_line":81,"grpc_status":4} I0826 11:45:23.459603 2224709084512 ......\src\core\lib\iomgr\timer_generic.cc:719: TIMER CHECK BEGIN: now=60038 next=9223372036854775807 tls_min=55303 glob_min=60086 I0826 11:45:23.459613 2224709084512 ......\src\core\lib\iomgr\timer_generic.cc:741: TIMER CHECK END: r=1; next=60086 I0826 11:45:23.459619 2224713612736 ......\src\core\lib\iomgr\timer_generic.cc:470: TIMER 00000205FB1899D8: CANCEL pending=false I0826 11:45:23.459623 2224709084 .\src\core\lib\iomgr\timer_manager.cc:188:睡眠 48 毫秒 I0826 11:45:23.459634 2224713612736 ......\src\core\ext\filters\client_channel\client_channel.cc:1949 : chand=00000205FB2CFAA8 calld=00000205FB189840: 录音 cancel_error={"created":"@1629992723.459000000","description":"Deadline Exceeded", 现在=60038 下一个=9223372036854775807 tls_min=60036 glob_min=60086 I0826 11:45:23.459730 2224713612736 ......\src\core\lib\iomgr\timer_generic.cc:741: TIMER CHECK END: r=1; next=60086 I0826 11:45:23.459735 2224713612736 ......\src\core\lib\iomgr\timer_manager.cc:197:睡眠直到被踢
解决方案
推荐阅读
- angular - 如何通过符号链接或存储库导出和集成独立的 Angular 模块?
- java - 我想搜索所有字段的值,但出现以下错误。什么是更好的方法?
- reactjs - React-Native - 如何在 JSX 元素中连接两个字符串
- r - 将两个相关表合并成一个对称的命名矩阵
- javascript - 如何使用 node.js 将 blob 移动到 Azure 中的子目录
- javascript - 如何使用 javascript 将一些数据提取到变量中?
- php - 如何使用 php 在选择选项中显示一些 JSON 数据?
- html - 如何在移动视图的表格数据列中包装长文本?
- android - Android Studio:尝试在空对象引用上调用虚拟方法“void android.view.View.setOnClickListener”
- angular - 如何根据角度 7 中的多个属性进行过滤