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/11/28 12:34:16 UTC

[shardingsphere] branch master updated: 19937 federation optimization test 20221128 (#22468)

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 3e31171323a 19937 federation optimization test 20221128 (#22468)
3e31171323a is described below

commit 3e31171323ac64e27eed5e50393a1f6d6ad8d865
Author: boyjoy1127 <10...@users.noreply.github.com>
AuthorDate: Mon Nov 28 20:34:04 2022 +0800

    19937 federation optimization test 20221128 (#22468)
    
    * style: modify federation-query-sql-cases.xml code style.
    
    * test: add test schema.
    
    * test: add test schema.
    
    * style: modify code style.
    
    * test: add test case.
    
    Co-authored-by: boyjoy1127 <bo...@126.com>
---
 .../src/test/resources/cases/federation-query-sql-cases.xml | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/kernel/sql-federation/optimizer/src/test/resources/cases/federation-query-sql-cases.xml b/kernel/sql-federation/optimizer/src/test/resources/cases/federation-query-sql-cases.xml
index ee0e9d66348..4c26e2c9e14 100644
--- a/kernel/sql-federation/optimizer/src/test/resources/cases/federation-query-sql-cases.xml
+++ b/kernel/sql-federation/optimizer/src/test/resources/cases/federation-query-sql-cases.xml
@@ -68,4 +68,17 @@
     <test-case sql="SELECT MAX(order_id), MIN(order_id), SUM(order_id), AVG(order_id), COUNT(1) FROM t_order_federate GROUP BY user_id">
         <assertion expected-result="EnumerableCalc(expr#0..5=[{inputs}], expr#6=[0], expr#7=[=($t4, $t6)], expr#8=[null:DECIMAL(19, 9)], expr#9=[CASE($t7, $t8, $t3)], expr#10=[/($t9, $t4)], EXPR$0=[$t1], EXPR$1=[$t2], EXPR$2=[$t9], EXPR$3=[$t10], EXPR$4=[$t5])  EnumerableAggregate(group=[{0}], EXPR$0=[MAX($1)], EXPR$1=[MIN($1)], EXPR$2=[$SUM0($2)], agg#3=[COUNT($2)], EXPR$4=[COUNT()])    EnumerableCalc(expr#0..1=[{inputs}], expr#2=[CAST($t0):DECIMAL(19, 9)], user_id=[$t1], order_id=[$t0] [...]
     </test-case>
+    
+    <test-case sql="SELECT * FROM t_single_table s INNER JOIN t_order o ON s.id = o.order_id">
+        <assertion expected-result="EnumerableCalc(expr#0..9=[{inputs}], proj#0..8=[{exprs}])  EnumerableHashJoin(condition=[=($1, $9)], joinType=[inner])    TranslatableTableScan(table=[[federate_jdbc, t_single_table]], fields=[[0, 1, 2]])    EnumerableCalc(expr#0..5=[{inputs}], expr#6=[CAST($t0):JavaType(class java.lang.Integer)], proj#0..6=[{exprs}])      TranslatableTableScan(table=[[federate_jdbc, t_order]], fields=[[0, 1, 2, 3, 4, 5]])"/>
+    </test-case>
+    
+    <test-case sql="select t_order_federate.*, t_order_item_federate_sharding.* from t_order_federate, t_order_item_federate_sharding where t_order_federate.order_id = t_order_item_federate_sharding.item_id AND t_order_item_federate_sharding.remarks = 't_order_item_federate_sharding' ">
+        <assertion expected-result="EnumerableCalc(expr#0..9=[{inputs}], proj#0..2=[{exprs}], item_id=[$t4], order_id1=[$t5], user_id0=[$t6], status0=[$t7], remarks=[$t8])  EnumerableHashJoin(condition=[=($3, $9)], joinType=[inner])    EnumerableCalc(expr#0..2=[{inputs}], expr#3=[CAST($t0):INTEGER], proj#0..3=[{exprs}])      TranslatableTableScan(table=[[federate_jdbc, t_order_federate]], fields=[[0, 1, 2]])    EnumerableCalc(expr#0..4=[{inputs}], expr#5=[CAST($t0):INTEGER], proj#0..5=[{ [...]
+    </test-case>
+    
+    <test-case sql="select o.*, i.* from t_order_federate o, t_order_item_federate_sharding i where o.order_id = i.item_id">
+        <assertion expected-result="EnumerableCalc(expr#0..9=[{inputs}], proj#0..2=[{exprs}], item_id=[$t4], order_id1=[$t5], user_id0=[$t6], status0=[$t7], remarks=[$t8])  EnumerableHashJoin(condition=[=($3, $9)], joinType=[inner])    EnumerableCalc(expr#0..2=[{inputs}], expr#3=[CAST($t0):INTEGER], proj#0..3=[{exprs}])      TranslatableTableScan(table=[[federate_jdbc, t_order_federate]], fields=[[0, 1, 2]])    EnumerableCalc(expr#0..4=[{inputs}], expr#5=[CAST($t0):INTEGER], proj#0..5=[{ [...]
+    </test-case>
+    
 </test-cases>