Changeset: 0ef249d9633a for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0ef249d9633a
Added Files:
        monetdb5/optimizer/Tests/BCLexample.stable.err
        monetdb5/optimizer/Tests/BCLexample.stable.out
Modified Files:
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures.stable.out.int128
        clients/Tests/exports.stable.out
        sql/test/Tests/setoptimizer.stable.out
        sql/test/mergetables/Tests/mergequery.stable.out
        sql/test/remote/Tests/partition_elim.stable.out
Branch: compressedcandidates
Log Message:

Test run with new API


diffs (truncated from 614 to 300 lines):

diff --git a/clients/Tests/MAL-signatures.stable.out 
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -526,6 +526,8 @@ Ready.
 [ "algebra",   "thetajoin",    "command algebra.thetajoin(l:bat[:any_1], 
r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], op:int, nil_matches:bit, 
estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ",   "ALGthetajoin;",        
"Theta join with candidate lists"       ]
 [ "algebra",   "thetaselect",  "command algebra.thetaselect(b:bat[:any_1], 
val:any_1, op:str):bat[:oid] ",     "ALGthetaselect1;",     "Select all head 
values for which the tail value obeys the relation\n\tvalue OP VAL.\n\tInput is 
a dense-headed BAT, output is a dense-headed BAT with in\n\tthe tail the head 
value of the input BAT for which the\n\trelationship holds.  The output BAT is 
sorted on the tail value."        ]
 [ "algebra",   "thetaselect",  "command algebra.thetaselect(b:bat[:any_1], 
s:bat[:oid], val:any_1, op:str):bat[:oid] ",        "ALGthetaselect2;",     
"Select all head values of the first input BAT for which the tail 
value\n\tobeys the relation value OP VAL and for which the head value occurs 
in\n\tthe tail of the second input BAT.\n\tInput is a dense-headed BAT, output 
is a dense-headed BAT with in\n\tthe tail the head value of the input BAT for 
which the\n\trelationship holds.  The output BAT is sorted on the tail value."  
    ]
