开发者社区 > 云原生 > 中间件 > 正文

Seata中10s后主线程不应该再阻塞了吧?

Seata中2022-11-07T11:28:05.637813233Z 2022-11-07 19:28:05.637 INFO io.seata.spring.annotation.GlobalTransactionScanner - Global Transaction Clients are initialized. 28分05秒GlobalTransactionScanner#initClient 就结束了 说明TM和RM的timeoutChecker已经启动完成了,等待间隔5s后的第一次reconnect调度。10s后,日志卡在这里不懂了,可以说明锁阻塞在了acquireChannel上(应该是Main线程)2022-11-07T11:28:16.319456451Z 2022-11-07 19:28:16.319 INFO io.seata.core.rpc.netty.NettyClientChannelManager - will connect to 172.29.14.48:8093。10s后主线程不应该再阻塞了吧?这10s足够timeoutChecker的getSingleton执行完了吧?应该是10(日志间隔)-5(调度初始delay间隔)=5s应该足够timeoutChecker的getSingleton执行完然后把锁释放了吧?或者说是主线程的getSingleton超过5s还没执行完吗?

展开
收起
fuxixi 2022-11-14 15:25:44 161 0
1 条回答
写回答
取消 提交回答
  • 用java提供的工具导出堆栈吧。此答案整理自钉钉群“3群-Seata 开源讨论群”

    2022-11-14 16:37:23
    赞同 展开评论 打赏
问答分类:
问答地址:

为企业提供高效、稳定、易扩展的中间件产品。

相关电子书

更多
《Seata 1.3 新特性以及如何参与社区》 立即下载
多IO线程优化版 立即下载
低代码开发师(初级)实战教程 立即下载