Changeset: f46907054425 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f46907054425
Modified Files:
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
monetdb5/optimizer/Tests/groups00.stable.out
monetdb5/optimizer/Tests/mat00.stable.out
monetdb5/optimizer/Tests/mat01.stable.out
Branch: Feb2013
Log Message:
approved output, changes because of all the mergetable and
sub* changes.
diffs (truncated from 532 to 300 lines):
diff --git
a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
--- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
+++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
@@ -55,8 +55,8 @@ Ready.
% . # table_name
% def # name
% clob # type
-% 446 # length
-[
"optimizer.inline();optimizer.remap();optimizer.evaluate();optimizer.costModel();optimizer.coercions();optimizer.emptySet();optimizer.aliases();optimizer.pushselect();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.commonTerms();optimizer.groups();optimizer.joinPath();optimizer.reorder();optimizer.deadcode();optimizer.reduce();optimizer.dataflow();optimizer.history();optimizer.multiplex();optimizer.garbageCollector();"
]
+% 427 # length
+[
"optimizer.inline();optimizer.remap();optimizer.evaluate();optimizer.costModel();optimizer.coercions();optimizer.emptySet();optimizer.aliases();optimizer.pushselect();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.commonTerms();optimizer.joinPath();optimizer.reorder();optimizer.deadcode();optimizer.reduce();optimizer.dataflow();optimizer.history();optimizer.multiplex();optimizer.garbageCollector();"
]
#explain copy into ttt from '/:\tmp/xyz';
% .explain # table_name
% mal # name
@@ -66,8 +66,8 @@ function user.s2_1{autoCommit=true}():vo
X_2 := sql.mvc();
(X_5:bat[:oid,:int] ,X_6:bat[:oid,:int] ,X_7:bat[:oid,:int] ) :=
sql.copy_from("sys":str,"ttt":str,"|":str,"\\n":str,nil:str,"null":str,"/:\\tmp/xyz":str,-1:lng,0:lng,0:int);
X_9 := sql.append(X_2,"sys","ttt","a",X_5);
- X_11 := sql.append(X_9,"sys","ttt","b",X_6);
- X_15 := sql.append(X_11,"sys","ttt","c",X_7);
+ X_11 := sql.append(X_9,"sys":str,"ttt":str,"b",X_6);
+ X_15 := sql.append(X_11,"sys":str,"ttt":str,"c",X_7);
X_16 := aggr.count(X_7);
sql.affectedRows(X_15,X_16,"");
end s2_1;
@@ -83,8 +83,8 @@ end s2_1;
% . # table_name
% def # name
% clob # type
-% 469 # length
-[
"optimizer.inline();optimizer.remap();optimizer.evaluate();optimizer.costModel();optimizer.coercions();optimizer.emptySet();optimizer.aliases();optimizer.pushselect();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.commonTerms();optimizer.groups();optimizer.joinPath();optimizer.reorder();optimizer.deadcode();optimizer.reduce();optimizer.dataflow();optimizer.history();optimizer.multiplex();optimizer.sql_append();optimizer.garbageCollector();"
]
+% 450 # length
+[
"optimizer.inline();optimizer.remap();optimizer.evaluate();optimizer.costModel();optimizer.coercions();optimizer.emptySet();optimizer.aliases();optimizer.pushselect();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.commonTerms();optimizer.joinPath();optimizer.reorder();optimizer.deadcode();optimizer.reduce();optimizer.dataflow();optimizer.history();optimizer.multiplex();optimizer.sql_append();optimizer.garbageCollector();"
]
#explain copy into ttt from '/:\tmp/xyz';
% .explain # table_name
% mal # name
diff --git a/monetdb5/optimizer/Tests/groups00.stable.out
b/monetdb5/optimizer/Tests/groups00.stable.out
--- a/monetdb5/optimizer/Tests/groups00.stable.out
+++ b/monetdb5/optimizer/Tests/groups00.stable.out
@@ -29,13 +29,20 @@ function user.tst():void;
bat.append(d,3.1400001);
bat.append(d,3.1400001);
bat.append(d,3.1400001);
- (ext1,grp1) := group.new(b);
+ (xd,ext1,grp1) := group.subgroup(d);
+ io.print(xd);
io.print(ext1);
io.print(grp1);
- (ext2,grp2) := group.derive(ext1,grp1,c);
+ (xc,ext2,grp2) := group.subgroupdone(c,xd);
+ io.print(xc);
io.print(ext2);
io.print(grp2);
- (ext3,grp3) := group.derive(ext2,grp2,d);
+ (xb,ext3,grp3) := group.subgroupdone(b,xc);
+ io.print(xb);
+ io.print(ext3);
+ io.print(grp3);
+ (xb,ext3,grp3) := group.multicolumns(b,c,d);
+ io.print(xb);
io.print(ext3);
io.print(grp3);
end tst;
@@ -56,13 +63,20 @@ function user.tst():void;
bat.append(d,3.1400001);
bat.append(d,3.1400001);
bat.append(d,3.1400001);
- (ext1,grp1) := group.multicolumns(b);
+ (xd,ext1,grp1) := group.multicolumns(d);
+ io.print(xd);
io.print(ext1);
io.print(grp1);
- (ext2,grp2) := group.multicolumns(b,c);
+ (xc,ext2,grp2) := group.multicolumns(d,c);
+ io.print(xc);
io.print(ext2);
io.print(grp2);
- (ext3,grp3) := group.multicolumns(b,c,d);
+ (xb,ext3,grp3) := group.multicolumns(d,c,b);
+ io.print(xb);
+ io.print(ext3);
+ io.print(grp3);
+ (xb,ext3,grp3) := group.multicolumns(b,c,d);
+ io.print(xb);
io.print(ext3);
io.print(grp3);
end tst;
@@ -70,9 +84,45 @@ end tst;
# h t # name
# void wrd # type
#-----------------#
-[ 0@0, 1 ]
+[ 0@0, 0@0 ]
+[ 1@0, 0@0 ]
+[ 2@0, 0@0 ]
+#-----------------#
+# h t # name
+# void void # type
+#-----------------#
+[ 0@0, 0@0 ]
+#-----------------#
+# h t # name
+# void wrd # type
+#-----------------#
+[ 0@0, 3 ]
+#-----------------#
+# h t # name
+# void oid # type
+#-----------------#
+[ 0@0, 0@0 ]
+[ 1@0, 0@0 ]
+[ 2@0, 1@0 ]
+#-----------------#
+# h t # name
+# void oid # type
+#-----------------#
+[ 0@0, 0@0 ]
+[ 1@0, 2@0 ]
+#-----------------#
+# h t # name
+# void wrd # type
+#-----------------#
+[ 0@0, 2 ]
[ 1@0, 1 ]
-[ 2@0, 1 ]
+#-----------------#
+# h t # name
+# void void # type
+#-----------------#
+[ 0@0, 0@0 ]
+[ 1@0, 1@0 ]
+[ 2@0, 2@0 ]
#-----------------#
# h t # name
# void void # type
@@ -96,18 +146,18 @@ end tst;
[ 2@0, 2@0 ]
#-----------------#
# h t # name
+# void void # type
+#-----------------#
+[ 0@0, 0@0 ]
+[ 1@0, 1@0 ]
+[ 2@0, 2@0 ]
+#-----------------#
+# h t # name
# void wrd # type
#-----------------#
[ 0@0, 1 ]
[ 1@0, 1 ]
[ 2@0, 1 ]
-#-----------------#
-# h t # name
-# void void # type
-#-----------------#
-[ 0@0, 0@0 ]
-[ 1@0, 1@0 ]
-[ 2@0, 2@0 ]
# 12:47:43 >
# 12:47:43 > "Done."
diff --git a/monetdb5/optimizer/Tests/mat00.stable.out
b/monetdb5/optimizer/Tests/mat00.stable.out
--- a/monetdb5/optimizer/Tests/mat00.stable.out
+++ b/monetdb5/optimizer/Tests/mat00.stable.out
@@ -25,16 +25,16 @@ function user.main():void;
bat.append(m1,1@0);
m2 := bat.new(:oid,:oid);
bat.append(m2,2@0);
- X_32 := algebra.select(m0,0@0,2@0);
- X_33 := algebra.select(m1,0@0,2@0);
- X_34 := algebra.select(m2,0@0,2@0);
- X_36 := aggr.count(X_32);
- X_37 := aggr.count(X_33);
- X_38 := aggr.count(X_34);
- X_35 := mat.pack(X_36,X_37,X_38);
- X_39 := algebra.selectNotNil(X_35);
- i := aggr.sum(X_39);
- s := mat.pack(X_32,X_33,X_34);
+ X_35 := algebra.select(m0,0@0,2@0);
+ X_36 := algebra.select(m1,0@0,2@0);
+ X_37 := algebra.select(m2,0@0,2@0);
+ X_39 := aggr.count(X_35);
+ X_40 := aggr.count(X_36);
+ X_41 := aggr.count(X_37);
+ X_38 := mat.pack(X_39,X_40,X_41);
+ X_42 := algebra.selectNotNil(X_38);
+ i := aggr.sum(X_42);
+ s := mat.pack(X_35,X_36,X_37);
io.print(s);
io.print(i);
c0 := bat.new(:oid,:oid);
@@ -43,49 +43,49 @@ function user.main():void;
bat.append(c1,5@0);
c := mat.pack(c0,c1);
bat.append(c,6@0);
- X_40 := algebra.join(m0,c);
- X_41 := algebra.join(m1,c);
- X_42 := algebra.join(m2,c);
- j := mat.pack(X_40,X_41,X_42);
+ b := mat.pack(m0,m1,m2);
+ c := mat.pack(c0,c1);
+ j := algebra.join(b,c);
io.print(j);
b := mat.pack(m0,m1,m2);
io.print(b);
+ c := mat.pack(c0,c1);
io.print(c);
end main;
function user.main():void; # 0 main:void := user.main() {G}
# the Multi Assocation Tables
mdb.List(); # 2 _2:void := MDBlistDetail()
- m0 := bat.new(:oid,:oid); # 3 m0:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
- bat.append(m0,0@0); # 4 _5:bat[:oid,:oid] :=
BKCappend_val_wrap(m0:bat[:oid,:oid], _6:oid) {G}
- m1 := bat.new(:oid,:oid); # 5 m1:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
- bat.append(m1,1@0); # 6 _8:bat[:oid,:oid] :=
BKCappend_val_wrap(m1:bat[:oid,:oid], _9:oid) {G}
- m2 := bat.new(:oid,:oid); # 7 m2:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
- bat.append(m2,2@0); # 8 _11:bat[:oid,:oid] :=
BKCappend_val_wrap(m2:bat[:oid,:oid], _12:oid) {G}
- X_32 := algebra.select(m0,0@0,2@0); # 9 _32:bat[:oid,:oid] :=
ALGselect(m0:bat[:oid,:oid], _6:oid, _12:oid) {G}
- X_33 := algebra.select(m1,0@0,2@0); # 10 _33:bat[:oid,:oid] :=
ALGselect(m1:bat[:oid,:oid], _6:oid, _12:oid) {G}
- X_34 := algebra.select(m2,0@0,2@0); # 11 _34:bat[:oid,:oid] :=
ALGselect(m2:bat[:oid,:oid], _6:oid, _12:oid) {G}
- X_36 := aggr.count(X_32); # 12 _36:wrd :=
ALGcount_bat(_32:bat[:oid,:oid]) {G}
- X_37 := aggr.count(X_33); # 13 _37:wrd :=
ALGcount_bat(_33:bat[:oid,:oid]) {G}
- X_38 := aggr.count(X_34); # 14 _38:wrd :=
ALGcount_bat(_34:bat[:oid,:oid]) {G}
- X_35 := mat.pack(X_36,X_37,X_38); # 15 _35:bat[:oid,:wrd] :=
MATpackValues(_36:wrd, _37:wrd, _38:wrd) {G}
- X_39 := algebra.selectNotNil(X_35); # 16 _39:bat[:oid,:wrd] :=
ALGselectNotNil(_35:bat[:oid,:wrd]) {G}
- i := aggr.sum(X_39); # 17 i:wrd :=
aggr.sum(_39:bat[:oid,:wrd]) {G}
- s := mat.pack(X_32,X_33,X_34); # 18 s:bat[:oid,:oid] :=
MATpack(_32:bat[:oid,:oid], _33:bat[:oid,:oid], _34:bat[:oid,:oid]) {G}
+ m0{horigin=1, torigin=1} := bat.new(:oid,:oid);# 3 m0:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
+ bat.append(m0{horigin=1, torigin=1},0@0);# 4 _5:bat[:oid,:oid] :=
BKCappend_val_wrap(m0:bat[:oid,:oid], _6:oid) {G}
+ m1{horigin=2, torigin=2} := bat.new(:oid,:oid);# 5 m1:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
+ bat.append(m1{horigin=2, torigin=2},1@0);# 6 _8:bat[:oid,:oid] :=
BKCappend_val_wrap(m1:bat[:oid,:oid], _9:oid) {G}
+ m2{horigin=3, torigin=3} := bat.new(:oid,:oid);# 7 m2:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
+ bat.append(m2{horigin=3, torigin=3},2@0);# 8 _11:bat[:oid,:oid] :=
BKCappend_val_wrap(m2:bat[:oid,:oid], _12:oid) {G}
+ X_35{horigin=1} := algebra.select(m0{horigin=1, torigin=1},0@0,2@0);# 9
_35:bat[:oid,:oid] := ALGselect(m0:bat[:oid,:oid], _6:oid, _12:oid) {G}
+ X_36{horigin=2} := algebra.select(m1{horigin=2, torigin=2},0@0,2@0);# 10
_36:bat[:oid,:oid] := ALGselect(m1:bat[:oid,:oid], _6:oid, _12:oid) {G}
+ X_37{horigin=3} := algebra.select(m2{horigin=3, torigin=3},0@0,2@0);# 11
_37:bat[:oid,:oid] := ALGselect(m2:bat[:oid,:oid], _6:oid, _12:oid) {G}
+ X_39 := aggr.count(X_35{horigin=1});# 12 _39:wrd :=
ALGcount_bat(_35:bat[:oid,:oid]) {G}
+ X_40 := aggr.count(X_36{horigin=2});# 13 _40:wrd :=
ALGcount_bat(_36:bat[:oid,:oid]) {G}
+ X_41 := aggr.count(X_37{horigin=3});# 14 _41:wrd :=
ALGcount_bat(_37:bat[:oid,:oid]) {G}
+ X_38 := mat.pack(X_39,X_40,X_41); # 15 _38:bat[:oid,:wrd] :=
MATpackValues(_39:wrd, _40:wrd, _41:wrd) {G}
+ X_42 := algebra.selectNotNil(X_38); # 16 _42:bat[:oid,:wrd] :=
ALGselectNotNil(_38:bat[:oid,:wrd]) {G}
+ i := aggr.sum(X_42); # 17 i:wrd :=
CMDBATsum(_42:bat[:oid,:wrd]) {G}
+ s := mat.pack(X_35{horigin=1},X_36{horigin=2},X_37{horigin=3});# 18
s:bat[:oid,:oid] := MATpack(_35:bat[:oid,:oid], _36:bat[:oid,:oid],
_37:bat[:oid,:oid]) {G}
io.print(s); # 19 _16:void :=
IOprint_val(s:bat[:oid,:oid]) {G}
io.print(i); # 20 _17:void := IOprint_val(i:wrd)
- c0 := bat.new(:oid,:oid); # 21 c0:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
- bat.append(c0,4@0); # 22 _19:bat[:oid,:oid] :=
BKCappend_val_wrap(c0:bat[:oid,:oid], _20:oid) {G}
- c1 := bat.new(:oid,:oid); # 23 c1:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
- bat.append(c1,5@0); # 24 _22:bat[:oid,:oid] :=
BKCappend_val_wrap(c1:bat[:oid,:oid], _23:oid) {G}
- c := mat.pack(c0,c1); # 25 c:bat[:oid,:oid] :=
MATpack(c0:bat[:oid,:oid], c1:bat[:oid,:oid]) {G}
+ c0{horigin=1, torigin=1} := bat.new(:oid,:oid);# 21 c0:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
+ bat.append(c0{horigin=1, torigin=1},4@0);# 22 _19:bat[:oid,:oid] :=
BKCappend_val_wrap(c0:bat[:oid,:oid], _20:oid) {G}
+ c1{horigin=2, torigin=2} := bat.new(:oid,:oid);# 23 c1:bat[:oid,:oid] :=
CMDBATnew(_4:oid, _4:oid) {G}
+ bat.append(c1{horigin=2, torigin=2},5@0);# 24 _22:bat[:oid,:oid] :=
BKCappend_val_wrap(c1:bat[:oid,:oid], _23:oid) {G}
+ c := mat.pack(c0{horigin=1, torigin=1},c1{horigin=2, torigin=2});# 25
c:bat[:oid,:oid] := MATpack(c0:bat[:oid,:oid], c1:bat[:oid,:oid]) {G}
bat.append(c,6@0); # 26 _25:bat[:oid,:oid] :=
BKCappend_val_wrap(c:bat[:oid,:oid], _26:oid) {G}
- X_40 := algebra.join(m0,c); # 27 _40:bat[:oid,:oid] :=
ALGjoin(m0:bat[:oid,:oid], c:bat[:oid,:oid]) {G}
- X_41 := algebra.join(m1,c); # 28 _41:bat[:oid,:oid] :=
ALGjoin(m1:bat[:oid,:oid], c:bat[:oid,:oid]) {G}
- X_42 := algebra.join(m2,c); # 29 _42:bat[:oid,:oid] :=
ALGjoin(m2:bat[:oid,:oid], c:bat[:oid,:oid]) {G}
- j := mat.pack(X_40,X_41,X_42); # 30 j:bat[:oid,:oid] :=
MATpack(_40:bat[:oid,:oid], _41:bat[:oid,:oid], _42:bat[:oid,:oid]) {G}
- io.print(j); # 31 _28:void :=
IOprint_val(j:bat[:oid,:oid]) {G}
- b := mat.pack(m0,m1,m2); # 32 b:bat[:oid,:oid] :=
MATpack(m0:bat[:oid,:oid], m1:bat[:oid,:oid], m2:bat[:oid,:oid]) {G}
- io.print(b); # 33 _29:void :=
IOprint_val(b:bat[:oid,:oid]) {G}
+ b := mat.pack(m0{horigin=1, torigin=1},m1{horigin=2,
torigin=2},m2{horigin=3, torigin=3});# 27 b:bat[:oid,:oid] :=
MATpack(m0:bat[:oid,:oid], m1:bat[:oid,:oid], m2:bat[:oid,:oid]) {G}
+ c := mat.pack(c0{horigin=1, torigin=1},c1{horigin=2, torigin=2});# 28
c:bat[:oid,:oid] := MATpack(c0:bat[:oid,:oid], c1:bat[:oid,:oid]) {G}
+ j := algebra.join(b,c); # 29 j:bat[:oid,:oid] :=
ALGjoin(b:bat[:oid,:oid], c:bat[:oid,:oid]) {G}
+ io.print(j); # 30 _28:void :=
IOprint_val(j:bat[:oid,:oid]) {G}
+ b := mat.pack(m0{horigin=1, torigin=1},m1{horigin=2,
torigin=2},m2{horigin=3, torigin=3});# 31 b:bat[:oid,:oid] :=
MATpack(m0:bat[:oid,:oid], m1:bat[:oid,:oid], m2:bat[:oid,:oid]) {G}
+ io.print(b); # 32 _29:void :=
IOprint_val(b:bat[:oid,:oid]) {G}
+ c := mat.pack(c0{horigin=1, torigin=1},c1{horigin=2, torigin=2});# 33
c:bat[:oid,:oid] := MATpack(c0:bat[:oid,:oid], c1:bat[:oid,:oid]) {G}
io.print(c); # 34 _30:void :=
IOprint_val(c:bat[:oid,:oid]) {G}
end main; # 35
#-----------------#
@@ -93,30 +93,28 @@ end main;
# void int # type
#-----------------#
[ 0@0, 0@0 ]
-[ 0@0, 1@0 ]
-[ 0@0, 2@0 ]
+[ 1@0, 1@0 ]
+[ 2@0, 2@0 ]
[ 3 ]
#-----------------#
# h t # name
# void int # type
#-----------------#
[ 0@0, 4@0 ]
-[ 0@0, 5@0 ]
-[ 0@0, 6@0 ]
+[ 1@0, 5@0 ]
#-----------------#
# h t # name
# void int # type
#-----------------#
[ 0@0, 0@0 ]
-[ 0@0, 1@0 ]
-[ 0@0, 2@0 ]
+[ 1@0, 1@0 ]
+[ 2@0, 2@0 ]
#-----------------#
_______________________________________________
checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list