+[ "algebra",   "thetaselect",  "command algebra.thetaselect(b:bat[:any_1], 
val:any_1, op:str):bat[:msk] ",     "ALGthetaselectMsk1;",  ""      ]
+[ "algebra",   "thetaselect",  "command algebra.thetaselect(b:bat[:any_1], 
s:bat[:oid], val:any_1, op:str):bat[:msk] ",        "ALGthetaselectMsk2;",  ""  
    ]
 [ "algebra",   "unique",       "command 
algebra.unique(b:bat[:any_1]):bat[:oid] ",     "ALGunique1;",  "Select all 
unique values from the tail of the input.\n\tInput is a dense-headed BAT, 
output is a dense-headed BAT with\n\tin the tail the head value of the input 
BAT that was selected.\n\tThe output BAT is sorted on the tail value."       ]
 [ "algebra",   "unique",       "command algebra.unique(b:bat[:any_1], 
s:bat[:oid]):bat[:oid] ",        "ALGunique2;",  "Select all unique values from 
the tail of the first input.\n\tInput is a dense-headed BAT, the second input 
is a\n\tdense-headed BAT with sorted tail, output is a dense-headed\n\tBAT with 
in the tail the head value of the input BAT that was\n\tselected.  The output 
BAT is sorted on the tail value.  The\n\tsecond input BAT is a list of 
candidates."  ]
 [ "bam",       "bam_drop_file",        "pattern bam.bam_drop_file(file_id:lng, 
dbschema:sht):void ",   "bam_drop_file;",       "Drop alignment tables and 
header data for the bam file with the given file_id" ]
@@ -7381,8 +7383,8 @@ Ready.
 [ "calc",      "xor",  "pattern calc.xor(v1:int, v2:int):int ",        
"CMDvarXOR;",   "Return V1 XOR V2"      ]
 [ "calc",      "xor",  "pattern calc.xor(v1:lng, v2:lng):lng ",        
"CMDvarXOR;",   "Return V1 XOR V2"      ]
 [ "calc",      "xor",  "pattern calc.xor(v1:sht, v2:sht):sht ",        
"CMDvarXOR;",   "Return V1 XOR V2"      ]
-[ "candidates",        "compress",     "pattern 
candidates.compress(b:bat[:oid]):bat[:oid] ",  "BCLcompress;", "Compress the 
bat into a bitvector"     ]
-[ "candidates",        "decompress",   "pattern 
candidates.decompress(b:bat[:oid]):bat[:oid] ",        "BCLdecompress;",       
"Compress the bat into a bitvector"     ]
+[ "candidates",        "compress",     "pattern 
candidates.compress(b:bat[:oid]):bat[:msk] ",  "BCLcompress;", "Compress the 
bat into a bitvector"     ]
+[ "candidates",        "decompress",   "pattern 
candidates.decompress(b:bat[:msk]):bat[:oid] ",        "BCLdecompress;",       
"Compress the bat into a bitvector"     ]
 [ "capi",      "eval", "pattern capi.eval(fptr:ptr, cpp:bit, expr:str):any ",  
"CUDFevalStd;", "Execute a simple CUDF script returning a single value" ]
 [ "capi",      "eval", "pattern capi.eval(fptr:ptr, cpp:bit, expr:str, 
arg:any...):any... ",   "CUDFevalStd;", "Execute a simple CUDF script value"    
]
 [ "capi",      "eval_aggr",    "pattern capi.eval_aggr(fptr:ptr, cpp:bit, 
expr:str, arg:any...):any... ",      "CUDFevalAggr;",        "grouped 
aggregates through CUDF"       ]
@@ -8152,6 +8154,7 @@ Ready.
 [ "optimizer", "aliases",      "pattern optimizer.aliases(mod:str, 
fcn:str):str ",     "OPTwrapper;",  "Alias removal optimizer"       ]
 [ "optimizer", "bitcandidates",        "pattern optimizer.bitcandidates():str 
",       "OPTwrapper;",  ""      ]
 [ "optimizer", "bitcandidates",        "pattern 
optimizer.bitcandidates(mod:str, fcn:str):str ",       "OPTwrapper;",  "Handle 
bitcompressed candidate lists"  ]
+[ "optimizer", "candidate_pipe",       "function 
optimizer.candidate_pipe():void;",    "",     ""      ]
 [ "optimizer", "candidates",   "pattern optimizer.candidates():str ",  
"OPTwrapper;",  ""      ]
 [ "optimizer", "candidates",   "pattern optimizer.candidates(mod:str, 
fcn:str):str ",  "OPTwrapper;",  "Mark candidate list variables" ]
 [ "optimizer", "coercions",    "pattern optimizer.coercions():str ",   
"OPTwrapper;",  ""      ]
@@ -8653,6 +8656,7 @@ Ready.
 [ "user",      "main", "function user.main():void;",   "",     ""      ]
 [ "user",      "main", "function user.main():void;",   "",     ""      ]
 [ "user",      "main", "function user.main():void;",   "",     ""      ]
+[ "user",      "main", "function user.main():void;",   "",     ""      ]
 [ "user",      "s2_1", "function user.s2_1():void;",   "",     ""      ]
 [ "user",      "sql.init",     "function user.sql.init():void;",       "",     
""      ]
 [ "uuid",      "#cmp", "command uuid.#cmp():void ",    "UUIDcompare;", ""      
]
diff --git a/clients/Tests/MAL-signatures.stable.out.int128 
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -630,6 +630,8 @@ Ready.
 [ "algebra",   "thetajoin",    "command algebra.thetajoin(l:bat[:any_1], 
r:bat[:any_1], sl:bat[:oid], sr:bat[:oid], op:int, nil_matches:bit, 
estimate:lng) (X_0:bat[:oid], X_1:bat[:oid]) ",   "ALGthetajoin;",        
"Theta join with candidate lists"       ]
 [ "algebra",   "thetaselect",  "command algebra.thetaselect(b:bat[:any_1], 
val:any_1, op:str):bat[:oid] ",     "ALGthetaselect1;",     "Select all head 
values for which the tail value obeys the relation\n\tvalue OP VAL.\n\tInput is 
a dense-headed BAT, output is a dense-headed BAT with in\n\tthe tail the head 
value of the input BAT for which the\n\trelationship holds.  The output BAT is 
sorted on the tail value."        ]
 [ "algebra",   "thetaselect",  "command algebra.thetaselect(b:bat[:any_1], 
s:bat[:oid], val:any_1, op:str):bat[:oid] ",        "ALGthetaselect2;",     
"Select all head values of the first input BAT for which the tail 
value\n\tobeys the relation value OP VAL and for which the head value occurs 
in\n\tthe tail of the second input BAT.\n\tInput is a dense-headed BAT, output 
is a dense-headed BAT with in\n\tthe tail the head value of the input BAT for 
which the\n\trelationship holds.  The output BAT is sorted on the tail value."  
    ]
+[ "algebra",   "thetaselect",  "command algebra.thetaselect(b:bat[:any_1], 
val:any_1, op:str):bat[:msk] ",     "ALGthetaselectMsk1;",  ""      ]
+[ "algebra",   "thetaselect",  "command algebra.thetaselect(b:bat[:any_1], 
s:bat[:oid], val:any_1, op:str):bat[:msk] ",        "ALGthetaselectMsk2;",  ""  
    ]
 [ "algebra",   "unique",       "command 
algebra.unique(b:bat[:any_1]):bat[:oid] ",     "ALGunique1;",  "Select all 
unique values from the tail of the input.\n\tInput is a dense-headed BAT, 
output is a dense-headed BAT with\n\tin the tail the head value of the input 
BAT that was selected.\n\tThe output BAT is sorted on the tail value."       ]
 [ "algebra",   "unique",       "command algebra.unique(b:bat[:any_1], 
s:bat[:oid]):bat[:oid] ",        "ALGunique2;",  "Select all unique values from 
the tail of the first input.\n\tInput is a dense-headed BAT, the second input 
is a\n\tdense-headed BAT with sorted tail, output is a dense-headed\n\tBAT with 
in the tail the head value of the input BAT that was\n\tselected.  The output 
BAT is sorted on the tail value.  The\n\tsecond input BAT is a list of 
candidates."  ]
 [ "bam",       "bam_drop_file",        "pattern bam.bam_drop_file(file_id:lng, 
dbschema:sht):void ",   "bam_drop_file;",       "Drop alignment tables and 
header data for the bam file with the given file_id" ]
@@ -9727,8 +9729,8 @@ Ready.
 [ "calc",      "xor",  "pattern calc.xor(v1:int, v2:int):int ",        
"CMDvarXOR;",   "Return V1 XOR V2"      ]
 [ "calc",      "xor",  "pattern calc.xor(v1:lng, v2:lng):lng ",        
"CMDvarXOR;",   "Return V1 XOR V2"      ]
 [ "calc",      "xor",  "pattern calc.xor(v1:sht, v2:sht):sht ",        
"CMDvarXOR;",   "Return V1 XOR V2"      ]
-[ "candidates",        "compress",     "pattern 
candidates.compress(b:bat[:oid]):bat[:oid] ",  "BCLcompress;", "Compress the 
bat into a bitvector"     ]
-[ "candidates",        "decompress",   "pattern 
candidates.decompress(b:bat[:oid]):bat[:oid] ",        "BCLdecompress;",       
"Compress the bat into a bitvector"     ]
+[ "candidates",        "compress",     "pattern 
candidates.compress(b:bat[:oid]):bat[:msk] ",  "BCLcompress;", "Compress the 
bat into a bitvector"     ]
+[ "candidates",        "decompress",   "pattern 
candidates.decompress(b:bat[:msk]):bat[:oid] ",        "BCLdecompress;",       
"Compress the bat into a bitvector"     ]
 [ "capi",      "eval", "pattern capi.eval(fptr:ptr, cpp:bit, expr:str):any ",  
"CUDFevalStd;", "Execute a simple CUDF script returning a single value" ]
 [ "capi",      "eval", "pattern capi.eval(fptr:ptr, cpp:bit, expr:str, 
arg:any...):any... ",   "CUDFevalStd;", "Execute a simple CUDF script value"    
]
 [ "capi",      "eval_aggr",    "pattern capi.eval_aggr(fptr:ptr, cpp:bit, 
expr:str, arg:any...):any... ",      "CUDFevalAggr;",        "grouped 
aggregates through CUDF"       ]
@@ -10514,6 +10516,7 @@ Ready.
 [ "optimizer", "aliases",      "pattern optimizer.aliases(mod:str, 
fcn:str):str ",     "OPTwrapper;",  "Alias removal optimizer"       ]
 [ "optimizer", "bitcandidates",        "pattern optimizer.bitcandidates():str 
",       "OPTwrapper;",  ""      ]
 [ "optimizer", "bitcandidates",        "pattern 
optimizer.bitcandidates(mod:str, fcn:str):str ",       "OPTwrapper;",  "Handle 
bitcompressed candidate lists"  ]
+[ "optimizer", "candidate_pipe",       "function 
optimizer.candidate_pipe():void;",    "",     ""      ]
 [ "optimizer", "candidates",   "pattern optimizer.candidates():str ",  
"OPTwrapper;",  ""      ]
 [ "optimizer", "candidates",   "pattern optimizer.candidates(mod:str, 
fcn:str):str ",  "OPTwrapper;",  "Mark candidate list variables" ]
 [ "optimizer", "coercions",    "pattern optimizer.coercions():str ",   
"OPTwrapper;",  ""      ]
@@ -11018,6 +11021,7 @@ Ready.
 [ "user",      "main", "function user.main():void;",   "",     ""      ]
 [ "user",      "main", "function user.main():void;",   "",     ""      ]
 [ "user",      "main", "function user.main():void;",   "",     ""      ]
+[ "user",      "main", "function user.main():void;",   "",     ""      ]
 [ "user",      "s2_1", "function user.s2_1():void;",   "",     ""      ]
 [ "user",      "sql.init",     "function user.sql.init():void;",       "",     
""      ]
 [ "uuid",      "#cmp", "command uuid.#cmp():void ",    "UUIDcompare;", ""      
]
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
@@ -451,6 +451,9 @@ char *msab_registerStop(void);
 char *msab_retreatScenario(const char *lang);
 char *msab_serialise(char **ret, const sabdb *db);
 char *msab_wildRetreat(void);
+ssize_t mskFromStr(const char *src, size_t *len, msk **dst);
+ssize_t mskToStr(str *dst, size_t *len, const msk *src);
+const msk msk_nil;
 const oid oid_nil;
 DIR *opendir(const char *dirname);
 void print_trace(void);
@@ -727,6 +730,8 @@ str ALGsubslice_lng(bat *ret, const bat 
 str ALGthetajoin(bat *r1, bat *r2, const bat *l, const bat *r, const bat *sl, 
const bat *sr, const int *op, const bit *nil_matches, const lng *estimate);
 str ALGthetaselect1(bat *result, const bat *bid, const void *val, const char 
**op);
 str ALGthetaselect2(bat *result, const bat *bid, const bat *sid, const void 
*val, const char **op);
+str ALGthetaselectMsk1(bat *result, const bat *bid, const void *val, const 
char **op);
+str ALGthetaselectMsk2(bat *result, const bat *bid, const bat *sid, const void 
*val, const char **op);
 str ALGunique1(bat *result, const bat *bid);
 str ALGunique2(bat *result, const bat *bid, const bat *sid);
 str ALGvariance(dbl *res, const bat *bid);
@@ -2001,8 +2006,8 @@ str bstream_read_wrapwrap(int *res, Bstr
 str calcRef;
 str callMAL(Client cntxt, MalBlkPtr mb, MalStkPtr *glb, ValPtr argv[], char 
debug);
 str callString(Client c, str s, int listing);
+str candidatesRef;
 str capiRef;
-str candidatesRef;
 str catalogRef;
 void chkDeclarations(MalBlkPtr mb);
 void chkFlow(MalBlkPtr mb);
diff --git a/monetdb5/optimizer/Tests/BCLexample.stable.err 
b/monetdb5/optimizer/Tests/BCLexample.stable.err
new file mode 100644
--- /dev/null
+++ b/monetdb5/optimizer/Tests/BCLexample.stable.err
@@ -0,0 +1,34 @@
+stderr of test 'BCLexample` in directory 'monetdb5/optimizer` itself:
+
+
+# 09:15:13 >  
+# 09:15:13 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=35777" "--set" 
"mapi_usock=/var/tmp/mtest-1886/.s.monetdb.35777" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/export/scratch1/mk/branches/cand//Linux/var/MonetDB/mTests_monetdb5_optimizer"
+# 09:15:13 >  
+
+# builtin opt  gdk_dbpath = 
/export/scratch1/mk/branches/cand//Linux/var/monetdb5/dbfarm/demo
+# builtin opt  gdk_debug = 0
+# builtin opt  gdk_vmtrim = no
+# builtin opt  monet_prompt = >
+# builtin opt  monet_daemon = no
+# builtin opt  mapi_port = 50000
+# builtin opt  mapi_open = false
+# builtin opt  mapi_autosense = false
+# builtin opt  sql_optimizer = default_pipe
+# builtin opt  sql_debug = 0
+# cmdline opt  gdk_nr_threads = 0
+# cmdline opt  mapi_open = true
+# cmdline opt  mapi_port = 35777
+# cmdline opt  mapi_usock = /var/tmp/mtest-1886/.s.monetdb.35777
+# cmdline opt  monet_prompt = 
+# cmdline opt  gdk_dbpath = 
/export/scratch1/mk/branches/cand//Linux/var/MonetDB/mTests_monetdb5_optimizer
+# cmdline opt  gdk_debug = 553648138
+
+# 09:15:14 >  
+# 09:15:14 >  "mclient" "-lmal" "-ftest" "-tnone" "-Eutf-8" 
"--host=/var/tmp/mtest-1886" "--port=35777"
+# 09:15:14 >  
+
+
+# 09:15:14 >  
+# 09:15:14 >  "Done."
+# 09:15:14 >  
+
diff --git a/monetdb5/optimizer/Tests/BCLexample.stable.out 
b/monetdb5/optimizer/Tests/BCLexample.stable.out
new file mode 100644
--- /dev/null
+++ b/monetdb5/optimizer/Tests/BCLexample.stable.out
@@ -0,0 +1,57 @@
+stdout of test 'BCLexample` in directory 'monetdb5/optimizer` itself:
+
+
+# 09:15:13 >  
+# 09:15:13 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=35777" "--set" 
"mapi_usock=/var/tmp/mtest-1886/.s.monetdb.35777" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/export/scratch1/mk/branches/cand//Linux/var/MonetDB/mTests_monetdb5_optimizer"
+# 09:15:13 >  
+
+# MonetDB 5 server v11.28.0
+# This is an unreleased version
+# Serving database 'mTests_monetdb5_optimizer', using 4 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 128bit integers
+# Found 31.314 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2017 MonetDB B.V., all rights reserved
+# Visit https://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://toke.da.cwi.nl:35777/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-1886/.s.monetdb.35777
+# MonetDB/GIS module loaded
+# MonetDB/SQL module loaded
+
+Ready.
+
+# 09:15:14 >  
+# 09:15:14 >  "mclient" "-lmal" "-ftest" "-tnone" "-Eutf-8" 
"--host=/var/tmp/mtest-1886" "--port=35777"
+# 09:15:14 >  
+
+function user.f():void;
+    a := bat.new(:int);
+    a1 := bat.append(a, 1:int);
+    a2 := bat.append(a1, 2:int);
+    a3 := bat.append(a2, 3:int);
+    X_12 := algebra.select(a3, nil:bat[:oid], 2:int, 2:int, true, true, false);
+    X_13 := candidates.compress(X_12);
+    C_2 := candidates.decompress(X_13);
+    X_15 := algebra.select(a3, C_2, 0:int, 10:int, true, true, false);
+    X_16 := candidates.compress(X_15);
+    io.print(C_2);
+    C_3 := candidates.decompress(X_16);
+    io.print(C_3);
+end user.f;
+#bitcandidates        actions=2 time=8 usec 
+#deadcode             actions= 0 time=4 usec 
+#--------------------------#
+# h    t  # name
+# void void  # type
+#--------------------------#
+[ 0@0, 1@0     ]
+#--------------------------#
+# h    t  # name
+# void void  # type
+#--------------------------#
+[ 0@0, 1@0     ]
+
+# 09:15:14 >  
+# 09:15:14 >  "Done."
+# 09:15:14 >  
+
diff --git a/sql/test/Tests/setoptimizer.stable.out 
b/sql/test/Tests/setoptimizer.stable.out
--- a/sql/test/Tests/setoptimizer.stable.out
+++ b/sql/test/Tests/setoptimizer.stable.out
@@ -64,9 +64,10 @@ Ready.
 % .L1, .L1,    .L1 # table_name
 % name,        def,    status # name
 % clob,        clob,   clob # type
-% 15,  586,    6 # length
+% 15,  607,    6 # length
 [ "minimal_pipe",      
"optimizer.inline();optimizer.remap();optimizer.deadcode();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.garbageCollector();",
      "stable"        ]
-[ "default_pipe",      
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.bitcandidates();optimizer.wlc();optimizer.garbageCollector();",
   "stable"        ]
+[ "default_pipe",      
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();",
        "stable"        ]
+[ "candidate_pipe",    
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.bitcandidates();optimizer.deadcode();optimizer.wlc();optimizer.garbageCollector();",
      "stable"        ]
 [ "volcano_pipe",      
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.volcano();optimizer.profiler();optimizer.candidates();optimizer.wlc();optimizer.garbageCollector();",
 "stable"        ]
 [ "no_mitosis_pipe",   
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.reorder();optimizer.deadcode();optimizer.matpack();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.wlc();optimizer.garbageCollector();",
 "stable"        ]
 [ "sequential_pipe",   
"optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.reorder();optimizer.deadcode();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.wlc();optimizer.garbageCollector();",
      "stable"        ]
diff --git a/sql/test/mergetables/Tests/mergequery.stable.out 
b/sql/test/mergetables/Tests/mergequery.stable.out
--- a/sql/test/mergetables/Tests/mergequery.stable.out
+++ b/sql/test/mergetables/Tests/mergequery.stable.out
@@ -91,7 +91,7 @@ Ready.
 % 142 # length
 function user.s22_1():void;
     X_3:void := querylog.define("explain insert into answ\nselect * from 
complete where x>=1.0 and x <=2.0;":str, "default_pipe":str, 68:int);
-barrier X_157:bit := language.dataflow();
+barrier X_158:bit := language.dataflow();
     X_76:bat[:dbl] := bat.new(nil:dbl);
     X_6:int := sql.mvc();
     X_10:bat[:dbl] := sql.bind(X_6:int, "sys":str, "part1":str, "x":str, 
0:int);
@@ -122,13 +122,13 @@ barrier X_157:bit := language.dataflow()
     language.pass(C_71:bat[:oid]);
     language.pass(X_48:bat[:dbl]);
     language.pass(C_38:bat[:oid]);
-exit X_157:bit;
+exit X_158:bit;
     X_88:int := sql.append(X_6:int, "sys":str, "answ":str, "x":str, 
X_80:bat[:dbl]);
-barrier X_164:bit := language.dataflow();
+barrier X_165:bit := language.dataflow();
     X_92:int := sql.append(X_88:int, "sys":str, "answ":str, "y":str, 
X_83:bat[:dbl]);
     X_95:int := sql.append(X_92:int, "sys":str, "answ":str, "z":str, 
X_86:bat[:dbl]);
     X_97:lng := aggr.count(X_86:bat[:dbl]);
-exit X_164:bit;
+exit X_165:bit;
     sql.affectedRows(X_95:int, X_97:lng);
 end user.s22_1;
 #inline               actions= 0 time=2 usec 
@@ -170,7 +170,7 @@ end user.s22_1;
 % 164 # length
 function user.s24_1():void;
     X_5:void := querylog.define("explain insert into answ\nselect * from 
complete\nwhere x between 0 and 2 and y between 0 and 2;":str, 
"default_pipe":str, 78:int);
-barrier X_170:bit := language.dataflow();
+barrier X_171:bit := language.dataflow();
     X_90:bat[:dbl] := bat.new(nil:dbl);
     X_8:int := sql.mvc();
     X_12:bat[:dbl] := sql.bind(X_8:int, "sys":str, "part1":str, "x":str, 
0:int);
@@ -205,13 +205,13 @@ barrier X_170:bit := language.dataflow()
     language.pass(X_55:bat[:dbl]);
     language.pass(C_48:bat[:oid]);
     language.pass(X_22:bat[:dbl]);
-exit X_170:bit;
+exit X_171:bit;
     X_101:int := sql.append(X_8:int, "sys":str, "answ":str, "x":str, 
X_93:bat[:dbl]);
-barrier X_179:bit := language.dataflow();
+barrier X_180:bit := language.dataflow();
     X_105:int := sql.append(X_101:int, "sys":str, "answ":str, "y":str, 
X_96:bat[:dbl]);
     X_108:int := sql.append(X_105:int, "sys":str, "answ":str, "z":str, 
X_99:bat[:dbl]);
     X_110:lng := aggr.count(X_99:bat[:dbl]);
-exit X_179:bit;
+exit X_180:bit;
     sql.affectedRows(X_108:int, X_110:lng);
 end user.s24_1;
 #inline               actions= 0 time=2 usec 
diff --git a/sql/test/remote/Tests/partition_elim.stable.out 
b/sql/test/remote/Tests/partition_elim.stable.out
--- a/sql/test/remote/Tests/partition_elim.stable.out
+++ b/sql/test/remote/Tests/partition_elim.stable.out
@@ -137,34 +137,34 @@ Ready.
 % 130 # length
 function user.SQLanalyze():void;
     X_5:void := querylog.define("explain select x,y from test where x between 
4.0 and 6.0;":str, "default_pipe":str, 51:int);
-barrier X_147:bit := language.dataflow();
+barrier X_148:bit := language.dataflow();
     X_43:bat[:dbl] := bat.new(nil:dbl);
     X_8:int := sql.mvc();
-    X_123:bat[:dbl] := sql.bind(X_8:int, "sys":str, "test2":str, "x":str, 
0:int, 0:int, 2:int);
-    C_120:bat[:oid] := sql.tid(X_8:int, "sys":str, "test2":str, 0:int, 2:int);
-    C_128:bat[:oid] := algebra.select(X_123:bat[:dbl], C_120:bat[:oid], 4:dbl, 
6:dbl, true:bit, true:bit, false:bit);
-    X_130:bat[:dbl] := algebra.projection(C_128:bat[:oid], X_123:bat[:dbl]);
-    X_124:bat[:dbl] := sql.bind(X_8:int, "sys":str, "test2":str, "x":str, 
0:int, 1:int, 2:int);
-    C_122:bat[:oid] := sql.tid(X_8:int, "sys":str, "test2":str, 1:int, 2:int);
-    C_129:bat[:oid] := algebra.select(X_124:bat[:dbl], C_122:bat[:oid], 4:dbl, 
6:dbl, true:bit, true:bit, false:bit);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to