Changeset: 0863e001f115 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0863e001f115
Modified Files:
monetdb5/optimizer/opt_prelude.c
sql/backends/monet5/sql_gencode.c
sql/test/BugTracker-2009/Tests/join_topn.SF-2654133.stable.out
Branch: default
Log Message:
For cross product of tables use mal instruction algebra.crossproduct()
This changes the order of tuples produced by the cross product in join_topn
test.
diffs (53 lines):
diff --git a/monetdb5/optimizer/opt_prelude.c b/monetdb5/optimizer/opt_prelude.c
--- a/monetdb5/optimizer/opt_prelude.c
+++ b/monetdb5/optimizer/opt_prelude.c
@@ -284,7 +284,7 @@ void optimizerInit(void){
copyRef = putName("copy",4);
copy_fromRef = putName("copy_from",9);
count_no_nilRef = putName("count_no_nil",12);
- crossRef = putName("cross",5);
+ crossRef = putName("crossproduct",12);
createRef = putName("create",6);
datacellRef = putName("datacell",8);
dataflowRef = putName("dataflow",8);
diff --git a/sql/backends/monet5/sql_gencode.c
b/sql/backends/monet5/sql_gencode.c
--- a/sql/backends/monet5/sql_gencode.c
+++ b/sql/backends/monet5/sql_gencode.c
@@ -627,7 +627,7 @@ dump_crossproduct(MalBlkPtr mb, int l, i
q = pushArgument(mb, q, z);
l = getDestVar(q);
- q = newStmt2(mb, algebraRef, joinRef);
+ q = newStmt2(mb, algebraRef, crossRef);
q = pushArgument(mb, q, l);
q = pushArgument(mb, q, r);
return q;
diff --git a/sql/test/BugTracker-2009/Tests/join_topn.SF-2654133.stable.out
b/sql/test/BugTracker-2009/Tests/join_topn.SF-2654133.stable.out
--- a/sql/test/BugTracker-2009/Tests/join_topn.SF-2654133.stable.out
+++ b/sql/test/BugTracker-2009/Tests/join_topn.SF-2654133.stable.out
@@ -31,17 +31,18 @@ Ready.
% .tables, .tables, .tables, .tables, .tables,
.tables, .tables, .tables, .tables, sys.x, sys.x #
table_name
% id, name, schema_id, query, type, system, commit_action,
readonly, temporary, n, s # name
% int, varchar, int, varchar, smallint, boolean,
smallint, boolean, tinyint, int, varchar # type
-% 4, 12, 4, 0, 1, 5, 1, 5, 1, 1,
3 # length
+% 4, 9, 4, 0, 1, 5, 1, 5, 1, 1,
5 # length
[ 2001, "schemas", 2000, NULL, 0, true, 0, false,
0, 1, "one" ]
+[ 2001, "schemas", 2000, NULL, 0, true, 0, false,
0, 2, "two" ]
+[ 2001, "schemas", 2000, NULL, 0, true, 0, false,
0, 3, "three" ]
[ 2006, "types", 2000, NULL, 0, true, 0, false,
0, 1, "one" ]
+[ 2006, "types", 2000, NULL, 0, true, 0, false,
0, 2, "two" ]
+[ 2006, "types", 2000, NULL, 0, true, 0, false,
0, 3, "three" ]
[ 2015, "functions", 2000, NULL, 0, true, 0, false,
0, 1, "one" ]
+[ 2015, "functions", 2000, NULL, 0, true, 0, false,
0, 2, "two" ]
+[ 2015, "functions", 2000, NULL, 0, true, 0, false,
0, 3, "three" ]
[ 2024, "args", 2000, NULL, 0, true, 0, false, 0,
1, "one" ]
-[ 2032, "sequences", 2000, NULL, 0, true, 0, false,
0, 1, "one" ]
-[ 2042, "dependencies", 2000, NULL, 0, true, 0, false,
0, 1, "one" ]
-[ 2046, "connections", 2000, NULL, 0, true, 0, false,
0, 1, "one" ]
-[ 2055, "_tables", 2000, NULL, 0, true, 0, false,
0, 1, "one" ]
-[ 2064, "_columns", 2000, NULL, 0, true, 0, false,
0, 1, "one" ]
-[ 2075, "keys", 2000, NULL, 0, true, 0, false, 0,
1, "one" ]
+#drop table x cascade;
# 19:39:26 >
# 19:39:26 > Done.
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list