【 使用环境 】测试环境
【 OB or 其他组件 】
cdc
【 使用版本 】4.1
【问题描述】
在observer中执行语句
set binlog_row_image ='minimal';
然后在执行语句
update k2 set name = 10 where idd = 2;
cdc日志中报错
[2023-12-05 05:42:23.459730] EDIAG [TLOG] next_record (ob_log_instance.cpp:1437) [521262][][T0][Y0-0000000000000000-0-0] [lt=3][errcode=-4007] next record fail(ret=-4007, ret="OB_NOT_SUPPORTED", record=0x7fff0529d528) BACKTRACE:0x13b0bbbd 0x9e38997 0x9e38484 0x9e38132 0x9e37f2a 0x9f045a6 0x9f044a0 0x3341b79 0x333cdef 0x334122f 0x7fffb606e6db 0x7fffb59f961f
[2023-12-05 05:42:23.459737] ERROR issue_dba_error (ob_log.cpp:1792) [521262][][T0][Y0-0000000000000000-0-0] [lt=6][errcode=-4388] Unexpected internal error happen, please checkout the internal errcode(errcode=-4007, file="ob_log_instance.cpp", line_no=1437, info="next record fail")
[2023-12-05 05:42:23.459742] EDIAG [TLOG] next_record (ob_log_instance.cpp:1437) [521262][][T0][Y0-0000000000000000-0-0] [lt=4][errcode=-4007] next record fail(ret=-4007, ret="OB_NOT_SUPPORTED", record=0x7fff0529d528) BACKTRACE:0x13b0bbbd 0x9e38997 0x9e38484 0x9e38132 0x9e37f2a 0x9f045a6 0x9f044a0 0x3341b79 0x333cdef 0x334122f 0x7fffb606e6db 0x7fffb59f961f
[2023-12-05 05:42:23.459748] ERROR issue_dba_error (ob_log.cpp:1792) [521262][][T0][Y0-0000000000000000-0-0] [lt=5][errcode=-4388] Unexpected internal error happen, please checkout the internal errcode(errcode=-4007, file="ob_log_instance.cpp", line_no=1437, info="next record fail")
在文档处找到描述
skip_dirty_data 跳过异常数据 否 是 当前异常情况: 1. 非全列日志(指 CLOG 中只记录有变更的列的信息,配置项:binlog_row_image)。 2. 异常的物理备份恢复租户的 DDL。
问题:
cdc在binlog_row_image = minimal 模式下,确实无法获取非全列日志吗,是否是有配置设置错误。是否有其他方式能够使cdc获取非全列日志,是否只有设置skip_dirty_data =1,跳过非全列日志的信息