OMS 数据迁移出现 `Sink table not found` 错误

【 使用环境 】测试环境
【 OB or 其他组件 】OMS
【 使用版本 】4.2.3_CE
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
OMS 容灾双活 Oceanbase → Oceanbase 过程中, 结构已经迁移完成, 但是在全量迁移阶段提示 Sink table not found;
页面报错信息如下图:

OMS相关错误log 如下:

2024-06-28 09:13:01.736 [http-nio-8090-exec-8] INFO c.a.o.c.a.WebLogAspect 159 - [a6783c7c-c9b4-4998-85ff-3fefd8a7749d] RESPONSE : OmsApiReturnResult(success=true, errorDetail=null, code=null, message=null, advice=null, requestId=a6783c7c-c9b4-4998-85ff-3fefd8a7749d, pageNumber=1, pageSize=10, totalCount=1, cost=null, data=[FullMigrationTableStatistic(sourceTableName=student, sourceSchemaName=db88, destSchemaName=db88, estimatedTotalCount=2, finishedCount=0, progress=0.000, status=ERROR, message=com.oceanbase.oms.connector.common.exception.ConnectorException: ErrorCode: SINK_TABLE_NOT_FOUND(), msg: db88.student map table (db88.student) is not found, errorDetails=[ErrorDetail(code=CONNECTOR-SOOO04000001, level=ERROR, message=Sink table not found,ErrorCode: SINK_TABLE_NOT_FOUND(), msg: db88.student map table (db88.student) is not found, extraContext={context=com.oceanbase.oms.connector.common.exception.ConnectorException: ErrorCode: SINK_TABLE_NOT_FOUND(), msg: db88.student map table (db88.student) is not found}, messageMcmsKey=null, messageMcmsContext=null, reason=null, reasonMcmsKey=null, reasonMcmsContext=null, proposal=create sink table, proposalMcmsKey=null, proposalMcmsContext=null, upstreamErrorDetail=null)])])
2024-06-28 09:13:01.737 [http-nio-8090-exec-8] INFO c.a.o.c.a.WebLogAspect 160 - [a6783c7c-c9b4-4998-85ff-3fefd8a7749d] EXECUTE METHOD com.alipay.oms.v3.controller.TransferLinkController.listFullTransferResult SPEND TIME 22 MS

1 个赞

补充一下环境版本信息:

  • Oceanbase 4.3.0.1 CE
  • OCP 4.2.2-20240315150922 CE
1 个赞

登陆sink 端 OB 查看, 该表是存在的

1 个赞


查看组件监控 看看执行情况

1 个赞

组件监控看起来没什么问题

1 个赞

你看看你的家目录是那个 /home/admin
找一个这个目录的日志 /home/admin/logs/ghana/Ghana

1 个赞

打包了几个出现相关错误的日志文件
logs.tar.gz (785.4 KB)
刚刚暂停然后恢复迁移项目后, 又能够正常同步了; 之前暂停, 恢复几回也不行


1 个赞

这边 拿到了日志分析一下看看 是因为什么导致的

2 个赞

日志里报了 Could not retrieve transation read-only status server,能引起这个的原因有很多,不过大概率是查询超时引起的,可能当时并发请求时锁冲突造成了超时,具体的 SQL 相关逻辑我们后边再看看能不能做一下优化。

2 个赞

报表不存在的问题,可以把 /home/admin/logs/ghana/Ghana/dbcat.log 和 common-default.log 传上来看看。

2 个赞

日志上传好了, 有劳川粉老师帮忙看看
Ghana.tar.gz (324.8 KB)

1 个赞

使用给oms迁移用的用户登录数据库,确认一下表是否存在,另外吧结构迁移部分截图看一下,结构迁移的表结构贴出来看一下

1 个赞

结构迁移部分截图:

表结构如下图:

Sink 端可以查到结构迁移阶段创建的表:

1 个赞

请问您那边现在创建新的迁移项目还会有这个问题吗?我从 ghana 的日志里目前还是没能看出来问题所在。

oms 检查表的存在性的时候实际查的是 information_schema.tables,如果您那边能复现出来的话,可以顺便看看这张表的元信息更新了没有,我这边也找测试同学去试着复现一下。

1 个赞

我这边先复现一下看看

等你那边复现 到时候截图 把日志贴一下 这边也在测试 看看是什么问题导致的

1 个赞

淇铭 川粉 刘彻 几位老师久等了, 最近在处理其他事情, 没有去及时复现这个问题
感觉我这边还是比较容易复现 Sink table not found 这个错误的
web 端错误信息如下图所示:


结构迁移阶段可以正常完成没有什么问题:


web 端数据结构显示也正常


Sink 端可以查到数据迁移阶段创建的表


information_schema.tables 中可以查到这张表的元信息


附件是打包的oms log, 劳烦各位老师帮忙看看
oms_logs_0703.tar.gz (5.9 MB)

麻烦把 connector 的日志也发一下吧,我们综合着看一下

我大概看了一下, 看着应该是查询 information_schema.tables 超时导致的错误
connector_log_0704.tar.gz (15.7 KB)

可以按提示增加超时时间 ob_query_timeout 。
也可以手动测试下查询性能,获取执行计划,看下性能瓶颈在哪。
例如租户资源,磁盘IO、系统负载等。

1 个赞