ODC导出数据失败

【 使用环境 】生产环境
【 OB or 其他组件 】server 5.7.25-OceanBase_CE-v4.0.0.0
【 使用版本 】OceanBase Developer Center windows 版本号:4.0.0
【问题描述】工具>>导出>>仅导出数据>>选择test_table>>导出sql文件>>失败
【复现路径】问题出现前后相关操作
【问题现象及影响】

CREATE TABLE test_table (
id int(11) NOT NULL,
name varchar(255) DEFAULT NULL,
updated_time datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (id)
) DEFAULT CHARSET = utf8mb4 ROW_FORMAT = DYNAMIC COMPRESSION = ‘zstd_1.3.8’ REPLICA_NUM = 1 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE TABLET_SIZE = 134217728 PCTFREE = 0;

INSERT INTO data_gamemanager.test_table(id, name, updated_time) VALUES (1, ‘test’, ‘2023-02-03 11:20:26’);
INSERT INTO data_gamemanager.test_table(id, name, updated_time) VALUES (2, ‘测试’, ‘2023-02-01 11:20:41’);

【附件】



java.lang.RuntimeException: java.sql.SQLException: Unknown column ‘partition_id’ in ‘where clause’
If column exists but type cannot be identified (example ‘select ? field1 from dual’). Use CAST function to solve this problem (example ‘select CAST(? as integer) field1 from dual’)
at com.oceanbase.partition.calculator.template.ExecutorTemplate.waitForResult(ExecutorTemplate.java:163) ~[ob-partition-calculator-1.1.11-SNAPSHOT.jar!/:?]
at com.oceanbase.tools.loaddump.dumper.AbstractDumper.queryTableEntryMapParallel(AbstractDumper.java:360) ~[ob-loader-dumper-3.0.2-BP3-SNAPSHOT.jar!/:?]
at com.oceanbase.tools.loaddump.dumper.sql.SqlFileDumper.generateDumpTasksForPrivateCloud(SqlFileDumper.java:195) ~[ob-loader-dumper-3.0.2-BP3-SNAPSHOT.jar!/:?]
at com.oceanbase.tools.loaddump.dumper.sql.SqlFileDumper.generateDumpTasks(SqlFileDumper.java:96) ~[ob-loader-dumper-3.0.2-BP3-SNAPSHOT.jar!/:?]
at com.oceanbase.tools.loaddump.dumper.AbstractDumper.prepare(AbstractDumper.java:254) ~[ob-loader-dumper-3.0.2-BP3-SNAPSHOT.jar!/:?]
at com.oceanbase.tools.loaddump.client.DumpClient.dumpRecord(DumpClient.java:162) ~[ob-loader-dumper-3.0.2-BP3-SNAPSHOT.jar!/:?]
at com.oceanbase.odc.service.datatransfer.task.ExportDataTransferTask.startTransferData(ExportDataTransferTask.java:49) ~[classes!/:?]
at com.oceanbase.odc.service.datatransfer.task.ExportDataTransferTask.startTransferData(ExportDataTransferTask.java:31) ~[classes!/:?]
at com.oceanbase.odc.service.datatransfer.task.BaseDataTransferTask.call(BaseDataTransferTask.java:116) ~[classes!/:?]
at com.oceanbase.odc.service.datatransfer.task.BaseDataTransferTask.call(BaseDataTransferTask.java:33) ~[classes!/:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_292]
at com.oceanbase.odc.common.trace.TraceDecorator.lambda$decorate$0(TraceDecorator.java:25) ~[odc-common-4.0.0-test_20221101.jar!/:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_292]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_292]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_292]
Caused by: java.sql.SQLException: Unknown column ‘partition_id’ in ‘where clause’
If column exists but type cannot be identified (example ‘select ? field1 from dual’). Use CAST function to solve this problem (example ‘select CAST(? as integer) field1 from dual’)
at com.oceanbase.jdbc.internal.protocol.AbstractQueryProtocol.readErrorPacket(AbstractQueryProtocol.java:1971) ~[oceanbase-client-2.2.6.jar!/:?]
at com.oceanbase.jdbc.internal.protocol.AbstractQueryProtocol.readPacket(AbstractQueryProtocol.java:1838) ~[oceanbase-client-2.2.6.jar!/:?]
at com.oceanbase.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:1728) ~[oceanbase-client-2.2.6.jar!/:?]
at com.oceanbase.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:359) ~[oceanbase-client-2.2.6.jar!/:?]
at com.oceanbase.jdbc.JDBC4PreparedStatement.executeInternal(JDBC4PreparedStatement.java:229) ~[oceanbase-client-2.2.6.jar!/:?]
at com.oceanbase.jdbc.JDBC4PreparedStatement.execute(JDBC4PreparedStatement.java:158) ~[oceanbase-client-2.2.6.jar!/:?]
at com.oceanbase.jdbc.JDBC4PreparedStatement.executeQuery(JDBC4PreparedStatement.java:172) ~[oceanbase-client-2.2.6.jar!/:?]
at com.alibaba.druid.pool.DruidPooledPreparedStatement.executeQuery(DruidPooledPreparedStatement.java:227) ~[druid-1.1.23.jar!/:1.1.23]
at com.oceanbase.partition.calculator.helper.TableEntryExtractor.queryTableEntry(TableEntryExtractor.java:231) ~[ob-partition-calculator-1.1.11-SNAPSHOT.jar!/:?]
at com.oceanbase.partition.calculator.helper.TableEntryExtractor.queryTableEntry(TableEntryExtractor.java:209) ~[ob-partition-calculator-1.1.11-SNAPSHOT.jar!/:?]
at com.oceanbase.partition.calculator.helper.TableEntryExtractor.queryTableEntry(TableEntryExtractor.java:191) ~[ob-partition-calculator-1.1.11-SNAPSHOT.jar!/:?]
at com.oceanbase.tools.loaddump.dumper.AbstractDumper$1.call(AbstractDumper.java:353) ~[ob-loader-dumper-3.0.2-BP3-SNAPSHOT.jar!/:?]
at com.oceanbase.tools.loaddump.dumper.AbstractDumper$1.call(AbstractDumper.java:347) ~[ob-loader-dumper-3.0.2-BP3-SNAPSHOT.jar!/:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_292]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_292]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_292]
… 3 more

odc4.1版本才支持导入导出,社区版暂时未发布,可以先使用obdump工具实现;