Changeset: b2e1cc1e3dfd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b2e1cc1e3dfd
Added Files:
        monetdb5/extras/mal_optimizer_template/Tests/explain.py
        monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.test
Modified Files:
        sql/test/copy/Tests/All
        sql/test/copy/Tests/nonutf8.sql
Branch: mtest
Log Message:

convert one more directory


diffs (159 lines):

diff --git a/monetdb5/extras/mal_optimizer_template/Tests/explain.py 
b/monetdb5/extras/mal_optimizer_template/Tests/explain.py
new file mode 100644
--- /dev/null
+++ b/monetdb5/extras/mal_optimizer_template/Tests/explain.py
@@ -0,0 +1,28 @@
+
+import re
+
+def filter(tab):
+    res = []
+    for row in tab:
+        if row[0].find('usec') < 0:
+            res.append(row)
+    return res
+
+def function_histogram(tab):
+    histo = {}
+    for row in tab:
+        if row[0].find('usec') < 0:
+            g = re.match('.*\s(\w+\.\w+).*;', row[0])
+            if g:
+                f = g.groups(1)[0]
+                if f in histo:
+                    histo[f]+=1
+                else:
+                    histo[f]=1
+    nhisto = []
+    for key,val in histo.items():
+        row=[]
+        row.append(key)
+        row.append(str(val))
+        nhisto.append(row)
+    return nhisto
diff --git a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.test 
b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.test
new file mode 100644
--- /dev/null
+++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.test
@@ -0,0 +1,97 @@
+statement ok
+set optimizer = 'sequential_pipe'
+
+statement ok
+create table ttt 
(averylongcolumnnametomakeitlargeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
 int, b int, c int)
+
+query T rowsort
+select optimizer
+----
+sequential_pipe
+
+query T rowsort
+select def from optimizers() where name = optimizer
+----
+optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
+
+query T python explain.function_histogram
+explain copy into ttt from '/tmp/xyz'
+----
+user.main
+2
+querylog.define
+1
+sql.mvc
+1
+sql.copy_from
+1
+sql.append
+3
+aggr.count
+1
+sql.affectedRows
+1
+
+statement error
+explain copy into ttt from E'\\tmp/xyz'
+
+statement error
+explain copy into ttt from E'a:\\tmp/xyz'
+
+statement ok
+start transaction
+
+statement ok
+create local temp table "opt_pipe_name" ("opt_pipe_name" string)
+
+statement ok
+insert into "opt_pipe_name" values ((select optimizer))
+
+statement ok
+set optimizer = substring((select def from optimizers() where name = (select 
opt_pipe_name from "opt_pipe_name")),0,
+                length((select def from optimizers() where name = (select 
opt_pipe_name from "opt_pipe_name")))-length('optimizer.garbageCollector();')) 
|| 'optimizer.sql_append();optimizer.garbageCollector();'
+
+query T rowsort
+select optimizer
+----
+user_0
+
+query T rowsort
+select def from optimizers() where name = optimizer
+----
+optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.deadcode();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.reorder();optimizer.matpack();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.sql_append();optimizer.garbageCollector();
+
+statement ok
+rollback
+
+query T python explain.function_histogram
+explain copy into ttt from '/tmp/xyz'
+----
+user.main
+2
+querylog.define
+1
+sql.mvc
+1
+sql.copy_from
+1
+sql.append
+3
+aggr.count
+1
+sql.affectedRows
+1
+
+statement error
+explain copy into ttt from E'\\tmp/xyz'
+
+statement error
+explain copy into ttt from 'Z:/tmp/xyz'
+
+statement ok
+drop table ttt
+
+statement ok
+set optimizer = 'default_pipe'
+
+
diff --git a/sql/test/copy/Tests/All b/sql/test/copy/Tests/All
--- a/sql/test/copy/Tests/All
+++ b/sql/test/copy/Tests/All
@@ -10,7 +10,7 @@ load_stdin_incorrect_line_nr
 overflow_error
 format_date
 key_copy
-# nonutf8
+nonutf8
 incorrect_columns
 columns
 no_escape
diff --git a/sql/test/copy/Tests/nonutf8.sql b/sql/test/copy/Tests/nonutf8.sql
--- a/sql/test/copy/Tests/nonutf8.sql
+++ b/sql/test/copy/Tests/nonutf8.sql
@@ -8,7 +8,7 @@ copy 2 records into nonutf8 from stdin;
 zwaar lange golf piek -dal ±10cm vak5
 ±17 %
 
-select * from nonutf8;
+--select * from nonutf8;
 
 drop table nonutf8;
 rollback;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to