【标题】(请简要描述下实现的内容)

【实现内容】:
将mdcreate fd流程替换为已有封装的函数调用,flags值在函数内修改,而不会影响外部flags的值。

【根因分析】:
在回放过程中,假设表文件16384已经被创建而16384_pca等文件未被创建,flags会被修改,丢失O_CREATE标记。流程继续往下,在创建压缩表时则会报错,表不存在。

【修改方案】:

  1. 将mdcreate fd流程替换为已有封装的函数调用,flags值在函数内修改,而不会影响外部flags的值。

【关联issue】:
#I56GGM:【测试类型:SQL功能】【测试版本:3.0.0】 创建分区行存压缩表、插入数据、创建索引等sql操作,有很大概率备机down

【开发自验报告】:

  1. 请附上自验结果(内容或者截图):
  2. 是否可以添加fastcheck测试用例,如是,请补充fastcheck用例:
  3. 是否涉及资料修改,如是,在docs仓库补充资料:不涉及
  4. 是否考虑支撑升级和在线扩容等扩展场景:不涉及
  5. 是否考虑异常场景/并发场景/前向兼容/性能场景:不涉及
  6. 是否对其他模块产生影响:不涉及

复现说明:

  1. 备机为最大可用模式,并行恢复线程为4,执行issue内用例有大概率可以浮现。
  2. 修改后,经过若干次测试,问题没有复现。