Changeset: 574d836e5bc2 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=574d836e5bc2
Removed Files:
        monetdb5/optimizer/Tests/ESexample.mal
        monetdb5/optimizer/Tests/ESexample.stable.err
        monetdb5/optimizer/Tests/ESexample.stable.out
        monetdb5/optimizer/Tests/emptyset00.mal
        monetdb5/optimizer/Tests/emptyset00.stable.err
        monetdb5/optimizer/Tests/emptyset00.stable.out
        monetdb5/optimizer/Tests/emptyset01.mal
        monetdb5/optimizer/Tests/emptyset01.stable.err
        monetdb5/optimizer/Tests/emptyset01.stable.out
        monetdb5/optimizer/Tests/rangePush00.mal
        monetdb5/optimizer/Tests/rangePush00.stable.err
        monetdb5/optimizer/Tests/rangePush00.stable.out
        monetdb5/optimizer/Tests/rangePush01.mal
        monetdb5/optimizer/Tests/rangePush01.stable.err
        monetdb5/optimizer/Tests/rangePush01.stable.out
        monetdb5/optimizer/opt_emptySet.c
        monetdb5/optimizer/opt_emptySet.h
        monetdb5/optimizer/opt_pushranges.c
        monetdb5/optimizer/opt_pushranges.h
Modified Files:
        clients/Tests/exports.stable.out
        monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err
        monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out
        monetdb5/optimizer/Makefile.ag
        monetdb5/optimizer/Tests/All
        monetdb5/optimizer/Tests/tst4005.mal
        monetdb5/optimizer/opt_pipes.c
        monetdb5/optimizer/opt_support.c
        monetdb5/optimizer/opt_support.h
        monetdb5/optimizer/opt_wrapper.c
        monetdb5/optimizer/optimizer.mal
        sql/backends/monet5/Tests/optimizers.sql
        sql/backends/monet5/Tests/optimizers.stable.err
        sql/test/BugTracker-2009/Tests/reorder.SF-2770608.sql
        sql/test/BugTracker-2009/Tests/table-leftovers.SF-2779462.sql
Branch: default
Log Message:

Move the emptyset optimizer to the attic
Of little use, empty sets should be handled automatically
by the MAL instruction implementations.


diffs (truncated from 1340 to 300 lines):

diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -1683,7 +1683,6 @@ int OPTcostModelImplementation(Client cn
 int OPTdataflowImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr p);
 int OPTdeadcodeImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
 int OPTdumpQEPImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr p);
-int OPTemptySetImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr p);
 int OPTevaluateImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
 int OPTfactorizeImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
 int OPTgarbageCollectorImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr 
stk, InstrPtr pci);
@@ -1702,7 +1701,6 @@ int OPTmultiplexImplementation(Client cn
 str OPTmultiplexSimple(Client cntxt);
 str OPTorcam(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
 int OPTorcamImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr 
p);
-int OPTpushrangesImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
 int OPTpushselectImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
 int OPTquerylogImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr pci);
 int OPTrecyclerImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, 
InstrPtr p);
diff --git 
a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err 
b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err
--- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err
+++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err
@@ -30,16 +30,16 @@ stderr of test 'opt_sql_append` in direc
 # 22:58:57 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=rome" 
"--port=36275"
 # 22:58:57 >  
 
-MAPI  = (monetdb) /var/tmp/mtest-28428/.s.monetdb.31099
+MAPI  = (monetdb) /var/tmp/mtest-21398/.s.monetdb.39125
 QUERY = explain copy into ttt from '\tmp/xyz';
 ERROR = !COPY INTO: filename must have absolute path: \tmp/xyz
-MAPI  = (monetdb) /var/tmp/mtest-28428/.s.monetdb.31099
+MAPI  = (monetdb) /var/tmp/mtest-21398/.s.monetdb.39125
 QUERY = explain copy into ttt from 'a:\tmp/xyz';
 ERROR = !COPY INTO: filename must have absolute path: a:\tmp/xyz
