TarsCloud / TarsFramework

Tars Basic service framework
BSD 3-Clause "New" or "Revised" License
198 stars 143 forks source link

tars-web version:2.4.11,服务发布错误后,一直发布不成功,需要杀死 tarnode 进程才可以重新发布 #95

Open tangyouyou opened 3 years ago

tangyouyou commented 3 years ago

问题描述: tars-web version:2.4.11,发布 tars-go 的二进制程序时,如果 tars-go 的程序存在错误,则导致服务发布失败,但是服务发布失败后,更新程序包也无法发布成功

参考解决方案: kill -9 tarsnode 进程,清空 tars-go 在 tarsnode 进程内的缓存信息

错误提示信息:

tars-issue-2

建议: 将 tarsnode 进程内的缓存新,做成 "命令" 的方式,可以在 tars-web 界面上进行操作

ruanshudong commented 3 years ago

这个问题比较奇怪, 怎么出现的?必先么?貌似没有测试出来

tangyouyou commented 3 years ago

这个问题比较奇怪, 怎么出现的?必先么?貌似没有测试出来

该问题是必现的,常见的场景:tars-go 二进制执行出现问题,例如 panic 未恢复,导致进程退出

参考复现步骤:

  1. tars-go 的二进制程序启动入口,增加 panic 抛出异常,且不进行回复
  2. 因为 panic 异常抛出,将导致程序启动失败
  3. 更换一个正常的 tars-go 二进制程序重新发布,会出现 batchPatch 的发布报错