You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by me...@apache.org on 2020/12/30 04:34:22 UTC

[shardingsphere] branch master updated: Recover back DDL's IT (#8822)

This is an automated email from the ASF dual-hosted git repository.

menghaoran pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 152d809  Recover back DDL's IT (#8822)
152d809 is described below

commit 152d8097eca3577cc5a30717dcb8022737a9fb21
Author: Liang Zhang <te...@163.com>
AuthorDate: Wed Dec 30 12:33:56 2020 +0800

    Recover back DDL's IT (#8822)
    
    * Recover back DDL's IT
    
    * Refactor BaseIT
---
 .../test/integration/engine/BaseIT.java            |  6 ++-
 .../test/integration/engine/ddl/BaseDDLIT.java     |  1 +
 .../integrate/cases/ddl/dataset/alter_table.xml    |  4 +-
 .../integrate/cases/ddl/dataset/create_index.xml   |  6 +--
 .../integrate/cases/ddl/dataset/create_table.xml   |  4 +-
 .../cases/ddl/dataset/create_unique_index.xml      |  6 +--
 .../ddl/dataset/{empty_log.xml => empty_table.xml} |  4 +-
 .../cases/ddl/ddl-integrate-test-cases.xml         | 60 +++++++++++-----------
 .../src/test/resources/integrate/env/db/rules.yaml |  6 +++
 .../env/dbtbl_with_replica_query/rules.yaml        | 10 ++++
 .../test/resources/integrate/env/tbl/rules.yaml    |  6 +++
 11 files changed, 71 insertions(+), 42 deletions(-)

diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/BaseIT.java b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/BaseIT.java
index ed8d7ff..237eb6a 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/BaseIT.java
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/BaseIT.java
@@ -57,7 +57,7 @@ public abstract class BaseIT {
     
     private final Map<String, DataSource> actualDataSources;
     
-    private final DataSource targetDataSource;
+    private DataSource targetDataSource;
     
     static {
         TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
@@ -124,6 +124,10 @@ public abstract class BaseIT {
         }
     }
     
+    protected void resetTargetDataSource() throws IOException, SQLException {
+        targetDataSource = createTargetDataSource();
+    }
+    
     @After
     public void tearDown() {
         if (targetDataSource instanceof ShardingSphereDataSource) {
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/ddl/BaseDDLIT.java b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/ddl/BaseDDLIT.java
index 18c2fe4..b2e3c0c 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/ddl/BaseDDLIT.java
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/java/org/apache/shardingsphere/test/integration/engine/ddl/BaseDDLIT.java
@@ -73,6 +73,7 @@ public abstract class BaseDDLIT extends SingleIT {
         }
         createTables();
         new DataSetEnvironmentManager(EnvironmentPath.getDataSetFile(getRuleType()), getActualDataSources()).initialize();
+        resetTargetDataSource();
     }
     
     @After
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/alter_table.xml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/alter_table.xml
index 3bb633e..b2e5a1c 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/alter_table.xml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/alter_table.xml
@@ -16,9 +16,9 @@
   -->
 
 <dataset>
-    <metadata table-name="t_log">
+    <metadata table-name="t_order_details">
         <column name="id" type="integer" />
-        <column name="status" type="varchar" />
+        <column name="description" type="varchar" />
         <column name="name" type="varchar" />
     </metadata>
 </dataset>
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_index.xml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_index.xml
index 8c36c65..f2e9ba7 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_index.xml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_index.xml
@@ -16,9 +16,9 @@
   -->
 
 <dataset>
-    <metadata table-name="t_log">
+    <metadata table-name="t_order_details">
         <column name="id" type="integer" />
-        <column name="status" type="varchar" />
-        <index name="t_log_index_t_log" column="id" unique="false" />
+        <column name="description" type="varchar" />
+        <index name="t_order_details_index_t_order_details" column="id" unique="false" />
     </metadata>
 </dataset>
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_table.xml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_table.xml
index cd016b3..305f43f 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_table.xml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_table.xml
@@ -16,8 +16,8 @@
   -->
 
 <dataset>
-    <metadata table-name="t_log">
+    <metadata table-name="t_order_details">
         <column name="id" type="integer" />
-        <column name="status" type="varchar" />
+        <column name="description" type="varchar" />
     </metadata>
 </dataset>
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_unique_index.xml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_unique_index.xml
index 5ceaab1..56360b0 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_unique_index.xml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/create_unique_index.xml
@@ -16,9 +16,9 @@
   -->
 
 <dataset>
-    <metadata table-name="t_log">
+    <metadata table-name="t_order_details">
         <column name="id" type="integer" />
-        <column name="status" type="varchar" />
-        <index name="t_log_index_t_log" column="id" unique="true" />
+        <column name="description" type="varchar" />
+        <index name="t_order_details_index_t_order_details" column="id" unique="true" />
     </metadata>
 </dataset>
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/empty_log.xml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/empty_table.xml
similarity index 90%
rename from shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/empty_log.xml
rename to shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/empty_table.xml
index cd016b3..305f43f 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/empty_log.xml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/dataset/empty_table.xml
@@ -16,8 +16,8 @@
   -->
 
 <dataset>
-    <metadata table-name="t_log">
+    <metadata table-name="t_order_details">
         <column name="id" type="integer" />
-        <column name="status" type="varchar" />
+        <column name="description" type="varchar" />
     </metadata>
 </dataset>
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/ddl-integrate-test-cases.xml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/ddl-integrate-test-cases.xml
index b5bd9a5..19635d0 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/ddl-integrate-test-cases.xml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/cases/ddl/ddl-integrate-test-cases.xml
@@ -16,35 +16,37 @@
   -->
 
 <integrate-test-cases>
-<!--    <ddl-test-case sql="CREATE TABLE t_log(id int PRIMARY KEY, status varchar(10))">-->
-<!--        <assertion table="t_log" expected-data-file="create_table.xml" />-->
+    <ddl-test-case sql="CREATE TABLE t_order_details(id int PRIMARY KEY, description varchar(10))">
+        <assertion table="t_order_details" expected-data-file="create_table.xml" />
+    </ddl-test-case>
+    <!-- TODO fix create index -->
+<!--    <ddl-test-case sql="CREATE INDEX t_order_details_index ON t_order_details (id)">-->
+<!--        <assertion init-sql="CREATE TABLE t_order_details(id int, description varchar(10))" table="t_order_details" expected-data-file="create_index.xml" />-->
 <!--    </ddl-test-case>-->
 <!--    -->
-<!--    <ddl-test-case sql="CREATE INDEX t_log_index ON t_log (id)">-->
-<!--        <assertion init-sql="CREATE TABLE t_log(id int, status varchar(10))" table="t_log" expected-data-file="create_index.xml" />-->
-<!--    </ddl-test-case>-->
-<!--    -->
-<!--    <ddl-test-case sql="CREATE UNIQUE INDEX t_log_index ON t_log (id)">-->
-<!--        <assertion init-sql="CREATE TABLE t_log(id int, status varchar(10))" table="t_log" expected-data-file="create_unique_index.xml" />-->
-<!--    </ddl-test-case>-->
-<!--    -->
-<!--    <ddl-test-case sql="ALTER TABLE t_log ADD name varchar(10)">-->
-<!--        <assertion init-sql="CREATE TABLE t_log(id int, status varchar(10))" table="t_log" expected-data-file="alter_table.xml" />-->
-<!--    </ddl-test-case>-->
-<!--    -->
-<!--    <ddl-test-case sql="DROP TABLE t_log">-->
-<!--        <assertion init-sql="CREATE TABLE t_log(id int, status varchar(10))" table="t_log" expected-data-file="empty_log.xml" />-->
-<!--    </ddl-test-case>-->
-<!--    -->
-<!--    <ddl-test-case sql="DROP INDEX t_log_index ON t_log" db-types="MySQL,SQLServer">-->
-<!--        <assertion init-sql="CREATE TABLE t_log(id int, status varchar(10));CREATE INDEX t_log_index ON t_log(status)" table="t_log" expected-data-file="empty_log.xml" />-->
-<!--    </ddl-test-case>-->
-<!--    -->
-<!--    <ddl-test-case sql="DROP INDEX order_index" db-types="PostgreSQL,Oracle">-->
-<!--        <assertion init-sql="CREATE TABLE t_log(id int, status varchar(10));CREATE INDEX t_log_index ON t_log(status)" table="t_log" expected-data-file="empty_log.xml" />-->
-<!--    </ddl-test-case>-->
-<!--    -->
-<!--    <ddl-test-case sql="TRUNCATE TABLE t_log">-->
-<!--        <assertion init-sql="CREATE TABLE t_log(id int, status varchar(10))" table="t_log" expected-data-file="empty_log.xml" />-->
-<!--    </ddl-test-case>-->
+<!--    <ddl-test-case sql="CREATE UNIQUE INDEX t_order_details_index ON t_order_details (id)">-->
+<!--        <assertion init-sql="CREATE TABLE t_order_details(id int, description varchar(10))" table="t_order_details" expected-data-file="create_unique_index.xml" />-->
+<!--    </ddl-test-case>-->
+    
+    <ddl-test-case sql="ALTER TABLE t_order_details ADD name varchar(10)">
+        <assertion init-sql="CREATE TABLE t_order_details(id int, description varchar(10))" table="t_order_details" expected-data-file="alter_table.xml" />
+    </ddl-test-case>
+    
+    <ddl-test-case sql="DROP TABLE t_order_details">
+        <assertion init-sql="CREATE TABLE t_order_details(id int, description varchar(10))" table="t_order_details" expected-data-file="empty_table.xml" />
+    </ddl-test-case>
+    
+    <ddl-test-case sql="DROP INDEX t_order_details_index ON t_order_details" db-types="MySQL,SQLServer">
+        <assertion init-sql="CREATE TABLE t_order_details(id int, description varchar(10));CREATE INDEX t_order_details_index ON t_order_details(description)" table="t_order_details" expected-data-file="empty_table.xml" />
+    </ddl-test-case>
+    
+    <ddl-test-case sql="DROP INDEX order_index" db-types="PostgreSQL,Oracle">
+        <assertion init-sql="CREATE TABLE t_order_details(id int, description varchar(10));CREATE INDEX t_order_details_index ON t_order_details(description)" table="t_order_details" expected-data-file="empty_table.xml" />
+    </ddl-test-case>
+    
+    <ddl-test-case sql="TRUNCATE TABLE t_order_details">
+        <assertion init-sql="CREATE TABLE t_order_details(id int, description varchar(10))" table="t_order_details" expected-data-file="empty_table.xml" />
+    </ddl-test-case>
+    
+    <!-- TODO add single table DDL test cases -->
 </integrate-test-cases>
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/db/rules.yaml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/db/rules.yaml
index 9e19c60..2e82c63 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/db/rules.yaml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/db/rules.yaml
@@ -33,6 +33,12 @@ rules:
       keyGenerateStrategy:
         column: item_id
         keyGeneratorName: constant
+    t_order_details:
+      actualDataNodes: db_${0..9}.t_order_details
+      databaseStrategy:
+        standard:
+          shardingColumn: user_id
+          shardingAlgorithmName: standard_test
   bindingTables:
     - t_order,t_order_item
   
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/dbtbl_with_replica_query/rules.yaml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/dbtbl_with_replica_query/rules.yaml
index 52398d1..4bbb329 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/dbtbl_with_replica_query/rules.yaml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/dbtbl_with_replica_query/rules.yaml
@@ -43,6 +43,16 @@ rules:
       keyGenerateStrategy:
         column: item_id
         keyGeneratorName: constant
+    t_order_details:
+      actualDataNodes: pr_ds_${0..9}.t_order_details_${0..9}
+      databaseStrategy:
+        standard:
+          shardingColumn: user_id
+          shardingAlgorithmName: standard_test
+      tableStrategy:
+        standard:
+          shardingColumn: order_id
+          shardingAlgorithmName: standard_test
   bindingTables:
     - t_order,t_order_item
   
diff --git a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/tbl/rules.yaml b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/tbl/rules.yaml
index d4a6bc1..54b575b 100644
--- a/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/tbl/rules.yaml
+++ b/shardingsphere-test/shardingsphere-integration-test/shardingsphere-test-suite/src/test/resources/integrate/env/tbl/rules.yaml
@@ -33,6 +33,12 @@ rules:
       keyGenerateStrategy:
         column: item_id
         keyGeneratorName: constant
+    t_order_details:
+      actualDataNodes: tbl.t_order_details_${0..9}
+      tableStrategy:
+        standard:
+          shardingColumn: order_id
+          shardingAlgorithmName: standard_test
   bindingTables:
     - t_order,t_order_item