-MAPI  = (monetdb) /var/tmp/mtest-28428/.s.monetdb.31099
+MAPI  = (monetdb) /var/tmp/mtest-21398/.s.monetdb.39125
 QUERY = explain copy into ttt from '\tmp/xyz';
 ERROR = !COPY INTO: filename must have absolute path: \tmp/xyz
-MAPI  = (monetdb) /var/tmp/mtest-28428/.s.monetdb.31099
+MAPI  = (monetdb) /var/tmp/mtest-21398/.s.monetdb.39125
 QUERY = explain copy into ttt from 'Z:/tmp/xyz';
 ERROR = !COPY INTO: filename must have absolute path: Z:/tmp/xyz
 
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.
 % .L # table_name
 % def # name
 % clob # type
-% 470 # length
-[ 
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptySet();optimizer.aliases();optimizer.pushselect();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.commonTerms();optimizer.joinPath();optimizer.reorder();optimizer.deadcode();optimizer.reduce();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.garbageCollector();"
     ]
+% 449 # length
+[ 
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.aliases();optimizer.pushselect();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.commonTerms();optimizer.joinPath();optimizer.reorder();optimizer.deadcode();optimizer.reduce();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.garbageCollector();"
  ]
 #explain copy into ttt from '/tmp/xyz';
 % .explain # table_name
 % mal # name
@@ -89,8 +89,8 @@ end user.s4_1;
 % .L # table_name
 % def # name
 % clob # type
-% 493 # length
-[ 
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptySet();optimizer.aliases();optimizer.pushselect();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.commonTerms();optimizer.joinPath();optimizer.reorder();optimizer.deadcode();optimizer.reduce();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.sql_append();optimizer.garbageCollector();"
      ]
+% 472 # length
+[ 
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.aliases();optimizer.pushselect();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.commonTerms();optimizer.joinPath();optimizer.reorder();optimizer.deadcode();optimizer.reduce();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.sql_append();optimizer.garbageCollector();"
   ]
 #explain copy into ttt from '/tmp/xyz';
 % .explain # table_name
 % mal # name
