obdumper 4.3.1.1 版本 --block-size 切分 无法 和-f 指定导出文件名称同时使用

【 使用环境 】测试环境
【 OB or 其他组件 】OB 版本 4.2.1.7
【 使用版本 】obdumper 4.3.1.1
【问题描述】 指定无法使用–block-size 切分 CUT 模式导出数据文件
导出命令 obdumper -h x.x.x.x -P 2883 -u xx@xx#xx -p **** -D XX --no-sys --table xx --block-size 512MB -f /xx/xx.dat … 导出文件无法正常切分望能尽快修复.
补充现象:该问题不会报错,比如导出的数据为一个2G的文件,block-size配置为512MB,但是最后还是只生成一个文件,经过我测试这个问题的最终原因是因为 我通过-f 命令指定了导出文件的具体名称,比如/xxx/table.dat 不会自动生成 table.1.dat table.2.dat。
只有配置 -f 的值为一个路径地址,不指定具体文件名称的时候才可以正常按照block-size 进行文件分割

1 个赞

你好 具体报什么错 能发一下么?具体发一下命令 我看你的描述和你命令不一样

不报错,就是生成的问题件不会自动分片,比如生成一个2G的文件 block-size配置为512MB 但是最后还是只生成一个文件,经过我测试这个问题的最终原因是因为 我通过-f 命令指定了导出文件的具体名称 比如/xxx/table.dat 不会自动生成 table.1.dat table.2.dat

命令我已经补充,确实是我没有输入完全

逻辑上是符合参数定义的。

-f 文件名 最早是用于导出单文件,指定了就不会生成多个文件。

后来是计划用 --block-size 来替代更为灵活。

预设的使用场景是 --block-size XX -f directory 。

描述里说的 table.1.dat table.2.dat 这种自定义形式暂未支持。

不过当前行为确实不好,要改进一下,不能少导出数据还不报错。

2 个赞

建议说明文档上标明一下,否则现在预生成的文件名大概率不满足实际需要,指定文件名称后又不会拆分文件,建议补充一下文档这两个指令互斥,不然就会跟我一样试了半天才知道怎么回事

收到你的反馈 找一下相关的同学 看看后期怎么调整

文档已更新,后续产品行为更新后,会持续更新文档。

使用 –block-size 时,-f必须指定为 **路径地址** 。如果您将-f指定为文件名,OBDUMPER 将仅导出一个大小为–block-size 的单个文件
这个描述有问题,OBDUMPER 将仅导出一个大小为 --block-size 的单个文件 实际上是 OBDUMPER 将仅导出一个大小不受--block-size 限制的真实大小的文件。

文档已更新, 使用 –block-size 时, -f必须指定为 **路径地址** 。