首批通过分布式安全可靠测评,为关键业务系统打造
OBServer 时钟不同步引发的 transfer 任务长时间 doing 状态的原因和解决方法
更新时间:2025-07-14 09:36
问题现象
OCP 告警,数据库有 ERROR 级别日志报错信息。
ERROR issue_dba_error (ob_log.cpp:1875) [3667704][T1006_TransferS][T1006][xxxxx-xxxxx-xxxxx-xxxxx][lt=11][errcode=-4388] Unexpected internal error happen, please checkout the internal errcode(errcode=0, file="ob_finish_transfer.cpp", line_no=1136, info="transfer task stuck at doing stage for too long, may be wait log replay or transfer backfill too slow")
查看 CDB_OB_BALANCE_JOBS 视图,状态长期处于 doing 状态。
查看 CDB_OB_TRANSFER_TASKS 视图,获取到 trace_id。
日志过滤发现有如下关键信息 PNIO packet wait too much time between proxy and server,如下图所示。

问题原因
chronyc 客户端配置文件中配置的非服务端的 IP 地址导致。
适用版本
OceanBase 数据库 V4.x 版本。
解决方法
检查防火墙是否关闭。
systemctl status firewalld.service或者
iptables -L检查时钟源配置是否正常。
使用
ntp或者chronyc命令检查同步状态,或者clockdiff查看延迟情况。本案例中,使用的是
chronyc,使用chronyc sources -v命令,输出结果如下图所示。
可知时钟同步未显示同步
IP列表,说明服务异常。