备机数据还原异常报错:Error 5: Unknown error

【 使用环境 】生产环境
【 使用版本 】4.2.0_CE
【问题描述】
执行备份还原租户语句:

ALTER SYSTEM RESTORE syncmysql FROM 'file:///data/sync/archive,file:///data/sync/databackup' WITH 'pool_list=syncpool';

报错:

Error 5: Unknown error

【问题】
会是什么原因异常报错

select last_trace_id() 根据trace查下日志

没有其他命令执行的情况下,多次select last_trace_id(); 每次都不一样,
如何确认id是执行命令的那一条

先执行下ALTER SYSTEM RESTORExxxxxx, 然后执行select last_trace_id() ,这个命令返回的是你上一次执行的sql的trace_id, 根据查出来ALTER SYSTEM RESTORExxxxxx的trace_id,去observer的日志目录下搜一下日志。

麻烦看下是什么原因

搜索报错:Unknown error,反推查询到id;
日志结果:


你这个看起来备份文件有缺失,我看你用的NFS,你所有的节点都挂载了NFS吗

  1. 没用NFS,直接用数据rsync同步文件到备机上
  2. 主机上的日志归档和数据备份文件,在主机上本机执行备份还原租户,也是失败报错5

PS: restart 集群后,再执行备租户还原命令,执行正常没用报错

你这个主备都是单机版的吗

是的

日志是不是发错了?看日期是昨天的

  1. 日志没错 是系统时间设置的问题
  2. 这是重新模拟的一份新日志:
    election.rar (14.0 KB)
    observer.rar (2.8 MB)
    trace.rar (1.3 MB)

[2023-12-06 22:59:09.020442] WDIAG [RS] create_tenant (ob_ddl_service.cpp:20858) [1431][DDLQueueTh0][T0][YB427F000001-00060BE279EA667A-0-0] [lt=441][errcode=-4224] fail to create tenant

应该是建租户失败了,可能是资源不足,或者resource pool已经被占用等,这里的错误码提示不太友好,最新版本已经修过了