You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by du...@apache.org on 2022/12/29 06:37:01 UTC
[shardingsphere] branch master updated: Add t_merchant standard table in shadow scenario (#23150)
This is an automated email from the ASF dual-hosted git repository.
duanzhengqiang 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 39b29c12077 Add t_merchant standard table in shadow scenario (#23150)
39b29c12077 is described below
commit 39b29c120773b8d9ae60a52d720707c3733b99ff
Author: ICannerxy <40...@users.noreply.github.com>
AuthorDate: Thu Dec 29 14:36:51 2022 +0800
Add t_merchant standard table in shadow scenario (#23150)
* .
* Add t_merchant standard table in shadow scenario
---
.../env/scenario/shadow/data/actual/dataset.xml | 48 ++++++++++++++++++++++
.../data/actual/init-sql/h2/01-actual-init.sql | 2 +
.../data/actual/init-sql/mysql/01-actual-init.sql | 2 +
.../actual/init-sql/opengauss/01-actual-init.sql | 4 ++
.../data/actual/init-sql/oracle/01-actual-init.sql | 2 +
.../actual/init-sql/postgresql/01-actual-init.sql | 4 ++
.../actual/init-sql/sqlserver/01-actual-init.sql | 2 +
.../env/scenario/shadow/data/expected/dataset.xml | 48 ++++++++++++++++++++++
.../data/expected/init-sql/h2/01-expected-init.sql | 2 +
.../expected/init-sql/mysql/01-expected-init.sql | 2 +
.../init-sql/opengauss/01-expected-init.sql | 4 ++
.../expected/init-sql/oracle/01-expected-init.sql | 2 +
.../init-sql/postgresql/01-expected-init.sql | 4 ++
.../init-sql/sqlserver/01-expected-init.sql | 2 +
.../shadow/proxy/conf/mysql/config-shadow.yaml | 33 +++++++++++++++
.../shadow/proxy/conf/opengauss/config-shadow.yaml | 33 +++++++++++++++
.../proxy/conf/postgresql/config-shadow.yaml | 33 +++++++++++++++
.../test/resources/env/scenario/shadow/rules.yaml | 33 +++++++++++++++
18 files changed, 260 insertions(+)
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/dataset.xml b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/dataset.xml
index 4fb4ffc3cc6..a7a6915a773 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/dataset.xml
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/dataset.xml
@@ -29,6 +29,14 @@
<column name="type_time" type="time" />
<column name="type_timestamp" type="timestamp" />
</metadata>
+ <metadata data-nodes="db.t_merchant,shadow_db.t_merchant">
+ <column name="merchant_id" type="numeric" />
+ <column name="country_id" type="numeric" />
+ <column name="merchant_name" type="varchar" />
+ <column name="business_code" type="varchar" />
+ <column name="telephone" type="varchar" />
+ <column name="creation_date" type="datetime" />
+ </metadata>
<row data-node="db.t_shadow" values="1, 1, pro_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
<row data-node="db.t_shadow" values="2, 1, pro_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
<row data-node="db.t_shadow" values="3, 1, pro_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
@@ -39,4 +47,44 @@
<row data-node="shadow_db.t_shadow" values="3, 0, shadow_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
<row data-node="shadow_db.t_shadow" values="4, 0, shadow_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
<row data-node="shadow_db.t_shadow" values="5, 0, shadow_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
+ <row data-node="db.t_merchant" values="1, 86, tencent, 86000001, 86100000001, 2017-08-08" />
+ <row data-node="db.t_merchant" values="2, 86, haier, 86000002, 86100000002, 2017-08-08" />
+ <row data-node="db.t_merchant" values="3, 86, huawei, 86000003, 86100000003, 2017-08-08" />
+ <row data-node="db.t_merchant" values="4, 86, alibaba, 86000004, 86100000004, 2017-08-08" />
+ <row data-node="db.t_merchant" values="5, 86, lenovo, 86000005, 86100000005, 2017-08-08" />
+ <row data-node="db.t_merchant" values="6, 86, moutai, 86000006, 86100000006, 2017-08-08" />
+ <row data-node="db.t_merchant" values="7, 86, baidu, 86000007, 86100000007, 2017-08-08" />
+ <row data-node="db.t_merchant" values="8, 86, xiaomi, 86000008, 86100000008, 2017-08-08" />
+ <row data-node="db.t_merchant" values="9, 86, vivo, 86000009, 86100000009, 2017-08-08" />
+ <row data-node="db.t_merchant" values="10, 86, oppo, 86000010, 86100000010, 2017-08-08" />
+ <row data-node="db.t_merchant" values="11, 1, google, 01000011, 01100000011, 2017-08-08" />
+ <row data-node="db.t_merchant" values="12, 1, walmart, 01000012, 01100000012, 2017-08-08" />
+ <row data-node="db.t_merchant" values="13, 1, amazon, 01000013, 01100000013, 2017-08-08" />
+ <row data-node="db.t_merchant" values="14, 1, apple, 01000014, 01100000014, 2017-08-08" />
+ <row data-node="db.t_merchant" values="15, 1, microsoft, 01000015, 01100000015, 2017-08-08" />
+ <row data-node="db.t_merchant" values="16, 1, dell, 01000016, 01100000016, 2017-08-08" />
+ <row data-node="db.t_merchant" values="17, 1, johnson, 01000017, 01100000017, 2017-08-08" />
+ <row data-node="db.t_merchant" values="18, 1, intel, 01000018, 01100000018, 2017-08-08" />
+ <row data-node="db.t_merchant" values="19, 1, hp, 01000019, 01100000019, 2017-08-08" />
+ <row data-node="db.t_merchant" values="20, 1, tesla, 01000020, 01100000020, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="1, 86, shadow_tencent, 86000001, 86100000001, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="2, 86, shadow_haier, 86000002, 86100000002, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="3, 86, shadow_huawei, 86000003, 86100000003, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="4, 86, shadow_alibaba, 86000004, 86100000004, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="5, 86, shadow_lenovo, 86000005, 86100000005, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="6, 86, shadow_moutai, 86000006, 86100000006, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="7, 86, shadow_baidu, 86000007, 86100000007, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="8, 86, shadow_xiaomi, 86000008, 86100000008, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="9, 86, shadow_vivo, 86000009, 86100000009, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="10, 86, shadow_oppo, 86000010, 86100000010, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="11, 1, shadow_google, 01000011, 01100000011, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="12, 1, shadow_walmart, 01000012, 01100000012, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="13, 1, shadow_amazon, 01000013, 01100000013, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="14, 1, shadow_apple, 01000014, 01100000014, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="15, 1, shadow_microsoft, 01000015, 01100000015, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="16, 1, shadow_dell, 01000016, 01100000016, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="17, 1, shadow_johnson, 01000017, 01100000017, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="18, 1, shadow_intel, 01000018, 01100000018, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="19, 1, shadow_hp, 01000019, 01100000019, 2017-08-08" />
+ <row data-node="shadow_db.t_merchant" values="20, 1, shadow_tesla, 01000020, 01100000020, 2017-08-08" />
</dataset>
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/h2/01-actual-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/h2/01-actual-init.sql
index 0ccb7fa42e9..4a25798fce7 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/h2/01-actual-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/h2/01-actual-init.sql
@@ -15,5 +15,7 @@
-- limitations under the License.
--
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/mysql/01-actual-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/mysql/01-actual-init.sql
index 2a6a680148f..44a7eb8b063 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/mysql/01-actual-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/mysql/01-actual-init.sql
@@ -22,8 +22,10 @@ DROP DATABASE IF EXISTS db;
CREATE DATABASE db;
CREATE TABLE db.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE db.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
DROP DATABASE IF EXISTS shadow_db;
CREATE DATABASE shadow_db;
CREATE TABLE shadow_db.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE shadow_db.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/opengauss/01-actual-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/opengauss/01-actual-init.sql
index 95f510dae8b..cd77498f339 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/opengauss/01-actual-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/opengauss/01-actual-init.sql
@@ -24,15 +24,19 @@ GRANT ALL PRIVILEGES ON DATABASE shadow_db TO test_user;
\c db
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TYPE season AS ENUM ('spring', 'summer', 'autumn', 'winter');
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum season DEFAULT 'summer', type_decimal NUMERIC(18,2) DEFAULT NULL, type_date DATE DEFAULT NULL, type_time TIME DEFAULT NULL, type_timestamp TIMESTAMP DEFAULT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
\c shadow_db
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TYPE season AS ENUM ('spring', 'summer', 'autumn', 'winter');
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum season DEFAULT 'summer', type_decimal NUMERIC(18,2) DEFAULT NULL, type_date DATE DEFAULT NULL, type_time TIME DEFAULT NULL, type_timestamp TIMESTAMP DEFAULT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/oracle/01-actual-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/oracle/01-actual-init.sql
index f43074ef191..be2bdd14766 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/oracle/01-actual-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/oracle/01-actual-init.sql
@@ -19,9 +19,11 @@ DROP SCHEMA db;
CREATE SCHEMA db;
CREATE TABLE db.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE write_db.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
DROP SCHEMA shadow_db;
CREATE SCHEMA shadow_db;
CREATE TABLE shadow_db.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE write_db.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/postgresql/01-actual-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/postgresql/01-actual-init.sql
index 95f510dae8b..cd77498f339 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/postgresql/01-actual-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/postgresql/01-actual-init.sql
@@ -24,15 +24,19 @@ GRANT ALL PRIVILEGES ON DATABASE shadow_db TO test_user;
\c db
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TYPE season AS ENUM ('spring', 'summer', 'autumn', 'winter');
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum season DEFAULT 'summer', type_decimal NUMERIC(18,2) DEFAULT NULL, type_date DATE DEFAULT NULL, type_time TIME DEFAULT NULL, type_timestamp TIMESTAMP DEFAULT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
\c shadow_db
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TYPE season AS ENUM ('spring', 'summer', 'autumn', 'winter');
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum season DEFAULT 'summer', type_decimal NUMERIC(18,2) DEFAULT NULL, type_date DATE DEFAULT NULL, type_time TIME DEFAULT NULL, type_timestamp TIMESTAMP DEFAULT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/sqlserver/01-actual-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/sqlserver/01-actual-init.sql
index c764bcce2aa..b30bcdca4b8 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/sqlserver/01-actual-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/actual/init-sql/sqlserver/01-actual-init.sql
@@ -19,9 +19,11 @@ DROP DATABASE IF EXISTS db;
CREATE DATABASE db;
CREATE TABLE db.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE db.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
DROP DATABASE IF EXISTS shadow_db;
CREATE DATABASE shadow_db;
CREATE TABLE shadow_db.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE shadow_db.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/dataset.xml b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/dataset.xml
index 046e8080e4c..10f522aa17c 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/dataset.xml
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/dataset.xml
@@ -29,6 +29,14 @@
<column name="type_time" type="time" />
<column name="type_timestamp" type="timestamp" />
</metadata>
+ <metadata data-nodes="prod_dataset.t_merchant,shadow_dataset.t_merchant">
+ <column name="merchant_id" type="numeric" />
+ <column name="country_id" type="numeric" />
+ <column name="merchant_name" type="varchar" />
+ <column name="business_code" type="varchar" />
+ <column name="telephone" type="varchar" />
+ <column name="creation_date" type="datetime" />
+ </metadata>
<row data-node="prod_dataset.t_shadow" values="1, 1, pro_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
<row data-node="prod_dataset.t_shadow" values="2, 1, pro_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
<row data-node="prod_dataset.t_shadow" values="3, 1, pro_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
@@ -39,4 +47,44 @@
<row data-node="shadow_dataset.t_shadow" values="3, 0, shadow_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
<row data-node="shadow_dataset.t_shadow" values="4, 0, shadow_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
<row data-node="shadow_dataset.t_shadow" values="5, 0, shadow_order, S, true, 5, summer, 10.00, 2017-08-08, 18:30:30, 2017-08-08 18:30:30.0" />
+ <row data-node="prod_dataset.t_merchant" values="1, 86, tencent, 86000001, 86100000001, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="2, 86, haier, 86000002, 86100000002, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="3, 86, huawei, 86000003, 86100000003, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="4, 86, alibaba, 86000004, 86100000004, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="5, 86, lenovo, 86000005, 86100000005, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="6, 86, moutai, 86000006, 86100000006, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="7, 86, baidu, 86000007, 86100000007, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="8, 86, xiaomi, 86000008, 86100000008, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="9, 86, vivo, 86000009, 86100000009, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="10, 86, oppo, 86000010, 86100000010, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="11, 1, google, 01000011, 01100000011, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="12, 1, walmart, 01000012, 01100000012, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="13, 1, amazon, 01000013, 01100000013, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="14, 1, apple, 01000014, 01100000014, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="15, 1, microsoft, 01000015, 01100000015, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="16, 1, dell, 01000016, 01100000016, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="17, 1, johnson, 01000017, 01100000017, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="18, 1, intel, 01000018, 01100000018, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="19, 1, hp, 01000019, 01100000019, 2017-08-08" />
+ <row data-node="prod_dataset.t_merchant" values="20, 1, tesla, 01000020, 01100000020, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="1, 86, shadow_tencent, 86000001, 86100000001, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="2, 86, shadow_haier, 86000002, 86100000002, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="3, 86, shadow_huawei, 86000003, 86100000003, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="4, 86, shadow_alibaba, 86000004, 86100000004, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="5, 86, shadow_lenovo, 86000005, 86100000005, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="6, 86, shadow_moutai, 86000006, 86100000006, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="7, 86, shadow_baidu, 86000007, 86100000007, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="8, 86, shadow_xiaomi, 86000008, 86100000008, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="9, 86, shadow_vivo, 86000009, 86100000009, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="10, 86, shadow_oppo, 86000010, 86100000010, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="11, 1, shadow_google, 01000011, 01100000011, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="12, 1, shadow_walmart, 01000012, 01100000012, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="13, 1, shadow_amazon, 01000013, 01100000013, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="14, 1, shadow_apple, 01000014, 01100000014, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="15, 1, shadow_microsoft, 01000015, 01100000015, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="16, 1, shadow_dell, 01000016, 01100000016, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="17, 1, shadow_johnson, 01000017, 01100000017, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="18, 1, shadow_intel, 01000018, 01100000018, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="19, 1, shadow_hp, 01000019, 01100000019, 2017-08-08" />
+ <row data-node="shadow_dataset.t_merchant" values="20, 1, shadow_tesla, 01000020, 01100000020, 2017-08-08" />
</dataset>
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/h2/01-expected-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/h2/01-expected-init.sql
index 5ea66a331fc..f7470ffebf0 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/h2/01-expected-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/h2/01-expected-init.sql
@@ -16,5 +16,7 @@
--
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/mysql/01-expected-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/mysql/01-expected-init.sql
index 56e69205c1b..1f490d65954 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/mysql/01-expected-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/mysql/01-expected-init.sql
@@ -23,9 +23,11 @@ DROP DATABASE IF EXISTS prod_dataset;
CREATE DATABASE prod_dataset;
CREATE TABLE prod_dataset.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE prod_dataset.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
DROP DATABASE IF EXISTS shadow_dataset;
CREATE DATABASE shadow_dataset;
CREATE TABLE shadow_dataset.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE shadow_dataset.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/opengauss/01-expected-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/opengauss/01-expected-init.sql
index 0c6d3086c4c..a770c5c92fe 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/opengauss/01-expected-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/opengauss/01-expected-init.sql
@@ -23,9 +23,11 @@ GRANT ALL PRIVILEGES ON DATABASE prod_dataset TO test_user;
\c prod_dataset;
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TYPE season AS ENUM ('spring', 'summer', 'autumn', 'winter');
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum season DEFAULT 'summer', type_decimal NUMERIC(18,2) DEFAULT NULL, type_date DATE DEFAULT NULL, type_time TIME DEFAULT NULL, type_timestamp TIMESTAMP DEFAULT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
DROP DATABASE IF EXISTS shadow_dataset;
@@ -36,6 +38,8 @@ GRANT ALL PRIVILEGES ON DATABASE shadow_dataset TO test_user;
\c shadow_dataset;
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TYPE season AS ENUM ('spring', 'summer', 'autumn', 'winter');
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum season DEFAULT 'summer', type_decimal NUMERIC(18,2) DEFAULT NULL, type_date DATE DEFAULT NULL, type_time TIME DEFAULT NULL, type_timestamp TIMESTAMP DEFAULT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/oracle/01-expected-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/oracle/01-expected-init.sql
index b8c1c0e4845..c3b40b369e0 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/oracle/01-expected-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/oracle/01-expected-init.sql
@@ -19,9 +19,11 @@ DROP SCHEMA prod_dataset;
CREATE SCHEMA prod_dataset;
CREATE TABLE prod_dataset.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE prod_dataset.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
DROP SCHEMA shadow_dataset;
CREATE SCHEMA shadow_dataset;
CREATE TABLE shadow_dataset.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE shadow_dataset.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/postgresql/01-expected-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/postgresql/01-expected-init.sql
index 0c6d3086c4c..a770c5c92fe 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/postgresql/01-expected-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/postgresql/01-expected-init.sql
@@ -23,9 +23,11 @@ GRANT ALL PRIVILEGES ON DATABASE prod_dataset TO test_user;
\c prod_dataset;
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TYPE season AS ENUM ('spring', 'summer', 'autumn', 'winter');
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum season DEFAULT 'summer', type_decimal NUMERIC(18,2) DEFAULT NULL, type_date DATE DEFAULT NULL, type_time TIME DEFAULT NULL, type_timestamp TIMESTAMP DEFAULT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
DROP DATABASE IF EXISTS shadow_dataset;
@@ -36,6 +38,8 @@ GRANT ALL PRIVILEGES ON DATABASE shadow_dataset TO test_user;
\c shadow_dataset;
DROP TABLE IF EXISTS t_shadow;
+DROP TABLE IF EXISTS t_merchant;
CREATE TYPE season AS ENUM ('spring', 'summer', 'autumn', 'winter');
CREATE TABLE t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum season DEFAULT 'summer', type_decimal NUMERIC(18,2) DEFAULT NULL, type_date DATE DEFAULT NULL, type_time TIME DEFAULT NULL, type_timestamp TIMESTAMP DEFAULT NULL, PRIMARY KEY (order_id));
+CREATE TABLE t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/sqlserver/01-expected-init.sql b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/sqlserver/01-expected-init.sql
index dae338df1d3..fb6e9a2457a 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/sqlserver/01-expected-init.sql
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/data/expected/init-sql/sqlserver/01-expected-init.sql
@@ -19,9 +19,11 @@ DROP DATABASE IF EXISTS prod_dataset;
CREATE DATABASE prod_dataset;
CREATE TABLE prod_dataset.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE prod_dataset.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
DROP DATABASE IF EXISTS shadow_dataset;
CREATE DATABASE shadow_dataset;
CREATE TABLE shadow_dataset.t_shadow (order_id BIGINT NOT NULL, user_id INT NOT NULL, order_name VARCHAR(32) NOT NULL, type_char CHAR(1) NOT NULL, type_boolean BOOLEAN NOT NULL, type_smallint SMALLINT NOT NULL, type_enum ENUM('spring', 'summer', 'autumn', 'winter'), type_decimal DECIMAL(18,2) NOT NULL, type_date DATE NOT NULL, type_time TIME NOT NULL, type_timestamp TIMESTAMP NOT NULL, PRIMARY KEY (order_id));
+CREATE TABLE shadow_dataset.t_merchant (merchant_id INT PRIMARY KEY, country_id SMALLINT NOT NULL, merchant_name VARCHAR(50) NOT NULL, business_code VARCHAR(50) NOT NULL, telephone CHAR(11) NOT NULL, creation_date DATE NOT NULL);
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/mysql/config-shadow.yaml b/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/mysql/config-shadow.yaml
index 75482f38e55..b42fdd93af3 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/mysql/config-shadow.yaml
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/mysql/config-shadow.yaml
@@ -53,6 +53,15 @@ rules:
- user-id-delete-match-algorithm
- user-id-select-match-algorithm
- simple-hint-algorithm
+ t_merchant:
+ dataSourceNames:
+ - shadowDataSource
+ shadowAlgorithmNames:
+ - merchant-id-insert-match-algorithm
+ - merchant-id-update-match-algorithm
+ - merchant-id-delete-match-algorithm
+ - merchant-id-select-match-algorithm
+ - simple-hint-algorithm
shadowAlgorithms:
user-id-insert-match-algorithm:
type: VALUE_MATCH
@@ -82,3 +91,27 @@ rules:
type: SIMPLE_HINT
props:
foo: bar
+ merchant-id-insert-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: insert
+ column: merchant_id
+ value: 0
+ merchant-id-update-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: update
+ column: merchant_id
+ value: 0
+ merchant-id-delete-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: delete
+ column: merchant_id
+ value: 0
+ merchant-id-select-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: select
+ column: merchant_id
+ value: 0
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/opengauss/config-shadow.yaml b/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/opengauss/config-shadow.yaml
index 4c0c8cd1748..91b80137ad6 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/opengauss/config-shadow.yaml
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/opengauss/config-shadow.yaml
@@ -53,6 +53,15 @@ rules:
- user-id-delete-match-algorithm
- user-id-select-match-algorithm
- simple-hint-algorithm
+ t_merchant:
+ dataSourceNames:
+ - shadowDataSource
+ shadowAlgorithmNames:
+ - merchant-id-insert-match-algorithm
+ - merchant-id-update-match-algorithm
+ - merchant-id-delete-match-algorithm
+ - merchant-id-select-match-algorithm
+ - simple-hint-algorithm
shadowAlgorithms:
user-id-insert-match-algorithm:
type: VALUE_MATCH
@@ -82,3 +91,27 @@ rules:
type: SIMPLE_HINT
props:
foo: bar
+ merchant-id-insert-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: insert
+ column: merchant_id
+ value: 0
+ merchant-id-update-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: update
+ column: merchant_id
+ value: 0
+ merchant-id-delete-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: delete
+ column: merchant_id
+ value: 0
+ merchant-id-select-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: select
+ column: merchant_id
+ value: 0
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/postgresql/config-shadow.yaml b/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/postgresql/config-shadow.yaml
index f5b126081b6..90f3c8c4e09 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/postgresql/config-shadow.yaml
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/proxy/conf/postgresql/config-shadow.yaml
@@ -53,6 +53,15 @@ rules:
- user-id-delete-match-algorithm
- user-id-select-match-algorithm
- simple-hint-algorithm
+ t_merchant:
+ dataSourceNames:
+ - shadowDataSource
+ shadowAlgorithmNames:
+ - merchant-id-insert-match-algorithm
+ - merchant-id-update-match-algorithm
+ - merchant-id-delete-match-algorithm
+ - merchant-id-select-match-algorithm
+ - simple-hint-algorithm
shadowAlgorithms:
user-id-insert-match-algorithm:
type: VALUE_MATCH
@@ -82,3 +91,27 @@ rules:
type: SIMPLE_HINT
props:
foo: bar
+ merchant-id-insert-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: insert
+ column: merchant_id
+ value: 0
+ merchant-id-update-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: update
+ column: merchant_id
+ value: 0
+ merchant-id-delete-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: delete
+ column: merchant_id
+ value: 0
+ merchant-id-select-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: select
+ column: merchant_id
+ value: 0
diff --git a/test/e2e/suite/src/test/resources/env/scenario/shadow/rules.yaml b/test/e2e/suite/src/test/resources/env/scenario/shadow/rules.yaml
index f9382959d8f..5a2bf4db598 100644
--- a/test/e2e/suite/src/test/resources/env/scenario/shadow/rules.yaml
+++ b/test/e2e/suite/src/test/resources/env/scenario/shadow/rules.yaml
@@ -31,6 +31,15 @@ rules:
- user-id-delete-match-algorithm
- user-id-select-match-algorithm
- simple-hint-algorithm
+ t_merchant:
+ dataSourceNames:
+ - shadowDataSource
+ shadowAlgorithmNames:
+ - merchant-id-insert-match-algorithm
+ - merchant-id-update-match-algorithm
+ - merchant-id-delete-match-algorithm
+ - merchant-id-select-match-algorithm
+ - simple-hint-algorithm
shadowAlgorithms:
user-id-insert-match-algorithm:
type: VALUE_MATCH
@@ -60,3 +69,27 @@ rules:
type: SIMPLE_HINT
props:
foo: bar
+ merchant-id-insert-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: insert
+ column: merchant_id
+ value: 0
+ merchant-id-update-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: update
+ column: merchant_id
+ value: 0
+ merchant-id-delete-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: delete
+ column: merchant_id
+ value: 0
+ merchant-id-select-match-algorithm:
+ type: VALUE_MATCH
+ props:
+ operation: select
+ column: merchant_id
+ value: 0