Changeset: e232bbbe7914 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e232bbbe7914
Modified Files:
clients/mapiclient/mclient.c
monetdb5/mal/mal_function.c
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.sql
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.stable.err
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.stable.out
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.test.reqtests
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.test.sql.in
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.test.stable.err
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.test.stable.out
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.test.timeout
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.unpack_csv.py
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.unpack_csv.stable.err
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.unpack_csv.stable.out
sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.unpack_csv.zip
Branch: default
Log Message:
Merge with Aug2011 branch.
diffs (truncated from 272712 to 300 lines):
diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c
--- a/clients/mapiclient/mclient.c
+++ b/clients/mapiclient/mclient.c
@@ -2896,19 +2896,14 @@ main(int argc, char **argv)
if (optind < argc) {
/* execute from file(s) */
while (optind < argc) {
- if (echoquery &&
- strcmp(argv[optind], "-") != 0 &&
- stat(argv[optind], &statb) == 0 &&
- S_ISREG(statb.st_mode) &&
- statb.st_size < 1024*1024) {
+ if (echoquery && strcmp(argv[optind], "-") != 0) {
/* a bit of a hack: process file
- line-by-line if using -e (--echo)
- and the input file isn't "too
- large" so that the queries that are
- echoed have something to do with
- the output that follows (otherwise
- we just echo the start of the file
- for each query) */
+ * line-by-line if using -e (--echo)
+ * so that the queries that are echoed
+ * have something to do with the
+ * output that follows (otherwise we
+ * just echo the start of the file for
+ * each query) */
FILE *fp;
if ((fp = fopen(argv[optind], "r")) == NULL) {
fprintf(stderr, "%s: cannot open\n",
argv[optind]);
diff --git a/monetdb5/mal/mal_function.c b/monetdb5/mal/mal_function.c
--- a/monetdb5/mal/mal_function.c
+++ b/monetdb5/mal/mal_function.c
@@ -588,17 +588,28 @@ listFunction(stream *fd, MalBlkPtr mb, M
mnstr_printf(fd, "# function definition missing\n");
return;
}
+ first = first<0?0:first;
+ size = size < 0?-size:size;
if (flg & LIST_MAPI) {
+ size_t len = 0;
+ str ps;
/* a bit dirty, but only here we have the number of lines */
mnstr_printf(fd, "&1 0 %d 1 %d\n", /* type id rows columns
tuples */
mb->stop, mb->stop);
mnstr_printf(fd, "%% .explain # table_name\n");
mnstr_printf(fd, "%% mal # name\n");
mnstr_printf(fd, "%% clob # type\n");
- mnstr_printf(fd, "%% 0 # length\n"); /* unknown */
+ for (i = first; i < first +size && i < mb->stop; i++) {
+ ps = instruction2str(mb, stk, getInstrPtr(mb, i), flg);
+ if (ps) {
+ size_t l = strlen(ps);
+ if (l > len)
+ len = l;
+ GDKfree(ps);
+ }
+ }
+ mnstr_printf(fd, "%% " SZFMT " # length\n", len); /*
unknown */
}
- first = first<0?0:first;
- size = size < 0?-size:size;
for (i = first; i < first +size && i < mb->stop; i++)
printInstruction(fd, mb, stk, getInstrPtr(mb, i), flg);
}
diff --git a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.SQL.py
b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.SQL.py
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.SQL.py
@@ -0,0 +1,24 @@
+import os, sys
+try:
+ from MonetDBtesting import process
+except ImportError:
+ import process
+
+n = 100000000
+clt = process.client('sql',
+ stdin = process.PIPE,
+ stdout = process.PIPE,
+ stderr = process.PIPE,
+ interactive = False,
+ echo = False)
+clt.stdin.write('start transaction;\n')
+clt.stdin.write('create table n8 (a numeric(14,2));\n')
+clt.stdin.write('copy %d records into n8 from stdin;\n' % n)
+s = '1.21\n' * 1000
+for i in xrange(n / 1000):
+ clt.stdin.write(s)
+clt.stdin.write("select 'avg(sqrt(n8)) == 1.1', avg(sqrt(a)) from n8;\n")
+clt.stdin.write('rollback;\n')
+out, err = clt.communicate()
+sys.stdout.write(out)
+sys.stderr.write(err)
diff --git a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.sql
b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.sql
deleted file mode 100644
--- a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.sql
+++ /dev/null
@@ -1,1 +0,0 @@
-drop table n8;
diff --git
a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.stable.err
b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.stable.err
deleted file mode 100644
--- a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.stable.err
+++ /dev/null
@@ -1,74 +0,0 @@
-stderr of test 'AVG_of_SQRT.SF-2757642.clean` in directory
'test/BugTracker-2009` itself:
-
-
-# 10:14:16 >
-# 10:14:16 > mserver5
"--config=/ufs/sjoerd/Monet-virgin-stable/etc/monetdb5.conf" --debug=10 --set
gdk_nr_threads=0 --set
"monet_mod_path=/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5:/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5/lib:/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5/bin"
--set "gdk_dbfarm=/ufs/sjoerd/Monet-virgin-stable/var/MonetDB5/dbfarm" --set
mapi_open=true --set xrpc_open=true --set mapi_port=32636 --set xrpc_port=45072
--set monet_prompt= --trace "--dbname=mTests_src_test_BugTracker-2009" --set
mal_listing=0 "--dbinit= include sql;" ; echo ; echo Over..
-# 10:14:16 >
-
-# builtin opt gdk_arch = 64bitx86_64-unknown-linux-gnu
-# builtin opt gdk_version = 1.32.3
-# builtin opt prefix = /ufs/sjoerd/Monet-virgin-stable
-# builtin opt exec_prefix = ${prefix}
-# builtin opt gdk_dbname = tst
-# builtin opt gdk_dbfarm = ${prefix}/var/MonetDB
-# builtin opt gdk_debug = 8
-# builtin opt gdk_alloc_map = yes
-# builtin opt gdk_vmtrim = yes
-# builtin opt monet_admin = adm
-# builtin opt monet_prompt = >
-# builtin opt monet_welcome = yes
-# builtin opt monet_mod_path = ${prefix}/lib64/MonetDB
-# builtin opt monet_daemon = yes
-# builtin opt host = localhost
-# builtin opt mapi_port = 50000
-# builtin opt mapi_noheaders = no
-# builtin opt mapi_debug = 0
-# builtin opt mapi_clients = 2
-# builtin opt sql_debug = 0
-# builtin opt standoff_ns = http://monetdb.cwi.nl/standoff
-# builtin opt standoff_start = start
-# builtin opt standoff_end = end
-# config opt prefix = /ufs/sjoerd/Monet-virgin-stable
-# config opt config = ${prefix}/etc/monetdb5.conf
-# config opt prefix = /ufs/sjoerd/Monet-virgin-stable
-# config opt exec_prefix = ${prefix}
-# config opt gdk_dbfarm = ${prefix}/var/MonetDB5/dbfarm
-# config opt gdk_dbname = demo
-# config opt gdk_alloc_map = no
-# config opt gdk_embedded = no
-# config opt gdk_debug = 0
-# config opt monet_mod_path =
${prefix}/lib64/MonetDB5:${prefix}/lib64/MonetDB5/lib:${prefix}/lib64/MonetDB5/bin
-# config opt monet_daemon = no
-# config opt monet_welcome = yes
-# config opt mero_msglog = ${prefix}/var/log/MonetDB/merovingian.log
-# config opt mero_errlog = ${prefix}/var/log/MonetDB/merovingian.log
-# config opt mero_pidfile = ${prefix}/var/run/MonetDB/merovingian.pid
-# config opt mal_init = ${prefix}/lib64/MonetDB5/mal_init.mal
-# config opt mal_listing = 2
-# config opt mapi_port = 50000
-# config opt mapi_autosense = false
-# config opt mapi_open = false
-# config opt sql_optimizer =
inline,remap,evaluate,costModel,coercions,emptySet,aliases,mergetable,deadcode,constants,commonTerms,joinPath,deadcode,reduce,garbageCollector,dataflow,history,multiplex
-# cmdline opt config = /ufs/sjoerd/Monet-virgin-stable/etc/monetdb5.conf
-# cmdline opt gdk_nr_threads = 0
-# cmdline opt monet_mod_path =
/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5:/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5/lib:/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5/bin
-# cmdline opt gdk_dbfarm = /ufs/sjoerd/Monet-virgin-stable/var/MonetDB5/dbfarm
-# cmdline opt mapi_open = true
-# cmdline opt xrpc_open = true
-# cmdline opt mapi_port = 32636
-# cmdline opt xrpc_port = 45072
-# cmdline opt monet_prompt =
-# cmdline opt gdk_dbname = mTests_src_test_BugTracker-2009
-# cmdline opt mal_listing = 0
-#warning: please don't forget to set your vault key!
-#(see /ufs/sjoerd/Monet-virgin-stable/etc/monetdb5.conf)
-
-# 10:14:16 >
-# 10:14:16 > mclient -lsql -umonetdb -Pmonetdb --host=ottar --port=32636
-# 10:14:16 >
-
-
-# 10:14:16 >
-# 10:14:16 > Done.
-# 10:14:16 >
-
diff --git
a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.stable.out
b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.stable.out
deleted file mode 100644
--- a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.clean.stable.out
+++ /dev/null
@@ -1,31 +0,0 @@
-stdout of test 'AVG_of_SQRT.SF-2757642.clean` in directory
'test/BugTracker-2009` itself:
-
-
-# 10:14:16 >
-# 10:14:16 > mserver5
"--config=/ufs/sjoerd/Monet-virgin-stable/etc/monetdb5.conf" --debug=10 --set
gdk_nr_threads=0 --set
"monet_mod_path=/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5:/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5/lib:/ufs/sjoerd/Monet-virgin-stable/lib64/MonetDB5/bin"
--set "gdk_dbfarm=/ufs/sjoerd/Monet-virgin-stable/var/MonetDB5/dbfarm" --set
mapi_open=true --set xrpc_open=true --set mapi_port=32636 --set xrpc_port=45072
--set monet_prompt= --trace "--dbname=mTests_src_test_BugTracker-2009" --set
mal_listing=0 "--dbinit= include sql;" ; echo ; echo Over..
-# 10:14:16 >
-
-# MonetDB server v5.14.3, based on kernel v1.32.3
-# Serving database 'mTests_src_test_BugTracker-2009', 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-2009 MonetDB B.V., all rights reserved
-# Visit http://monetdb.cwi.nl/ for further information
-# Listening for connection requests on mapi:monetdb://ottar.ins.cwi.nl:32636/
-# MonetDB/SQL module v2.32.3 loaded
-
-Ready.
-#function user.main():void;
-# clients.quit();
-#end main;
-
-
-# 10:14:16 >
-# 10:14:16 > mclient -lsql -umonetdb -Pmonetdb --host=ottar --port=32636
-# 10:14:16 >
-
-
-# 10:14:16 >
-# 10:14:16 > Done.
-# 10:14:16 >
-
diff --git a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.stable.err
b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.stable.err
@@ -0,0 +1,37 @@
+stderr of test 'AVG_of_SQRT.SF-2757642` in directory 'test/BugTracker-2009`
itself:
+
+
+# 15:20:08 >
+# 15:20:08 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"gdk_dbfarm=/ufs/sjoerd/Monet-candidate/var/MonetDB" "--set" "mapi_open=true"
"--set" "mapi_port=37142" "--set" "monet_prompt=" "--trace" "--forcemito"
"--set" "mal_listing=2" "--dbname=mTests_test_BugTracker-2009" "--set"
"mal_listing=0"
+# 15:20:08 >
+
+# builtin opt gdk_dbname = demo
+# builtin opt gdk_dbfarm = /ufs/sjoerd/Monet-candidate/var/monetdb5/dbfarm
+# builtin opt gdk_debug = 0
+# builtin opt gdk_alloc_map = no
+# builtin opt gdk_vmtrim = yes
+# 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 gdk_dbfarm = /ufs/sjoerd/Monet-candidate/var/MonetDB
+# cmdline opt mapi_open = true
+# cmdline opt mapi_port = 37142
+# cmdline opt monet_prompt =
+# cmdline opt mal_listing = 2
+# cmdline opt gdk_dbname = mTests_test_BugTracker-2009
+# cmdline opt mal_listing = 0
+
+# 15:20:08 >
+# 15:20:08 > "/usr/bin/python" "AVG_of_SQRT.SF-2757642.SQL.py"
"AVG_of_SQRT.SF-2757642"
+# 15:20:08 >
+
+
+# 15:21:14 >
+# 15:21:14 > "Done."
+# 15:21:14 >
+
diff --git a/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.stable.out
b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.stable.out
@@ -0,0 +1,56 @@
+stdout of test 'AVG_of_SQRT.SF-2757642` in directory 'test/BugTracker-2009`
itself:
+
+
+# 15:20:08 >
+# 15:20:08 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"gdk_dbfarm=/ufs/sjoerd/Monet-candidate/var/MonetDB" "--set" "mapi_open=true"
"--set" "mapi_port=37142" "--set" "monet_prompt=" "--trace" "--forcemito"
"--set" "mal_listing=2" "--dbname=mTests_test_BugTracker-2009" "--set"
"mal_listing=0"
+# 15:20:08 >
+
+# MonetDB 5 server v11.5.4
+# This is an unreleased version
+# Serving database 'mTests_test_BugTracker-2009', using 4 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs dynamically
linked
+# Found 7.749 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2011 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://ottar.ins.cwi.nl:37142/
+# MonetDB/GIS module loaded
+# MonetDB/SQL module loaded
+
+Ready.
+# SQL catalog created, loading sql scripts once
+# loading sql script: 10_math.sql
+# loading sql script: 11_times.sql
+# loading sql script: 12_url.sql
+# loading sql script: 13_date.sql
+# loading sql script: 14_inet.sql
+# loading sql script: 15_history.sql
+# loading sql script: 16_tracelog.sql
+# loading sql script: 17_compress.sql
+# loading sql script: 18_dictionary.sql
+# loading sql script: 19_cluster.sql
+# loading sql script: 20_vacuum.sql
+# loading sql script: 21_dependency_functions.sql
+# loading sql script: 22_clients.sql
+# loading sql script: 23_skyserver.sql
+# loading sql script: 24_zorder.sql
+# loading sql script: 25_debug.sql
+# loading sql script: 40_geom.sql
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list