Changeset: 95db938bd036 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=95db938bd036
Modified Files:
sql/test/miscellaneous/Tests/simple_plans.sql
sql/test/miscellaneous/Tests/simple_plans.stable.out
Branch: Jun2020
Log Message:
I forgot the theta join case
diffs (104 lines):
diff --git a/sql/test/miscellaneous/Tests/simple_plans.sql
b/sql/test/miscellaneous/Tests/simple_plans.sql
--- a/sql/test/miscellaneous/Tests/simple_plans.sql
+++ b/sql/test/miscellaneous/Tests/simple_plans.sql
@@ -26,4 +26,5 @@ EXPLAIN SELECT 1 FROM another_t t1 INNER
EXPLAIN SELECT 1 FROM another_t t1 INNER JOIN another_t t2 ON t1.col1 BETWEEN
t2.col1 AND 2;
EXPLAIN SELECT 1 FROM tbl_productsales t1 INNER JOIN tbl_productsales t2 ON
t1.product_category LIKE t2.product_category;
+EXPLAIN SELECT 1 FROM another_t t1 INNER JOIN another_t t2 ON t1.col1 >
t2.col1;
rollback;
diff --git a/sql/test/miscellaneous/Tests/simple_plans.stable.out
b/sql/test/miscellaneous/Tests/simple_plans.stable.out
--- a/sql/test/miscellaneous/Tests/simple_plans.stable.out
+++ b/sql/test/miscellaneous/Tests/simple_plans.stable.out
@@ -395,8 +395,89 @@ end user.s26_0;
#multiplex actions= 0 time=3 usec
#profiler actions= 1 time=2 usec
#candidates actions= 1 time=2 usec
-#deadcode actions= 0 time=12 usec
-#postfix actions= 0 time=9 usec
+#deadcode actions= 0 time=9 usec
+#postfix actions= 0 time=6 usec
+#wlc actions= 0 time=1 usec
+#garbagecollector actions= 1 time=45 usec
+#total actions=29 time=478 usec
+#EXPLAIN SELECT 1 FROM another_t t1 INNER JOIN another_t t2 ON t1.col1 >
t2.col1;
+% .explain # table_name
+% mal # name
+% clob # type
+% 148 # length
+function user.s28_0():void;
+ X_2:void := querylog.define("explain select 1 from another_t t1 inner join
another_t t2 on t1.col1 > t2.col1;":str, "default_pipe":str, 23:int);
+barrier X_133:bit := language.dataflow();
+ X_30:bat[:str] := bat.pack(".%3":str);
+ X_31:bat[:str] := bat.pack("%3":str);
+ X_32:bat[:str] := bat.pack("tinyint":str);
+ X_33:bat[:int] := bat.pack(1:int);
+ X_34:bat[:int] := bat.pack(0:int);
+ X_5:int := sql.mvc();
+ C_79:bat[:oid] := sql.tid(X_5:int, "sys":str, "another_t":str, 0:int,
4:int);
+ X_90:bat[:int] := sql.bind(X_5:int, "sys":str, "another_t":str,
"col1":str, 0:int, 0:int, 4:int);
+ X_95:bat[:int] := algebra.projection(C_79:bat[:oid], X_90:bat[:int]);
+ C_13:bat[:oid] := sql.tid(X_5:int, "sys":str, "another_t":str);
+ X_15:bat[:int] := sql.bind(X_5:int, "sys":str, "another_t":str,
"col1":str, 0:int);
+ X_17:bat[:int] := algebra.projection(C_13:bat[:oid], X_15:bat[:int]);
+ (X_99:bat[:oid], X_100:bat[:oid]) := algebra.thetajoin(X_95:bat[:int],
X_17:bat[:int], nil:BAT, nil:BAT, 1:int, true:bit, nil:lng);
+ X_107:bat[:int] := algebra.projection(X_99:bat[:oid], X_95:bat[:int]);
+ X_115:bat[:bte] := algebra.project(X_107:bat[:int], 1:bte);
+ C_81:bat[:oid] := sql.tid(X_5:int, "sys":str, "another_t":str, 1:int,
4:int);
+ X_91:bat[:int] := sql.bind(X_5:int, "sys":str, "another_t":str,
"col1":str, 0:int, 1:int, 4:int);
+ X_96:bat[:int] := algebra.projection(C_81:bat[:oid], X_91:bat[:int]);
+ (X_101:bat[:oid], X_102:bat[:oid]) := algebra.thetajoin(X_96:bat[:int],
X_17:bat[:int], nil:BAT, nil:BAT, 1:int, true:bit, nil:lng);
+ X_108:bat[:int] := algebra.projection(X_101:bat[:oid], X_96:bat[:int]);
+ X_116:bat[:bte] := algebra.project(X_108:bat[:int], 1:bte);
+ C_83:bat[:oid] := sql.tid(X_5:int, "sys":str, "another_t":str, 2:int,
4:int);
+ X_92:bat[:int] := sql.bind(X_5:int, "sys":str, "another_t":str,
"col1":str, 0:int, 2:int, 4:int);
+ X_97:bat[:int] := algebra.projection(C_83:bat[:oid], X_92:bat[:int]);
+ (X_103:bat[:oid], X_104:bat[:oid]) := algebra.thetajoin(X_97:bat[:int],
X_17:bat[:int], nil:BAT, nil:BAT, 1:int, true:bit, nil:lng);
+ X_109:bat[:int] := algebra.projection(X_103:bat[:oid], X_97:bat[:int]);
+ X_117:bat[:bte] := algebra.project(X_109:bat[:int], 1:bte);
+ C_85:bat[:oid] := sql.tid(X_5:int, "sys":str, "another_t":str, 3:int,
4:int);
+ X_93:bat[:int] := sql.bind(X_5:int, "sys":str, "another_t":str,
"col1":str, 0:int, 3:int, 4:int);
+ X_98:bat[:int] := algebra.projection(C_85:bat[:oid], X_93:bat[:int]);
+ (X_105:bat[:oid], X_106:bat[:oid]) := algebra.thetajoin(X_98:bat[:int],
X_17:bat[:int], nil:BAT, nil:BAT, 1:int, true:bit, nil:lng);
+ X_110:bat[:int] := algebra.projection(X_105:bat[:oid], X_98:bat[:int]);
+ X_118:bat[:bte] := algebra.project(X_110:bat[:int], 1:bte);
+ X_127:bat[:bte] := mat.packIncrement(X_115:bat[:bte], 4:int);
+ X_129:bat[:bte] := mat.packIncrement(X_127:bat[:bte], X_116:bat[:bte]);
+ X_130:bat[:bte] := mat.packIncrement(X_129:bat[:bte], X_117:bat[:bte]);
+ X_28:bat[:bte] := mat.packIncrement(X_130:bat[:bte], X_118:bat[:bte]);
+ language.pass(X_95:bat[:int]);
+ language.pass(X_96:bat[:int]);
+ language.pass(X_97:bat[:int]);
+ language.pass(X_17:bat[:int]);
+ language.pass(X_98:bat[:int]);
+exit X_133:bit;
+ sql.resultSet(X_30:bat[:str], X_31:bat[:str], X_32:bat[:str],
X_33:bat[:int], X_34:bat[:int], X_28:bat[:bte]);
+end user.s28_0;
+#inline actions= 0 time=2 usec
+#remap actions= 0 time=2 usec
+#costmodel actions= 1 time=3 usec
+#coercion actions= 0 time=2 usec
+#aliases actions= 1 time=6 usec
+#evaluate actions= 0 time=6 usec
+#emptybind actions= 0 time=1 usec
+#pushselect actions= 0 time=13 usec
+#aliases actions= 0 time=0 usec
+#mitosis actions=4 time=36 usec
+#mergetable actions= 5 time=95 usec
+#deadcode actions= 9 time=16 usec
+#aliases actions= 0 time=1 usec
+#constants actions= 3 time=7 usec
+#commonTerms actions= 0 time=13 usec
+#projectionpath actions= 0 time=6 usec
+#deadcode actions= 0 time=10 usec
+#reorder actions= 1 time=36 usec
+#matpack actions= 1 time=36 usec
+#dataflow actions= 1 time=32 usec
+#multiplex actions= 0 time=3 usec
+#profiler actions= 1 time=3 usec
+#candidates actions= 1 time=3 usec
+#deadcode actions= 0 time=14 usec
+#postfix actions= 0 time=8 usec
#wlc actions= 0 time=1 usec
#garbagecollector actions= 1 time=56 usec
#total actions=29 time=515 usec
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list