首批通过分布式安全可靠测评,为关键业务系统打造
Wait observer delete 步骤一直在执行中状态
更新时间:2023-11-14 03:16
适用版本
OceanBase 数据库所有版本。
问题现象
在删除 OBServer 或替换 OBServer 时,Wait observer delete 步骤一直处于执行中状态。
问题原因
删除 OBServer 时,会连接 OceanBase 数据库执行 delete server 命令,正常情况下删除 OBServer 用时不会太久。
但是,如果此前 OBServer 曾经异常宕机,或者手动 kill 过 observer 进程,导致 OBServer 丢失心跳,则在 delete server 之后,还需要等待永久下线时间(默认 1 小时)之后 OBServer 才可以删除成功,所以 Wait observer delete 步骤会一直在执行中状态。
解决方式
手动调小集群永久下线时间,例如将其设置为 120 秒:
obclient> alter system set server_permanent_offline_time='120s';
注意
OBServer 删除成功后请立即恢复原先的永久下线时间,防止影响集群功能。