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 <[email protected]>
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 <[email protected]>
---
 .../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>

Reply via email to