Changeset: b53471b0f293 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b53471b0f293
Modified Files:
MonetDB5/src/mal/Tests/All
MonetDB5/src/mal/Tests/tst450.stable.out
MonetDB5/src/mal/Tests/tst866.mal
MonetDB5/src/mal/Tests/tst866.stable.err
MonetDB5/src/mal/Tests/tst866.stable.out
MonetDB5/src/mal/Tests/tst867.mal
MonetDB5/src/mal/Tests/tst867.stable.err
MonetDB5/src/mal/Tests/tst867.stable.out
MonetDB5/src/modules/kernel/bat5.mx
sql/src/backends/monet5/sql.mx
sql/src/sql/vacuum.sql
Branch: default
Log Message:
Primitives to vacuum a relational table has been added. One scheme is to simple
shrink
the table by removing the deleted entries. It retains order properties.
The other scheme re-uses the delete space by reshuffling the data. It looses
order
properties.
[ALpha code, to be tested]
diffs (truncated from 736 to 300 lines):
diff -r 7ac930eeb806 -r b53471b0f293 MonetDB5/src/mal/Tests/All
--- a/MonetDB5/src/mal/Tests/All Thu May 20 16:44:12 2010 +0200
+++ b/MonetDB5/src/mal/Tests/All Thu May 20 17:03:37 2010 +0200
@@ -200,6 +200,8 @@
tst830
tst840
tst850
+tst866
+tst867
tst870
tst890
tst900
diff -r 7ac930eeb806 -r b53471b0f293 MonetDB5/src/mal/Tests/tst450.stable.out
--- a/MonetDB5/src/mal/Tests/tst450.stable.out Thu May 20 16:44:12 2010 +0200
+++ b/MonetDB5/src/mal/Tests/tst450.stable.out Thu May 20 17:03:37 2010 +0200
@@ -72,9 +72,10 @@
[ 27, "inet" ]
[ 28, "identifier" ]
[ 29, "pcre" ]
-[ 30, "mbr" ]
-[ 31, "wkb" ]
-[ 32, "mapentry" ]
+[ 30, "xml" ]
+[ 31, "mbr" ]
+[ 32, "wkb" ]
+[ 33, "mapentry" ]
#-------------------------#
# t h # name
# oid str # type
@@ -154,6 +155,7 @@
[ "url", nil ]
[ "user", nil ]
[ "wkb", nil ]
+[ "xml", nil ]
[ "zrule", nil ]
command
bat.insert(b:bat[:any_1,:any_2],h:any_1,t:any_2,force:bit):bat[:any_1,:any_2]
address BKCinsert_bun_force;
#Insert one BUN[h,t] in a BAT.
diff -r 7ac930eeb806 -r b53471b0f293 MonetDB5/src/mal/Tests/tst866.mal
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/MonetDB5/src/mal/Tests/tst866.mal Thu May 20 17:03:37 2010 +0200
@@ -0,0 +1,20 @@
+# shrink operations.
+b:= bat.new(:oid,:int);
+bat.append(b,1);
+bat.append(b,2);
+bat.append(b,3);
+bat.append(b,4);
+bat.append(b,5);
+bat.append(b,6);
+bat.append(b,7);
+bat.append(b,8);
+bat.append(b,9);
+io.print(b);
+d:= bat.new(:oid,:oid);
+bat.append(d,1...@0);
+bat.append(d,2...@0);
+bat.append(d,7...@0);
+io.print(d);
+
+s:= bat.reuse(b,d);
+io.print(s);
diff -r 7ac930eeb806 -r b53471b0f293 MonetDB5/src/mal/Tests/tst866.stable.err
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/MonetDB5/src/mal/Tests/tst866.stable.err Thu May 20 17:03:37 2010 +0200
@@ -0,0 +1,72 @@
+stderr of test 'tst866` in directory 'src/mal` itself:
+
+
+# 16:27:48 >
+# 16:27:48 > mserver5 "--config=/ufs/mk/current//Linux/etc/monetdb5.conf"
--debug=10 --set gdk_nr_threads=0 --set
"monet_mod_path=/ufs/mk/current//Linux/lib/MonetDB5:/ufs/mk/current//Linux/lib/MonetDB5/lib:/ufs/mk/current//Linux/lib/MonetDB5/bin"
--set "gdk_dbfarm=/ufs/mk/current//Linux/var/MonetDB5/dbfarm" --set
mapi_open=true --set xrpc_open=true --set mapi_port=33217 --set xrpc_port=42120
--set monet_prompt= --set mal_listing=2 --trace --dbname=mTests_src_mal
tst866.mal
+# 16:27:48 >
+
+# builtin opt gdk_arch = 64bitx86_64-unknown-linux-gnu
+# builtin opt gdk_version = 1.39.0
+# builtin opt prefix = /ufs/mk/current//Linux
+# builtin opt exec_prefix = ${prefix}
+# builtin opt gdk_dbname = demo
+# builtin opt gdk_dbfarm = ${prefix}/var/MonetDB/dbfarm
+# builtin opt gdk_debug = 0
+# builtin opt gdk_alloc_map = no
+# builtin opt gdk_vmtrim = yes
+# builtin opt monet_admin = adm
+# builtin opt monet_prompt = >
+# builtin opt monet_welcome = yes
+# builtin opt monet_mod_path = ${exec_prefix}/lib/MonetDB
+# builtin opt monet_daemon = no
+# builtin opt host = localhost
+# builtin opt mapi_port = 50000
+# builtin opt mapi_clients = 2
+# builtin opt mapi_open = false
+# builtin opt mapi_autosense = false
+# builtin opt sql_debug = 0
+# builtin opt standoff_ns =
+# builtin opt standoff_start = start
+# builtin opt standoff_end = end
+# config opt prefix = /ufs/mk/current//Linux
+# config opt config = ${prefix}/etc/monetdb5.conf
+# config opt prefix = /ufs/mk/current//Linux
+# config opt exec_prefix = ${prefix}
+# config opt gdk_dbfarm = ${prefix}/var/MonetDB5/dbfarm
+# config opt monet_mod_path =
${exec_prefix}/lib/MonetDB5:${exec_prefix}/lib/MonetDB5/lib:${exec_prefix}/lib/MonetDB5/bin
+# config opt mero_pidfile = ${prefix}/var/run/MonetDB/merovingian.pid
+# config opt mero_controlport = 50001
+# config opt sql_optimizer = default_pipe
+# config opt minimal_pipe = inline,remap,deadcode,multiplex,garbageCollector
+# config opt default_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mitosis,mergetable,deadcode,commonTerms,joinPath,reorder,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt nov2009_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt replication_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,replication,multiplex,garbageCollector
+# config opt accumulator_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,accumulators,dataflow,history,multiplex,garbageCollector
+# config opt recycler_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,deadcode,constants,commonTerms,joinPath,deadcode,recycle,reduce,dataflow,history,multiplex,garbageCollector
+# config opt cracker_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,selcrack,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt sidcrack_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,sidcrack,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt datacell_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,deadcode,constants,commonTerms,joinPath,datacell,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt octopus_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mitosis,mergetable,deadcode,constants,commonTerms,joinPath,octopus,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt mapreduce_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mapreduce,mergetable,deadcode,commonTerms,joinPath,reorder,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt datacyclotron_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,datacyclotron,mergetable,deadcode,constants,commonTerms,joinPath,reorder,deadcode,reduce,dataflow,history,replication,multiplex,garbageCollector
+# config opt derive_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mitosis,mergetable,deadcode,commonTerms,derivePath,joinPath,reorder,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt dictionary_pipe =
inline,remap,dictionary,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt compression_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,compression,dataflow,history,multiplex,garbageCollector
+# cmdline opt config = /ufs/mk/current//Linux/etc/monetdb5.conf
+# cmdline opt gdk_nr_threads = 0
+# cmdline opt monet_mod_path =
/ufs/mk/current//Linux/lib/MonetDB5:/ufs/mk/current//Linux/lib/MonetDB5/lib:/ufs/mk/current//Linux/lib/MonetDB5/bin
+# cmdline opt gdk_dbfarm = /ufs/mk/current//Linux/var/MonetDB5/dbfarm
+# cmdline opt mapi_open = true
+# cmdline opt xrpc_open = true
+# cmdline opt mapi_port = 33217
+# cmdline opt xrpc_port = 42120
+# cmdline opt monet_prompt =
+# cmdline opt mal_listing = 2
+# cmdline opt gdk_dbname = mTests_src_mal
+#warning: please don't forget to set your vault key!
+#(see /ufs/mk/current//Linux/etc/monetdb5.conf)
+
+# 16:27:48 >
+# 16:27:48 > Done.
+# 16:27:48 >
+
diff -r 7ac930eeb806 -r b53471b0f293 MonetDB5/src/mal/Tests/tst866.stable.out
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/MonetDB5/src/mal/Tests/tst866.stable.out Thu May 20 17:03:37 2010 +0200
@@ -0,0 +1,73 @@
+stdout of test 'tst866` in directory 'src/mal` itself:
+
+
+# 16:27:48 >
+# 16:27:48 > mserver5 "--config=/ufs/mk/current//Linux/etc/monetdb5.conf"
--debug=10 --set gdk_nr_threads=0 --set
"monet_mod_path=/ufs/mk/current//Linux/lib/MonetDB5:/ufs/mk/current//Linux/lib/MonetDB5/lib:/ufs/mk/current//Linux/lib/MonetDB5/bin"
--set "gdk_dbfarm=/ufs/mk/current//Linux/var/MonetDB5/dbfarm" --set
mapi_open=true --set xrpc_open=true --set mapi_port=33217 --set xrpc_port=42120
--set monet_prompt= --set mal_listing=2 --trace --dbname=mTests_src_mal
tst866.mal
+# 16:27:48 >
+
+# MonetDB server v5.21.0, based on kernel v1.39.0
+# Serving database 'mTests_src_mal', using 4 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs dynamically
linked
+# Found 7.751 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2010 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:33217/
+# MonetDB/SQL module v2.39.0 loaded
+# MonetDB/GIS module v0.19.0 loaded
+function user.main():void;
+# shrink operations.
+ b := bat.new(:oid,:int);
+ bat.append(b,1);
+ bat.append(b,2);
+ bat.append(b,3);
+ bat.append(b,4);
+ bat.append(b,5);
+ bat.append(b,6);
+ bat.append(b,7);
+ bat.append(b,8);
+ bat.append(b,9);
+ io.print(b);
+ d := bat.new(:oid,:oid);
+ bat.append(d,1...@0);
+ bat.append(d,2...@0);
+ bat.append(d,7...@0);
+ io.print(d);
+ s := bat.reuse(b,d);
+ io.print(s);
+end main;
+#-----------------#
+# h t # name
+# void int # type
+#-----------------#
+[ 0...@0, 1 ]
+[ 1...@0, 2 ]
+[ 2...@0, 3 ]
+[ 3...@0, 4 ]
+[ 4...@0, 5 ]
+[ 5...@0, 6 ]
+[ 6...@0, 7 ]
+[ 7...@0, 8 ]
+[ 8...@0, 9 ]
+#-----------------#
+# h t # name
+# void oid # type
+#-----------------#
+[ 0...@0, 1...@0 ]
+[ 1...@0, 2...@0 ]
+[ 2...@0, 7...@0 ]
+#-----------------#
+# h t # name
+# void int # type
+#-----------------#
+[ 0...@0, 1 ]
+[ 1...@0, 9 ]
+[ 2...@0, 7 ]
+[ 3...@0, 4 ]
+[ 4...@0, 5 ]
+[ 5...@0, 6 ]
+
+# 16:27:48 >
+# 16:27:48 > Done.
+# 16:27:48 >
+
diff -r 7ac930eeb806 -r b53471b0f293 MonetDB5/src/mal/Tests/tst867.mal
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/MonetDB5/src/mal/Tests/tst867.mal Thu May 20 17:03:37 2010 +0200
@@ -0,0 +1,19 @@
+# shrink operations.
+b:= bat.new(:oid,:int);
+bat.append(b,1);
+bat.append(b,2);
+bat.append(b,3);
+bat.append(b,4);
+bat.append(b,5);
+bat.append(b,6);
+bat.append(b,7);
+bat.append(b,8);
+bat.append(b,9);
+io.print(b);
+d:= bat.new(:oid,:oid);
+bat.append(d,1...@0);
+bat.append(d,2...@0);
+bat.append(d,7...@0);
+
+s:= bat.shrink(b,d);
+io.print(s);
diff -r 7ac930eeb806 -r b53471b0f293 MonetDB5/src/mal/Tests/tst867.stable.err
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/MonetDB5/src/mal/Tests/tst867.stable.err Thu May 20 17:03:37 2010 +0200
@@ -0,0 +1,72 @@
+stderr of test 'tst867` in directory 'src/mal` itself:
+
+
+# 17:00:21 >
+# 17:00:21 > mserver5 "--config=/ufs/mk/current//Linux/etc/monetdb5.conf"
--debug=10 --set gdk_nr_threads=0 --set
"monet_mod_path=/ufs/mk/current//Linux/lib/MonetDB5:/ufs/mk/current//Linux/lib/MonetDB5/lib:/ufs/mk/current//Linux/lib/MonetDB5/bin"
--set "gdk_dbfarm=/ufs/mk/current//Linux/var/MonetDB5/dbfarm" --set
mapi_open=true --set xrpc_open=true --set mapi_port=36870 --set xrpc_port=46301
--set monet_prompt= --set mal_listing=2 --trace --dbname=mTests_src_mal
tst867.mal
+# 17:00:21 >
+
+# builtin opt gdk_arch = 64bitx86_64-unknown-linux-gnu
+# builtin opt gdk_version = 1.39.0
+# builtin opt prefix = /ufs/mk/current//Linux
+# builtin opt exec_prefix = ${prefix}
+# builtin opt gdk_dbname = demo
+# builtin opt gdk_dbfarm = ${prefix}/var/MonetDB/dbfarm
+# builtin opt gdk_debug = 0
+# builtin opt gdk_alloc_map = no
+# builtin opt gdk_vmtrim = yes
+# builtin opt monet_admin = adm
+# builtin opt monet_prompt = >
+# builtin opt monet_welcome = yes
+# builtin opt monet_mod_path = ${exec_prefix}/lib/MonetDB
+# builtin opt monet_daemon = no
+# builtin opt host = localhost
+# builtin opt mapi_port = 50000
+# builtin opt mapi_clients = 2
+# builtin opt mapi_open = false
+# builtin opt mapi_autosense = false
+# builtin opt sql_debug = 0
+# builtin opt standoff_ns =
+# builtin opt standoff_start = start
+# builtin opt standoff_end = end
+# config opt prefix = /ufs/mk/current//Linux
+# config opt config = ${prefix}/etc/monetdb5.conf
+# config opt prefix = /ufs/mk/current//Linux
+# config opt exec_prefix = ${prefix}
+# config opt gdk_dbfarm = ${prefix}/var/MonetDB5/dbfarm
+# config opt monet_mod_path =
${exec_prefix}/lib/MonetDB5:${exec_prefix}/lib/MonetDB5/lib:${exec_prefix}/lib/MonetDB5/bin
+# config opt mero_pidfile = ${prefix}/var/run/MonetDB/merovingian.pid
+# config opt mero_controlport = 50001
+# config opt sql_optimizer = default_pipe
+# config opt minimal_pipe = inline,remap,deadcode,multiplex,garbageCollector
+# config opt default_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mitosis,mergetable,deadcode,commonTerms,joinPath,reorder,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt nov2009_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt replication_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,replication,multiplex,garbageCollector
+# config opt accumulator_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,accumulators,dataflow,history,multiplex,garbageCollector
+# config opt recycler_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,deadcode,constants,commonTerms,joinPath,deadcode,recycle,reduce,dataflow,history,multiplex,garbageCollector
+# config opt cracker_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,selcrack,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt sidcrack_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,sidcrack,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt datacell_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,deadcode,constants,commonTerms,joinPath,datacell,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt octopus_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mitosis,mergetable,deadcode,constants,commonTerms,joinPath,octopus,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt mapreduce_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mapreduce,mergetable,deadcode,commonTerms,joinPath,reorder,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt datacyclotron_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,datacyclotron,mergetable,deadcode,constants,commonTerms,joinPath,reorder,deadcode,reduce,dataflow,history,replication,multiplex,garbageCollector
+# config opt derive_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mitosis,mergetable,deadcode,commonTerms,derivePath,joinPath,reorder,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt dictionary_pipe =
inline,remap,dictionary,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,history,multiplex,garbageCollector
+# config opt compression_pipe =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,dataflow,compression,dataflow,history,multiplex,garbageCollector
+# cmdline opt config = /ufs/mk/current//Linux/etc/monetdb5.conf
+# cmdline opt gdk_nr_threads = 0
+# cmdline opt monet_mod_path =
/ufs/mk/current//Linux/lib/MonetDB5:/ufs/mk/current//Linux/lib/MonetDB5/lib:/ufs/mk/current//Linux/lib/MonetDB5/bin
+# cmdline opt gdk_dbfarm = /ufs/mk/current//Linux/var/MonetDB5/dbfarm
+# cmdline opt mapi_open = true
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list