ODC数据归档后表结构表结构不一致

【 使用环境 】生产环境
【 OB or 其他组件 】ODC
【 使用版本 】社区版4.3.0
【问题描述】清晰明确描述问题
ODC 数据归档(MYSQL—MYSQL)执行成功后,部分表结构不一致
image
image
image
通过结构对比发现表结构不一致


查看修改详情例·:

【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

用户问题: “使用 ODC 数据归档后表结构不一致的问题原因是什么?”

推荐使用 obdiag 工具进行日志采集,并且将采集到的日志提供给我们以便确认问题所在。

日志采集场景: 集群基础信息
日志采集命令: obdiag gather scene run --scene=observer.base

该命令会帮助我们收集集群的基础信息,以便于进一步分析可能存在的表结构不一致的原因。

为了更准确地定位问题,请您提供以下信息:

  1. 在执行数据归档前后,是否对表结构进行了任何修改?
  2. 归档的目标表和源表之间是否存在触发器、约束或索引等依赖关系?
  3. 是否有自定义的归档策略或脚本在运行?
  4. 能否提供归档操作的具体步骤及使用的 ODC 版本信息?
  5. 归档过程中是否有任何错误信息或警告提示?

请您执行上述命令并将日志压缩包发送给我们,我们将尽快为您解决问题。

具体信息可参考以下文档:

附上敏捷诊断工具 obdiag 使用帮助链接

麻烦提供一下源表结构

compare.txt (8.1 KB)

再向您确认几个问题:

  1. 在 compare txt 文件中是否详细列出了归档前后表结构的具体差异
  2. 是否可以确认在数据归档过程中是否有其他并发操作影响了表结构
  3. 能否确认归档任务的配置详情特别是关于表结构处理的部分
  4. 数据归档操作是通过 ODC 图形界面执行的还是使用了特定的命令或者脚本

1.在compare.txt文本中列了源表结构和目标表结构
2.可以确认在数据归档中没有其他对表的操作
3.确认归档任务配置详情以及都是执行成功的
4.数据归档操作是通过ODC图形界面执行的

根据您提供的信息,数据归档操作是通过 ODC 图形界面执行的,并且确认在数据归档过程中没有其他对表的操作,归档任务配置详情也已经确认并且执行成功。然而,归档后的表结构仍然存在不一致的情况。

从您提供的图片和描述来看,表结构不一致主要体现在以下几个方面:

  1. order_material 表中,某些字段的默认值和注释有所不同。
  2. work_position 表中,某些字段的默认值和注释有所不同。

可能的原因分析

  1. 归档任务配置问题:尽管您确认了归档任务配置详情并且执行成功,但是可能存在某些细节上的配置问题导致表结构未能完全同步。请检查归档任务配置中的“任务设置”部分,确认是否开启了“开启目标表结构同步”选项。如果没有开启,这可能是导致表结构不一致的原因之一。

  2. 表结构差异:从您提供的图片来看,源表和目标表之间的表结构确实存在差异。这些差异可能是在归档之前就已经存在的,或者是由于归档过程中的某些未知因素导致的。

解决方案建议

  1. 开启目标表结构同步:请确保在归档任务配置中开启了“开启目标表结构同步”选项。这样,在任务调度前会进行一次表结构比对,如果源端和目标端表结构不一致,将会跳过该表。

  2. 手动同步表结构:如果开启了“开启目标表结构同步”选项后仍然存在问题,建议手动同步源表和目标表的结构。可以通过比较源表和目标表的DDL语句,找出差异并手动调整目标表结构。

  3. 检查归档任务日志:检查归档任务的日志,看看是否有任何错误信息或警告提示,这有助于进一步定位问题。

  4. 联系技术支持:如果以上方法都不能解决问题,建议联系 OceanBase 的技术支持团队,提供详细的日志信息和归档任务配置信息,以便他们能够更深入地分析问题。

希望这些建议能够帮助您解决问题。如果有任何进一步的问题或需要更多的帮助,请随时联系我们。

具体信息可参考以下文档:

(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)

你好,这边联系odc相关同学分析后应该是个结构同步的 bug,正在跟进
后续有消息会在本帖回复

好的,谢谢