dtle icon indicating copy to clipboard operation
dtle copied to clipboard

oracle ddl drop table error

Open asiroliu opened this issue 3 years ago • 1 comments

Description

oracle ddl drop table error

Steps to reproduce the issue

  1. create oracle to mysql job
  2. src oracle execute sql
CREATE TABLE TEST.T4(col1 VARCHAR(20), col2 NUMBER);
DROP TABLE TEST.T4;
  1. dest mysql doesn`t drop table TEST.T4
  2. src dtle log
2022-01-20T15:42:20.937+0800 [DEBUG] client.driver_mgr.dtle: ============= ddl stmt parse end =========: driver=dtle @module=dtle.ExtractorOracle ddl="CREATE TABLE `TEST`.`T4` (`COL1` VARCHAR(20),`COL2` DOUBLE) DEFAULT CHARACTER SET=utf8" job=aaa-migration timestamp=2022-01-20T15:42:20.937+0800
2022-01-20T15:42:20.938+0800 [DEBUG] client.driver_mgr.dtle: ============= ddl stmt parse start===============: driver=dtle job=aaa-migration redoSQL="ALTER TABLE "TEST"."T4" RENAME TO "BIN$1f+kJxmfBN/gUGSsBAkA6g==$0" " @module=dtle.ExtractorOracle timestamp=2022-01-20T15:42:20.937+0800
2022-01-20T15:42:20.938+0800 [ERROR] client.driver_mgr.dtle: ============= ddl parse err===============: driver=dtle redoSQL="ALTER TABLE "TEST"."T4" RENAME TO "BIN$1f+kJxmfBN/gUGSsBAkA6g==$0" " @module=dtle.ExtractorOracle job=aaa-migration timestamp=2022-01-20T15:42:20.938+0800
2022-01-20T15:42:20.938+0800 [ERROR] client.driver_mgr.dtle: parseOracleToMySQL: driver=dtle err="syntax error, unexpected _to, at line 1:31" job=aaa-migration @module=dtle.ExtractorOracle timestamp=2022-01-20T15:42:20.938+0800
2022-01-20T15:42:20.938+0800 [DEBUG] client.driver_mgr.dtle: ============= ddl stmt parse start===============: driver=dtle job=aaa-migration redoSQL="DROP TABLE TEST.T4 AS "BIN$1f+kJxmfBN/gUGSsBAkA6g==$0" " @module=dtle.ExtractorOracle timestamp=2022-01-20T15:42:20.938+0800
2022-01-20T15:42:20.938+0800 [ERROR] client.driver_mgr.dtle: ============= ddl parse err===============: driver=dtle @module=dtle.ExtractorOracle job=aaa-migration redoSQL="DROP TABLE TEST.T4 AS "BIN$1f+kJxmfBN/gUGSsBAkA6g==$0" " timestamp=2022-01-20T15:42:20.938+0800
2022-01-20T15:42:20.938+0800 [ERROR] client.driver_mgr.dtle: parseOracleToMySQL: driver=dtle @module=dtle.ExtractorOracle err="syntax error, unexpected _as, at line 1:19" job=aaa-migration timestamp=2022-01-20T15:42:20.938+0800
202

Output of ./dtle version:**

4.22.01.0-4.22.01.x-bf38943

asiroliu avatar Jan 20 '22 07:01 asiroliu

非必现场景,当redoSQL解析DROP TABLE 为如下两条SQL时候,不支持解析 1.ALTER TABLE SCHEMA.TABLE RENAME TO * 2.DROP TABLE SCHEMA.TABLE AS *

LordofAvernus avatar Jan 26 '22 10:01 LordofAvernus