diff --git a/monetdb5/optimizer/Makefile.ag b/monetdb5/optimizer/Makefile.ag
--- a/monetdb5/optimizer/Makefile.ag
+++ b/monetdb5/optimizer/Makefile.ag
@@ -37,7 +37,6 @@ lib_optimizer = {
                opt_costModel.c opt_costModel.h \
                opt_dataflow.c opt_dataflow.h \
                opt_deadcode.c opt_deadcode.h \
-               opt_emptySet.c opt_emptySet.h \
                opt_evaluate.c opt_evaluate.h \
                opt_factorize.c opt_factorize.h \
                opt_garbageCollector.c opt_garbageCollector.h \
@@ -54,7 +53,6 @@ lib_optimizer = {
                opt_multiplex.c opt_multiplex.h \
                opt_pipes.c opt_pipes.h \
                opt_prelude.c opt_prelude.h \
-               opt_pushranges.c opt_pushranges.h \
                opt_qep.c opt_qep.h \
                opt_recycler.c opt_recycler.h \
                opt_reduce.c opt_reduce.h \
diff --git a/monetdb5/optimizer/Tests/All b/monetdb5/optimizer/Tests/All
--- a/monetdb5/optimizer/Tests/All
+++ b/monetdb5/optimizer/Tests/All
@@ -38,9 +38,6 @@ reorder00
 #rangePush00 optimizer out of date
 #rangePush01
 
-#emptyset00 Optimizer does not deal with subselects
-#emptyset01 no more kdifference
-
 inline00
 inline01
 inline02
diff --git a/monetdb5/optimizer/Tests/ESexample.mal 
b/monetdb5/optimizer/Tests/ESexample.mal
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/ESexample.mal
+++ /dev/null
@@ -1,11 +0,0 @@
-function tst();
-    V1 := bat.new(:oid,:oid);
-    V7{rows=0} := bat.new(:oid,:oid);
-    (V17,V17b) := 
algebra.subjoin(V1,V7,nil:bat[:oid,:oid],nil:bat[:oid,:oid],true,0:lng);
-    bat.append(V1,V17);
-end tst;
-    optimizer.costModel("user","tst");
-    optimizer.emptySet("user","tst");
-    optimizer.aliases("user","tst");
-    optimizer.deadcode("user","tst");
-       mdb.List("user","tst");
diff --git a/monetdb5/optimizer/Tests/ESexample.stable.err 
b/monetdb5/optimizer/Tests/ESexample.stable.err
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/ESexample.stable.err
+++ /dev/null
@@ -1,12 +0,0 @@
-stderr of test 'ESexample` in directory 'monetdb5/optimizer` itself:
-
-
-# 22:08:09 >  
-# 22:08:09 >  Mtimeout -timeout 60 Mserver 
"--config=/ufs/mk/monet5/src/mal/Tests/All.conf" --debug=10 --set 
"monet_mod_path=/ufs/mk/monet5/Linux/lib/MonetDB5:/ufs/mk/opensource/MonetDB/Linux/lib/MonetDB"
 --set "gdk_dbfarm=/ufs/mk/opensource/MonetDB/Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/opensource/MonetDB/Linux/var/MonetDB5/log" --set 
mapi_port=39624 --set sql_port=43520 --set xquery_port=59650 --set 
monet_prompt= --trace --dbname=mTests_src_optimizer  ESexample.mal < /dev/null
-# 22:08:09 >  
-
-
-# 22:08:09 >  
-# 22:08:09 >  Done.
-# 22:08:09 >  
-
diff --git a/monetdb5/optimizer/Tests/ESexample.stable.out 
b/monetdb5/optimizer/Tests/ESexample.stable.out
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/ESexample.stable.out
+++ /dev/null
@@ -1,34 +0,0 @@
-stdout of test 'ESexample` in directory 'monetdb5/optimizer` itself:
-
-
-# 22:08:09 >  
-# 22:08:09 >  Mtimeout -timeout 60 Mserver 
"--config=/ufs/mk/monet5/src/mal/Tests/All.conf" --debug=10 --set 
"monet_mod_path=/ufs/mk/monet5/Linux/lib/MonetDB5:/ufs/mk/opensource/MonetDB/Linux/lib/MonetDB"
 --set "gdk_dbfarm=/ufs/mk/opensource/MonetDB/Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/opensource/MonetDB/Linux/var/MonetDB5/log" --set 
mapi_port=39624 --set sql_port=43520 --set xquery_port=59650 --set 
monet_prompt= --trace --dbname=mTests_src_optimizer  ESexample.mal < /dev/null
-# 22:08:09 >  
-
-# MonetDB server v5.9.0, based on kernel v1.27.0
-# Serving database 'mTests_src_optimizer', using 4 threads
-# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs dynamically 
linked
-# Copyright (c) 1993-July 2008 CWI.
-# Copyright (c) August 2008- MonetDB B.V., all rights reserved
-# Visit http://monetdb.cwi.nl/ for further information
-# Listening for connection requests on mapi:monetdb://eir.ins.cwi.nl:32348/
-function user.tst():void;
-    V1 := bat.new(:oid,:oid);
-    V7 := bat.new(:oid,:oid);
-    (V17,V17b) := 
algebra.subjoin(V1,V7,nil:bat[:oid,:oid],nil:bat[:oid,:oid],true,0:lng);
-    bat.append(V1,V17);
-end user.tst;
-function user.main():void;
-    mdb.List("user","tst");
-end user.main;
-function user.tst():void;               #  0 tst:void := user.tst() {G}
-    V1 := bat.new(:oid,:oid);           #  1 V1:bat[:oid,:oid] := 
CMDBATnew(_2:oid, _2:oid) {G}
-    V7{rows=0} := bat.new(:oid,:oid);   #  2 V7:bat[:oid,:oid] := 
CMDBATnew(_2:oid, _2:oid) {G}
-    (V17,V17b) := 
algebra.subjoin(V1,V7{rows=0},nil:bat[:oid,:oid],nil:bat[:oid,:oid],true,0:lng);#
  3 (V17:bat[:oid,:oid], V17b:bat[:oid,:oid]) := ALGsubjoin(V1:bat[:oid,:oid], 
V7:bat[:oid,:oid], _7:bat[:oid,:oid], _8:bat[:oid,:oid], _9:bit, _10:lng) {G}
-    bat.append(V1,V17);                 #  4 _11:bat[:oid,:oid] := 
BKCappend_wrap(V1:bat[:oid,:oid], V17:bat[:oid,:oid]) {G}
-end user.tst;                           #  5  
-
-# 22:08:09 >  
-# 22:08:09 >  Done.
-# 22:08:09 >  
-
diff --git a/monetdb5/optimizer/Tests/emptyset00.mal 
b/monetdb5/optimizer/Tests/emptyset00.mal
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/emptyset00.mal
+++ /dev/null
@@ -1,10 +0,0 @@
-       b := bat.new(:oid,:int);
-       x := bat.new(:oid,:oid);
-       s1 := algebra.subselect(b,x,80,90,true,true,false);
-       s2 := algebra.subselect(b,s1,90,80,true,true,false);
-       s3 := algebra.subselect(b,s2,80,80,true,true,false);
-       io.print(s3);
-
-optimizer.pushranges();
-optimizer.emptySet();
-mdb.List();
diff --git a/monetdb5/optimizer/Tests/emptyset00.stable.err 
b/monetdb5/optimizer/Tests/emptyset00.stable.err
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/emptyset00.stable.err
+++ /dev/null
@@ -1,12 +0,0 @@
-stderr of test 'emptyset00` in directory 'monetdb5/optimizer` itself:
-
-
-# 08:35:57 >  
-# 08:35:57 >  Mtimeout -timeout 60 mserver5 
"--config=/ufs/mk/monet5/Linux/etc/MonetDB5.conf" --debug=10 --set 
"monet_mod_path=/ufs/mk/monet5/Linux/lib/MonetDB5:/ufs/mk/opensource/MonetDB/Linux/lib/MonetDB"
 --set "gdk_dbfarm=/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5/Linux/var/MonetDB5/dblogs" --set mapi_port=34817 
--set monet_prompt= --trace --dbname=mTests_src_optimizer  emptyset00.mal < 
/dev/null
-# 08:35:57 >  
-
-
-# 08:35:57 >  
-# 08:35:57 >  Done.
-# 08:35:57 >  
-
diff --git a/monetdb5/optimizer/Tests/emptyset00.stable.out 
b/monetdb5/optimizer/Tests/emptyset00.stable.out
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/emptyset00.stable.out
+++ /dev/null
@@ -1,40 +0,0 @@
-stdout of test 'emptyset00` in directory 'monetdb5/optimizer` itself:
-
-
-# 08:35:57 >  
-# 08:35:57 >  Mtimeout -timeout 60 mserver5 
"--config=/ufs/mk/monet5/Linux/etc/MonetDB5.conf" --debug=10 --set 
"monet_mod_path=/ufs/mk/monet5/Linux/lib/MonetDB5:/ufs/mk/opensource/MonetDB/Linux/lib/MonetDB"
 --set "gdk_dbfarm=/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5/Linux/var/MonetDB5/dblogs" --set mapi_port=34817 
--set monet_prompt= --trace --dbname=mTests_src_optimizer  emptyset00.mal < 
/dev/null
-# 08:35:57 >  
-
-# MonetDB Server v4.99.19
-# Copyright (c) 1993-2006 CWI, all rights reserved
-# Compiled for x86_64-redhat-linux-gnu/64bit with 64bit OIDs dynamically linked
-# config:/ufs/mk/monet5/Linux/etc/MonetDB5.conf
-# dbfarm:/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm
-# dbname:mTests_src_optimizer
-# Visit http://monetdb.cwi.nl/ for further information
-# Listening for connection requests on mapi:monetdb://eir.ins.cwi.nl:32348/
-function user.main():void;
-    b := bat.new(:oid,:int);
-    s1 := algebra.select(b,80,90);
-    s2 := bat.new(:oid,:int);
-    s3 := bat.new(:oid,:int);
-    io.print(s3);
-    mdb.List();
-end main;
-#-----------------#
-# h    t         # name
-# void int       # type
-#-----------------#
-function user.main():void;              #  0 main:void := user.main() {G}
-    b := bat.new(:oid,:int);            #  1 b:bat[:oid,:int] := 
CMDBATnew(_2:oid, _3:int) {G}
-    s1 := algebra.select(b,80,90);      #  2 s1:bat[:oid,:int] := 
ALGselect(b:bat[:oid,:int], _5:int, _6:int) {G}
-    s2{rows=0} := bat.new(:oid,:int);   #  3 s2:bat[:oid,:int] := 
CMDBATnew(_2:oid, _3:int) {G}
-    s3{rows=0} := bat.new(:oid,:int);   #  4 s3:bat[:oid,:int] := 
CMDBATnew(_2:oid, _3:int) {G}
-    io.print(s3{rows=0});               #  5 _9:void := 
IOprint_val(s3:bat[:oid,:int]) {G}
-    mdb.List();                         #  6 _12:void := MDBlistDetail() 
-end main;                               #  7  
-
-# 08:35:57 >  
-# 08:35:57 >  Done.
-# 08:35:57 >  
-
diff --git a/monetdb5/optimizer/Tests/emptyset01.mal 
b/monetdb5/optimizer/Tests/emptyset01.mal
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/emptyset01.mal
+++ /dev/null
@@ -1,26 +0,0 @@
-#beware that the ESoptimizer does not remove the type of MALException
-function do{inline}(V1:bat[:oid,:oid]);
-barrier (x,z):= iterator.new(V1);
-       io.print("loop");
-catch MALException:str;
-       io.print(MALException);
-exit MALException;
-exit(x,z);
-end do;
-
-function tst();
-    V1 := bat.new(:oid,:oid);
-    V7 := bat.new(:oid,:oid);
-    V10{rows=0:lng} := bat.new(:oid,:oid);
-    V11 := bat.reverse(V10);
-    V12 := algebra.kdifference(V7,V11);
-    V16 := algebra.mark(V12);
-    V17 := algebra.join(V16,V7);
-    bat.append(V1,V17);
-       do(V1);
-       io.print("done");
-end tst;
-    optimizer.inline("user","tst");
-    optimizer.costModel("user","tst");
-    optimizer.emptySet("user","tst");
-       mdb.List("user","tst");
diff --git a/monetdb5/optimizer/Tests/emptyset01.stable.err 
b/monetdb5/optimizer/Tests/emptyset01.stable.err
deleted file mode 100644
--- a/monetdb5/optimizer/Tests/emptyset01.stable.err
+++ /dev/null
@@ -1,14 +0,0 @@
-stderr of test 'emptyset01` in directory 'monetdb5/optimizer` itself:
-
-
-# 08:05:29 >  
-# 08:05:29 >  Mtimeout -timeout 60 mserver5 
"--config=/ufs/mk/monet5/Linux/etc/monetdb5.conf" --debug=10 --set 
"monet_mod_path=/ufs/mk/monet5//Linux/lib/MonetDB5:/ufs/mk/monet5//Linux/lib/MonetDB5/lib:/ufs/mk/monet5//Linux/lib/MonetDB5/bin"
 --set "gdk_dbfarm=/ufs/mk/monet5//Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5//Linux/var/MonetDB5/sql_logs" --set 
"xquery_logdir=/ufs/mk/monet5//Linux/var/MonetDB5/xquery_logs" --set 
mapi_port=38505 --set xrpc_port=43491 --set monet_prompt= --trace 
--dbname=mTests_src_optimizer  emptyset01.mal
-# 08:05:29 >  
-
-#warning: please don't forget to set your vault key!
-#(see /ufs/mk/monet5/Linux/etc/monetdb5.conf)
-
-# 08:05:29 >  
-# 08:05:29 >  Done.
-# 08:05:29 >  
-
diff --git a/monetdb5/optimizer/Tests/emptyset01.stable.out 
b/monetdb5/optimizer/Tests/emptyset01.stable.out
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to