代码拉取完成,页面将自动刷新
1741
【压缩特性】在回放过程中,假设表文件已经被创建而表_pca等文件未被创建,flags会被修改,丢失O_CREATE标记,导致备机回放失败
已合并
【标题】(请简要描述下实现的内容)
【实现内容】:
将mdcreate fd流程替换为已有封装的函数调用,flags值在函数内修改,而不会影响外部flags的值。
【根因分析】:
在回放过程中,假设表文件16384已经被创建而16384_pca等文件未被创建,flags会被修改,丢失O_CREATE标记。流程继续往下,在创建压缩表时则会报错,表不存在。
【修改方案】:
- 将mdcreate fd流程替换为已有封装的函数调用,flags值在函数内修改,而不会影响外部flags的值。
【关联issue】:
#I56GGM:【测试类型:SQL功能】【测试版本:3.0.0】 创建分区行存压缩表、插入数据、创建索引等sql操作,有很大概率备机down
【开发自验报告】:
- 请附上自验结果(内容或者截图):是
- 是否可以添加fastcheck测试用例,如是,请补充fastcheck用例:否
- 是否涉及资料修改,如是,在docs仓库补充资料:不涉及
- 是否考虑支撑升级和在线扩容等扩展场景:不涉及
- 是否考虑异常场景/并发场景/前向兼容/性能场景:不涉及
- 是否对其他模块产生影响:不涉及
复现说明:
- 备机为最大可用模式,并行恢复线程为4,执行issue内用例有大概率可以浮现。
- 修改后,经过若干次测试,问题没有复现。