diff --git a/parse/src/test/java/com/alibaba/otter/canal/parse/inbound/mysql/tsdb/FastsqlSchemaTest.java b/parse/src/test/java/com/alibaba/otter/canal/parse/inbound/mysql/tsdb/FastsqlSchemaTest.java
index c7e25607..70eab24c 100644
--- a/parse/src/test/java/com/alibaba/otter/canal/parse/inbound/mysql/tsdb/FastsqlSchemaTest.java
+++ b/parse/src/test/java/com/alibaba/otter/canal/parse/inbound/mysql/tsdb/FastsqlSchemaTest.java
@@ -18,13 +18,17 @@ public class FastsqlSchemaTest {
@Test
public void testSimple() throws FileNotFoundException, IOException {
SchemaRepository repository = new SchemaRepository(JdbcConstants.MYSQL);
- String sql = "create table yushitai_test.card_record ( id bigint auto_increment) auto_increment=256 "
- + "; alter table yushitai_test.card_record add column customization_id bigint unsigned NOT NULL COMMENT 'TEST' ;"
- + "; rename table yushitai_test.card_record to yushitai_test._card_record_del;";
+ String sql = "create table yushitai_test.card_record ( id bigint auto_increment, name varchar(32) DEFAULT NULL) auto_increment=256 "
+ + "alter table yushitai_test.card_record add index index_name(name) ;"
+ + "alter table yushitai_test.card_record add index index_name(name) ;"
+ + "alter table yushitai_test.card_record add Constraint pk_id PRIMARY KEY (id);"
+ + "alter table yushitai_test.card_record add Constraint pk_id PRIMARY KEY (id);"
+ + "alter table yushitai_test.card_record add Constraint UNIQUE index uk_name(name);"
+ + "alter table yushitai_test.card_record add Constraint UNIQUE index uk_name(name);";
repository.console(sql);
repository.setDefaultSchema("yushitai_test");
- SchemaObject table = repository.findTable("_card_record_del");
+ SchemaObject table = repository.findTable("card_record");
System.out.println(table.getStatement().toString());
}
}
diff --git a/parse/src/test/java/com/alibaba/otter/canal/parse/inbound/mysql/tsdb/MemoryTableMeta_DDL_Test.java b/parse/src/test/java/com/alibaba/otter/canal/parse/inbound/mysql/tsdb/MemoryTableMeta_DDL_Test.java
index e3005b62..fa0999fe 100644
--- a/parse/src/test/java/com/alibaba/otter/canal/parse/inbound/mysql/tsdb/MemoryTableMeta_DDL_Test.java
+++ b/parse/src/test/java/com/alibaba/otter/canal/parse/inbound/mysql/tsdb/MemoryTableMeta_DDL_Test.java
@@ -37,4 +37,19 @@ public class MemoryTableMeta_DDL_Test {
meta = memoryTableMeta.find("yushitai_test", "_card_record_gho");
Assert.assertNull(meta);
}
+
+ @Test
+ public void test2() throws Throwable {
+ MemoryTableMeta memoryTableMeta = new MemoryTableMeta();
+ URL url = Thread.currentThread().getContextClassLoader().getResource("dummy.txt");
+ File dummyFile = new File(url.getFile());
+ File create = new File(dummyFile.getParent() + "/ddl", "ddl_test2.sql");
+ String sql = StringUtils.join(IOUtils.readLines(new FileInputStream(create)), "\n");
+ memoryTableMeta.apply(null, "test", sql, null);
+
+ TableMeta meta = memoryTableMeta.find("yushitai_test", "card_record");
+ System.out.println(meta);
+ Assert.assertEquals(meta.getFieldMetaByName("id").isKey(), true);
+ Assert.assertEquals(meta.getFieldMetaByName("name").isUnique(), true);
+ }
}
diff --git a/parse/src/test/resources/ddl/ddl_test2.sql b/parse/src/test/resources/ddl/ddl_test2.sql
new file mode 100644
index 00000000..aaf7d286
--- /dev/null
+++ b/parse/src/test/resources/ddl/ddl_test2.sql
@@ -0,0 +1,8 @@
+CREATE TABLE yushitai_test.card_record (
+ id bigint AUTO_INCREMENT,
+ name varchar(32) DEFAULT NULL,
+ alias varchar(32) DEFAULT NULL,
+ INDEX index_name(name),
+ CONSTRAINT pk_id PRIMARY KEY (id),
+ UNIQUE uk_name (name,alias)
+) AUTO_INCREMENT = 256
diff --git a/pom.xml b/pom.xml
index 4d74caa7..7ab33d04 100644
--- a/pom.xml
+++ b/pom.xml
@@ -247,7 +247,7 @@
com.alibaba.fastsql
fastsql
- 2.0.0_preview_617
+ 2.0.0_preview_630
com.alibaba