MonetDB: configurable_working_set - First draft of a MAL interfa...
Changeset: a20ad202ae28 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a20ad202ae28 Added Files: monetdb5/modules/kernel/metrics.c monetdb5/modules/kernel/metrics.h Modified Files: monetdb5/modules/kernel/Makefile.ag Branch: configurable_working_set Log Message: First draft of a MAL interface to various system metrics. diffs (92 lines): diff --git a/monetdb5/modules/kernel/Makefile.ag b/monetdb5/modules/kernel/Makefile.ag --- a/monetdb5/modules/kernel/Makefile.ag +++ b/monetdb5/modules/kernel/Makefile.ag @@ -26,7 +26,8 @@ lib_kernel = { logger.c \ microbenchmark.c microbenchmark.h \ mmath.c mmath.h \ - status.c status.h + status.c status.h \ + metrics.c metrics.h } headers_mal = { diff --git a/monetdb5/modules/kernel/metrics.c b/monetdb5/modules/kernel/metrics.c new file mode 100644 --- /dev/null +++ b/monetdb5/modules/kernel/metrics.c @@ -0,0 +1,47 @@ + +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * Copyright 1997 - July 2008 CWI, August 2008 - 2018 MonetDB B.V. + */ + +#include "metrics.h" +#include "gdk.h" +#include "mal.h" +#include "mal_client.h" +#include "mal_instruction.h" +#include "mal_interpreter.h" + +#include "gdk_posix.h" + +mal_export str METRICSrsssize(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci) +{ +(void) cntxt; +(void) mb; +lng *res = getArgReference_lng(stk, pci, 0); +*res = (lng)MT_getrss(); + +return MAL_SUCCEED; +} + +mal_export str METRICSgetvmsize(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci) +{ +(void) cntxt; +(void) mb; +lng *res = getArgReference_lng(stk, pci, 0); + +#ifdef WIN32 + MEMORYSTATUSEX psvmemCounters; + psvmemCounters.dwLength = sizeof(MEMORYSTATUSEX); + + GlobalMemoryStatusEx(); + + *res = psvmemCounters.ullTotalVirtual - psvmemCounters.ullAvailVirtual; +#else +*res = 0; +#endif + +return MAL_SUCCEED; +} diff --git a/monetdb5/modules/kernel/metrics.h b/monetdb5/modules/kernel/metrics.h new file mode 100644 --- /dev/null +++ b/monetdb5/modules/kernel/metrics.h @@ -0,0 +1,22 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * Copyright 1997 - July 2008 CWI, August 2008 - 2018 MonetDB B.V. + */ + +#ifndef METRICS_H +#define METRICS_H + +#include "monetdb_config.h" + +#include "mal.h" +#include "mal_client.h" +#include "mal_instruction.h" + +mal_export str METRICSrsssize(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); + +mal_export str METRICSgetvmsize(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); + +#endif ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: configurable_working_set - Introduce draft of test to c...
Changeset: 39e789e11ba4 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=39e789e11ba4 Added Files: gdk/Tests/All gdk/Tests/caprss.prologue5 gdk/Tests/caprss.sql Modified Files: .vscode/run_tests.bat Branch: configurable_working_set Log Message: Introduce draft of test to check the 'gdk_mem_maxsize' option on Windows. diffs (63 lines): diff --git a/.vscode/run_tests.bat b/.vscode/run_tests.bat --- a/.vscode/run_tests.bat +++ b/.vscode/run_tests.bat @@ -1,4 +1,6 @@ rem call environment variables for Monetdb compilation and runtime call %~dp0/monetdb-environment.bat -Mtest.py -r +cd %SOURCE%\gdk\Tests + +Mtest.py diff --git a/gdk/Tests/All b/gdk/Tests/All new file mode 100644 --- /dev/null +++ b/gdk/Tests/All @@ -0,0 +1,1 @@ +caprss diff --git a/gdk/Tests/caprss.prologue5 b/gdk/Tests/caprss.prologue5 new file mode 100644 --- /dev/null +++ b/gdk/Tests/caprss.prologue5 @@ -0,0 +1,7 @@ +module prologue; + +pattern prologue.getrss():lng +address METRICSrsssize; + +pattern prologue.getvm():lng +address METRICSgetvmsize; diff --git a/gdk/Tests/caprss.sql b/gdk/Tests/caprss.sql new file mode 100644 --- /dev/null +++ b/gdk/Tests/caprss.sql @@ -0,0 +1,29 @@ +create function getrss() +returns BIGINT external name prologue.getrss; + +create function getvm() +returns BIGINT external name prologue.getvm; + +create table test(a int, b int, c double); + +insert into test VALUES (1, 0, 1); + +select getrss() as resident_set_size, getvm() as virtual_memory_size; + +create procedure loop_insert(n bigint) +BEGIN +declare run BIGINT; +set run = (select count(*) from test); + +WHILE run < n DO +insert into test (select a+1, b+2, rand()*c from test); + +set run = (select count(*) from test); +END WHILE; +END; + +call loop_insert(1000); + +select count(*) from test; + +select getrss() as resident_set_size, getvm() as virtual_memory_size; ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: configurable_working_set - Improve Visual Studio Code s...
Changeset: 2ff2e65df4b9 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2ff2e65df4b9 Modified Files: .vscode/c_cpp_properties.json .vscode/settings.json Branch: configurable_working_set Log Message: Improve Visual Studio Code settings. diffs (27 lines): diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json --- a/.vscode/c_cpp_properties.json +++ b/.vscode/c_cpp_properties.json @@ -59,7 +59,8 @@ "name": "Win32", "includePath": [ "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/include", -"${workspaceRoot}" +"${workspaceRoot}", +"${workspaceRoot}/build" ], "defines": [ "_DEBUG", diff --git a/.vscode/settings.json b/.vscode/settings.json --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,7 +3,9 @@ "extraMakefile": "makefile", "rules.msc": "makefile", "configure.ag": "m4", -"Makefile.ag": "automake" +"Makefile.ag": "automake", +"monetdb_config.h": "c", +"gdk.h": "c" }, "files.exclude": { "**/.git": true, ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: configurable_working_set - Use WIN32 instead of the _WI...
Changeset: 59464ad08e31 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=59464ad08e31 Modified Files: gdk/gdk_posix.c Branch: configurable_working_set Log Message: Use WIN32 instead of the _WIN64 macro to implement MT_getrss. diffs (15 lines): diff --git a/gdk/gdk_posix.c b/gdk/gdk_posix.c --- a/gdk/gdk_posix.c +++ b/gdk/gdk_posix.c @@ -742,9 +742,9 @@ MT_init_posix(void) } size_t -MT_getrss(void) +MT_getrss(void) // Obtain allocated physical memory { -#ifdef _WIN64 +#ifdef WIN32 PROCESS_MEMORY_COUNTERS ctr; if (GetProcessMemoryInfo(GetCurrentProcess(), , sizeof(ctr))) return ctr.WorkingSetSize; ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: configurable_working_set - Added simple start-up script...
Changeset: 9b0e5757039a for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9b0e5757039a Added Files: .vscode/run_server.bat Modified Files: .vscode/tasks.json Branch: configurable_working_set Log Message: Added simple start-up script to start Monetdb server on Windows (from the IDE). diffs (28 lines): diff --git a/.vscode/run_server.bat b/.vscode/run_server.bat new file mode 100644 --- /dev/null +++ b/.vscode/run_server.bat @@ -0,0 +1,5 @@ +rem call environment variables for Monetdb compilation and runtime +call %~dp0/monetdb-environment.bat + +rem Start the Monetdb5 server +%PREFIX%\M5server.bat diff --git a/.vscode/tasks.json b/.vscode/tasks.json --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -61,6 +61,14 @@ "windows": { "command": "${workspaceFolder}\\.vscode\\run_tests.bat" } +}, +{ +"label": "run server", +"type": "shell", +"command": "echo TODO", +"windows": { +"command": "${workspaceFolder}\\.vscode\\run_server.bat" +} } ] } ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: configurable_working_set - Add functionality to query v...
Changeset: 6b33dc1cafd5 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6b33dc1cafd5 Modified Files: gdk/gdk_posix.c Branch: configurable_working_set Log Message: Add functionality to query virtual memory size. diffs (24 lines): diff --git a/gdk/gdk_posix.c b/gdk/gdk_posix.c --- a/gdk/gdk_posix.c +++ b/gdk/gdk_posix.c @@ -752,6 +752,20 @@ MT_getrss(void) // Obtain allocated phys return 0; } +size_t +MT_getvm(void) // Obtain allocated virtual memory +{ +#ifdef WIN32 + MEMORYSTATUSEX psvmemCounters; + psvmemCounters.dwLength = sizeof(MEMORYSTATUSEX); + + GlobalMemoryStatusEx(); + + return psvmemCounters.ullTotalVirtual - psvmemCounters.ullAvailVirtual; +#endif + return 0; +} + /* Windows mmap keeps a global list of base addresses for complex * (remapped) memory maps the reason is that each remapped segment * needs to be unmapped separately in the end. */ ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: configurable_working_set - Move function description to...
Changeset: 04ff6a673088 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=04ff6a673088 Modified Files: gdk/gdk_posix.c Branch: configurable_working_set Log Message: Move function description to corresponding header file. diffs (21 lines): diff --git a/gdk/gdk_posix.c b/gdk/gdk_posix.c --- a/gdk/gdk_posix.c +++ b/gdk/gdk_posix.c @@ -742,7 +742,7 @@ MT_init_posix(void) } size_t -MT_getrss(void) // Obtain allocated physical memory +MT_getrss(void) { #ifdef WIN32 PROCESS_MEMORY_COUNTERS ctr; @@ -753,7 +753,7 @@ MT_getrss(void) // Obtain allocated phys } size_t -MT_getvm(void) // Obtain allocated virtual memory +MT_getvm(void) { #ifdef WIN32 MEMORYSTATUSEX psvmemCounters; ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: configurable_working_set - Implemented 'run clean' task.
Changeset: 641eeaca80c6 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=641eeaca80c6 Added Files: .vscode/run_clean.sh Modified Files: .vscode/tasks.json Branch: configurable_working_set Log Message: Implemented 'run clean' task. diffs (47 lines): diff --git a/.vscode/run_clean.sh b/.vscode/run_clean.sh new file mode 100644 --- /dev/null +++ b/.vscode/run_clean.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +FULL_PATH_TO_SCRIPT=`dirname ${0}` + +cd `cygpath ${FULL_PATH_TO_SCRIPT}` && cd .. + + +# Empty the build directory. +rm -rf build/* + +# Remove all generated files outside of the build directory +find . -path "NT/rules.msc" -prune -regex ".*\.am$\|.*\.msc$\|.*\.lst$\|.*\.orig$\|.*cheader\.text\.h" -exec rm \{\} + diff --git a/.vscode/tasks.json b/.vscode/tasks.json --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -20,7 +20,6 @@ }, "presentation": { "panel": "new" - }, "problemMatcher": { "base": "$gcc", @@ -68,7 +67,17 @@ "command": "echo TODO", "windows": { "command": "${workspaceFolder}\\.vscode\\run_server.bat" -} +}, +"problemMatcher": [] +}, +{ +"label": "run clean", +"type": "shell", +"command": "echo TODO", +"windows": { +"command": "bash.exe --login ${workspaceFolder}\\.vscode\\run_clean.sh" +}, +"problemMatcher": [] } ] } ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Mar2018 - approved output
Changeset: 5550f56434fc for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5550f56434fc Added Files: sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.out Branch: Mar2018 Log Message: approved output diffs (168 lines): diff --git a/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.err b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.err new file mode 100644 --- /dev/null +++ b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.err @@ -0,0 +1,34 @@ +stderr of test 'sqlitelogictest-in-query.Bug-6545` in directory 'sql/test/BugTracker-2018` itself: + + +# 13:58:13 > +# 13:58:13 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37083" "--set" "mapi_usock=/var/tmp/mtest-9356/.s.monetdb.37083" "--set" "monet_prompt=" "--forcemito" "--dbpath=/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2018" +# 13:58:13 > + +# builtin opt gdk_dbpath = /home/niels/scratch/rc-monetdb/Linux-x86_64/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 = 5 +# 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 = 37083 +# cmdline opt mapi_usock = /var/tmp/mtest-9356/.s.monetdb.37083 +# cmdline opt monet_prompt = +# cmdline opt gdk_dbpath = /home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2018 +# cmdline opt gdk_debug = 553648138 + +# 13:58:13 > +# 13:58:13 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-9356" "--port=37083" +# 13:58:13 > + + +# 13:58:13 > +# 13:58:13 > "Done." +# 13:58:13 > + diff --git a/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.out b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.out new file mode 100644 --- /dev/null +++ b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.out @@ -0,0 +1,40 @@ +stdout of test 'sqlitelogictest-in-query.Bug-6545` in directory 'sql/test/BugTracker-2018` itself: + + +# 13:58:13 > +# 13:58:13 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37083" "--set" "mapi_usock=/var/tmp/mtest-9356/.s.monetdb.37083" "--set" "monet_prompt=" "--forcemito" "--dbpath=/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2018" +# 13:58:13 > + +# MonetDB 5 server v11.29.0 +# This is an unreleased version +# Serving database 'mTests_sql_test_BugTracker-2018', using 4 threads +# Compiled for x86_64-unknown-linux-gnu/64bit with 128bit integers +# Found 7.324 GiB available main-memory. +# Copyright (c) 1993 - July 2008 CWI. +# Copyright (c) August 2008 - 2018 MonetDB B.V., all rights reserved +# Visit https://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://localhost.nes.nl:37083/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-9356/.s.monetdb.37083 +# MonetDB/GIS module loaded +# MonetDB/SQL module loaded + +Ready. + +# 13:58:13 > +# 13:58:13 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-9356" "--port=37083" +# 13:58:13 > + +#CREATE TABLE tab0(col0 INTEGER, col1 INTEGER, col2 INTEGER); +#INSERT INTO tab0 VALUES (97,1,99),(15,81,47),(87,21,10); +[ 3] +#SELECT DISTINCT * FROM tab0 AS cor0 WHERE - 60 + ( + - col0 ) IN ( + - CAST ( 35 AS INTEGER ) * + ( - 3 ) * - 91 * + + 87, - col0 * + col2 * 18 ); +% sys.cor0,sys.cor0, sys.cor0 # table_name +% col0,col1, col2 # name +% int, int,int # type +% 1, 1, 1 # length +#DROP TABLE tab0; + +# 13:58:13 > +# 13:58:13 > "Done." +# 13:58:13 > + diff --git a/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.err b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.err new file mode 100644 --- /dev/null +++ b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.err @@ -0,0 +1,34 @@ +stderr of test 'sqlitelogictest-in-with-division.Bug-6546` in directory 'sql/test/BugTracker-2018` itself: + + +# 13:58:13 > +# 13:58:13 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37083" "--set" "mapi_usock=/var/tmp/mtest-9356/.s.monetdb.37083"
MonetDB: default - merged approved output
Changeset: 8df6d381a5c8 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8df6d381a5c8 Added Files: sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.out sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.err sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.out Branch: default Log Message: merged approved output diffs (168 lines): diff --git a/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.err b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.err new file mode 100644 --- /dev/null +++ b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.err @@ -0,0 +1,34 @@ +stderr of test 'sqlitelogictest-in-query.Bug-6545` in directory 'sql/test/BugTracker-2018` itself: + + +# 13:58:13 > +# 13:58:13 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37083" "--set" "mapi_usock=/var/tmp/mtest-9356/.s.monetdb.37083" "--set" "monet_prompt=" "--forcemito" "--dbpath=/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2018" +# 13:58:13 > + +# builtin opt gdk_dbpath = /home/niels/scratch/rc-monetdb/Linux-x86_64/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 = 5 +# 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 = 37083 +# cmdline opt mapi_usock = /var/tmp/mtest-9356/.s.monetdb.37083 +# cmdline opt monet_prompt = +# cmdline opt gdk_dbpath = /home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2018 +# cmdline opt gdk_debug = 553648138 + +# 13:58:13 > +# 13:58:13 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-9356" "--port=37083" +# 13:58:13 > + + +# 13:58:13 > +# 13:58:13 > "Done." +# 13:58:13 > + diff --git a/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.out b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.out new file mode 100644 --- /dev/null +++ b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-query.Bug-6545.stable.out @@ -0,0 +1,40 @@ +stdout of test 'sqlitelogictest-in-query.Bug-6545` in directory 'sql/test/BugTracker-2018` itself: + + +# 13:58:13 > +# 13:58:13 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37083" "--set" "mapi_usock=/var/tmp/mtest-9356/.s.monetdb.37083" "--set" "monet_prompt=" "--forcemito" "--dbpath=/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2018" +# 13:58:13 > + +# MonetDB 5 server v11.29.0 +# This is an unreleased version +# Serving database 'mTests_sql_test_BugTracker-2018', using 4 threads +# Compiled for x86_64-unknown-linux-gnu/64bit with 128bit integers +# Found 7.324 GiB available main-memory. +# Copyright (c) 1993 - July 2008 CWI. +# Copyright (c) August 2008 - 2018 MonetDB B.V., all rights reserved +# Visit https://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://localhost.nes.nl:37083/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-9356/.s.monetdb.37083 +# MonetDB/GIS module loaded +# MonetDB/SQL module loaded + +Ready. + +# 13:58:13 > +# 13:58:13 > "mclient" "-lsql" "-ftest" "-tnone" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-9356" "--port=37083" +# 13:58:13 > + +#CREATE TABLE tab0(col0 INTEGER, col1 INTEGER, col2 INTEGER); +#INSERT INTO tab0 VALUES (97,1,99),(15,81,47),(87,21,10); +[ 3] +#SELECT DISTINCT * FROM tab0 AS cor0 WHERE - 60 + ( + - col0 ) IN ( + - CAST ( 35 AS INTEGER ) * + ( - 3 ) * - 91 * + + 87, - col0 * + col2 * 18 ); +% sys.cor0,sys.cor0, sys.cor0 # table_name +% col0,col1, col2 # name +% int, int,int # type +% 1, 1, 1 # length +#DROP TABLE tab0; + +# 13:58:13 > +# 13:58:13 > "Done." +# 13:58:13 > + diff --git a/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.err b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.err new file mode 100644 --- /dev/null +++ b/sql/test/BugTracker-2018/Tests/sqlitelogictest-in-with-division.Bug-6546.stable.err @@ -0,0 +1,34 @@ +stderr of test 'sqlitelogictest-in-with-division.Bug-6546` in directory 'sql/test/BugTracker-2018` itself: + + +# 13:58:13 > +# 13:58:13 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" "mapi_open=true" "--set" "mapi_port=37083" "--set"
MonetDB: Mar2018 - Avoid doing double work.
Changeset: c451206b6a83 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c451206b6a83 Modified Files: sql/backends/monet5/rel_bin.c Branch: Mar2018 Log Message: Avoid doing double work. diffs (25 lines): diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c --- a/sql/backends/monet5/rel_bin.c +++ b/sql/backends/monet5/rel_bin.c @@ -5335,20 +5335,10 @@ rel_deps(sql_allocator *sa, sql_rel *r, if (r->r) return rel_deps(sa, r->r, refs, l); } else if (r->flag == DDL_PSM) { - exps_deps(sa, r->exps, refs, l); + break; } else if (r->flag <= DDL_ALTER_SEQ) { if (r->l) return rel_deps(sa, r->l, refs, l); - } else if (r->flag <= DDL_DROP_SEQ) { - exps_deps(sa, r->exps, refs, l); - } else if (r->flag <= DDL_TRANS) { - exps_deps(sa, r->exps, refs, l); - } else if (r->flag <= DDL_DROP_SCHEMA) { - exps_deps(sa, r->exps, refs, l); - } else if (r->flag <= DDL_ALTER_TABLE) { - exps_deps(sa, r->exps, refs, l); - } else if (r->flag <= DDL_ALTER_TABLE_SET_ACCESS) { - exps_deps(sa, r->exps, refs, l); } break; } ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Mar2018 - Whitespace.
Changeset: f7044cc79a70 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f7044cc79a70 Modified Files: sql/include/sql_relation.h Branch: Mar2018 Log Message: Whitespace. diffs (209 lines): diff --git a/sql/include/sql_relation.h b/sql/include/sql_relation.h --- a/sql/include/sql_relation.h +++ b/sql/include/sql_relation.h @@ -29,21 +29,21 @@ typedef enum expression_type { #define CARD_MULTI 3 typedef struct expression { - expression_type type; /* atom, cmp, func/aggr */ + expression_type type; /* atom, cmp, func/aggr */ const char *name; const char *rname; void *l; void *r; - void *f;/* func's and aggr's */ + void *f;/* func's and aggr's */ /* e_cmp may have have 2 arguments */ - int flag; /* EXP_DISTINCT, NO_NIL, ASCENDING, cmp types */ - unsigned char card; /* card + int flag; /* EXP_DISTINCT, NO_NIL, ASCENDING, cmp types */ + unsigned char card; /* card (0 truth value!) - (1 atoms) + (1 atoms) (2 aggr) (3 multi value) */ - sql_subtype tpe; + sql_subtype tpe; int used; /* used for quick dead code removal */ void *p;/* properties for the optimizer */ } sql_exp; @@ -55,15 +55,15 @@ typedef struct expression { #define LEFT_JOIN 4 -#define APPLY_JOIN 8 -#define APPLY_LOJ 16 +#define APPLY_JOIN 8 +#define APPLY_LOJ 16 #define APPLY_EXISTS 32 #define APPLY_NOTEXISTS64 /* ASCENDING > 15 else we have problems with cmp types */ #define ASCENDING 16 #define CMPMASK(ASCENDING-1) -#define get_cmp(e) (e->flag) +#define get_cmp(e) (e->flag) #define ANTISEL32 #define HAS_NO_NIL 64 #define EXP_INTERN 128 @@ -71,7 +71,7 @@ typedef struct expression { #define UPD_COMP 1 #define UPD_LOCKED 2 #define UPD_NO_CONSTRAINT 4 - + #define REL_PARTITION 8 /* We need bit wise exclusive numbers as we merge the level also in the flag */ @@ -86,55 +86,55 @@ typedef struct expression { #define GET_PSM_LEVEL(level) (level>>8) /* todo make enum */ -/* ordering is important! see rel2bin_ddl() */ -#define DDL_OUTPUT1 -#define DDL_LIST 2 -#define DDL_PSM 3 +/* ordering is important! see rel2bin_ddl() and rel_deps() */ +#define DDL_OUTPUT 1 +#define DDL_LIST 2 +#define DDL_PSM3 -#define DDL_CREATE_SEQ 5 -#define DDL_ALTER_SEQ 6 -#define DDL_DROP_SEQ 7 +#define DDL_CREATE_SEQ 5 +#define DDL_ALTER_SEQ 6 +#define DDL_DROP_SEQ 7 -#define DDL_RELEASE 11 -#define DDL_COMMIT12 -#define DDL_ROLLBACK 13 -#define DDL_TRANS 14 +#define DDL_RELEASE11 +#define DDL_COMMIT 12 +#define DDL_ROLLBACK 13 +#define DDL_TRANS 14 -#define DDL_CREATE_SCHEMA 21 -#define DDL_DROP_SCHEMA22 -#define DDL_CREATE_TABLE 23 -#define DDL_DROP_TABLE24 -#define DDL_CREATE_VIEW25 -#define DDL_DROP_VIEW 26 -#define DDL_DROP_CONSTRAINT27 -#define DDL_ALTER_TABLE28 -#define DDL_CREATE_TYPE29 -#define DDL_DROP_TYPE 30 -#define DDL_DROP_INDEX 31 +#define DDL_CREATE_SCHEMA 21 +#define DDL_DROP_SCHEMA22 +#define DDL_CREATE_TABLE 23 +#define DDL_DROP_TABLE 24 +#define DDL_CREATE_VIEW25 +#define DDL_DROP_VIEW 26 +#define DDL_DROP_CONSTRAINT27 +#define DDL_ALTER_TABLE28 +#define DDL_CREATE_TYPE29 +#define DDL_DROP_TYPE 30 +#define DDL_DROP_INDEX 31 -#define DDL_CREATE_FUNCTION41 -#define DDL_DROP_FUNCTION 42 -#define DDL_CREATE_TRIGGER 43 -#define DDL_DROP_TRIGGER 44 +#define DDL_CREATE_FUNCTION41 +#define DDL_DROP_FUNCTION 42 +#define DDL_CREATE_TRIGGER 43 +#define DDL_DROP_TRIGGER 44 -#define DDL_GRANT_ROLES51 -#define DDL_REVOKE_ROLES 52 -#define DDL_GRANT 53 -#define DDL_REVOKE54 -#define DDL_GRANT_FUNC55 -#define DDL_REVOKE_FUNC56 -#define DDL_CREATE_USER57 -#define DDL_DROP_USER 58
monetdb-java: embedded - Merged with default, updated copyright ...
Changeset: 5b13ccaba741 for monetdb-java URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=5b13ccaba741 Modified Files: build.properties build.xml example/MJDBCTest.java example/PreparedExample.java example/SQLImport.java example/SQLcopyinto.java pom.xml release.txt src/main/java/nl/cwi/monetdb/client/JMonetDB.java src/main/java/nl/cwi/monetdb/client/JdbcClient.java src/main/java/nl/cwi/monetdb/jdbc/MonetBlob.java src/main/java/nl/cwi/monetdb/jdbc/MonetClob.java src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java src/main/java/nl/cwi/monetdb/jdbc/MonetDataSource.java src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java src/main/java/nl/cwi/monetdb/jdbc/MonetDriver.java.in src/main/java/nl/cwi/monetdb/jdbc/MonetINET.java src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java src/main/java/nl/cwi/monetdb/jdbc/MonetSavepoint.java src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java src/main/java/nl/cwi/monetdb/jdbc/MonetURL.java src/main/java/nl/cwi/monetdb/jdbc/MonetWrapper.java src/main/java/nl/cwi/monetdb/mcl/connection/ControlCommands.java src/main/java/nl/cwi/monetdb/mcl/connection/IMonetDBLanguage.java src/main/java/nl/cwi/monetdb/mcl/connection/MCLException.java src/main/java/nl/cwi/monetdb/mcl/connection/SenderThread.java src/main/java/nl/cwi/monetdb/mcl/connection/helpers/BufferReallocator.java src/main/java/nl/cwi/monetdb/mcl/connection/helpers/ChannelSecurity.java src/main/java/nl/cwi/monetdb/mcl/connection/helpers/GregorianCalendarParser.java src/main/java/nl/cwi/monetdb/mcl/connection/helpers/TimestampHelper.java src/main/java/nl/cwi/monetdb/mcl/connection/mapi/AbstractSocket.java src/main/java/nl/cwi/monetdb/mcl/connection/mapi/MapiConnection.java src/main/java/nl/cwi/monetdb/mcl/connection/mapi/MapiLanguage.java src/main/java/nl/cwi/monetdb/mcl/connection/mapi/OldMapiSocket.java src/main/java/nl/cwi/monetdb/mcl/protocol/AbstractProtocol.java src/main/java/nl/cwi/monetdb/mcl/protocol/ProtocolException.java src/main/java/nl/cwi/monetdb/mcl/protocol/ServerResponses.java src/main/java/nl/cwi/monetdb/mcl/protocol/StarterHeaders.java src/main/java/nl/cwi/monetdb/mcl/protocol/TableResultHeaders.java src/main/java/nl/cwi/monetdb/mcl/protocol/oldmapi/OldMapiDataBlockResponse.java src/main/java/nl/cwi/monetdb/mcl/protocol/oldmapi/OldMapiProtocol.java src/main/java/nl/cwi/monetdb/mcl/protocol/oldmapi/OldMapiServerResponseParser.java src/main/java/nl/cwi/monetdb/mcl/protocol/oldmapi/OldMapiStartOfHeaderParser.java src/main/java/nl/cwi/monetdb/mcl/protocol/oldmapi/OldMapiTableHeaderParser.java src/main/java/nl/cwi/monetdb/mcl/protocol/oldmapi/OldMapiTupleLineParser.java src/main/java/nl/cwi/monetdb/mcl/protocol/oldmapi/OldMapiTupleLineParserHelper.java src/main/java/nl/cwi/monetdb/mcl/responses/AbstractDataBlockResponse.java src/main/java/nl/cwi/monetdb/mcl/responses/AutoCommitResponse.java src/main/java/nl/cwi/monetdb/mcl/responses/IIncompleteResponse.java src/main/java/nl/cwi/monetdb/mcl/responses/IResponse.java src/main/java/nl/cwi/monetdb/mcl/responses/ResultSetResponse.java src/main/java/nl/cwi/monetdb/mcl/responses/SchemaResponse.java src/main/java/nl/cwi/monetdb/mcl/responses/UpdateResponse.java src/main/java/nl/cwi/monetdb/merovingian/Control.java src/main/java/nl/cwi/monetdb/merovingian/MerovingianException.java src/main/java/nl/cwi/monetdb/merovingian/SabaothDB.java src/main/java/nl/cwi/monetdb/util/CmdLineOpts.java src/main/java/nl/cwi/monetdb/util/Exporter.java src/main/java/nl/cwi/monetdb/util/Extract.java src/main/java/nl/cwi/monetdb/util/OptionsException.java src/main/java/nl/cwi/monetdb/util/SQLExporter.java src/main/java/nl/cwi/monetdb/util/SQLRestore.java src/main/java/nl/cwi/monetdb/util/XMLExporter.java tests/BugConcurrent_clients_SF_1504657.java tests/BugConcurrent_sequences.java tests/BugDatabaseMetaData_Bug_3356.java tests/BugDecimalRound_Bug_3561.java tests/BugExecuteUpdate_Bug_3350.java tests/BugResultSetMetaData_Bug_6183.java tests/BugSetQueryTimeout_Bug_3357.java tests/Bug_Connect_as_voc_getMetaData_Failure_Bug_6388.java tests/Bug_PrepStmtSetObject_CLOB_6349.java tests/Bug_PrepStmtSetString_6382.java tests/Test_Cautocommit.java tests/Test_Cforkbomb.java tests/Test_CisValid.java tests/Test_Clargequery.java tests/Test_Cmanycon.java tests/Test_Creplysize.java
MonetDB: Mar2018 - Moved adding comments to the SQL backend.
Changeset: 2ab5a4392e80 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2ab5a4392e80 Modified Files: clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h sql/backends/monet5/rel_bin.c sql/backends/monet5/sql_cat.c sql/backends/monet5/sql_cat.h sql/backends/monet5/sql_statement.c sql/backends/monet5/sql_upgrades.c sql/backends/monet5/sqlcatalog.mal sql/include/sql_relation.h sql/scripts/97_comments.sql sql/server/rel_schema.c sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.stable.out sql/test/emptydb/Tests/check.stable.out.32bit sql/test/emptydb/Tests/check.stable.out.int128 sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade/Tests/upgrade.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128 Branch: Mar2018 Log Message: Moved adding comments to the SQL backend. No need anymore for sys.no_op. diffs (truncated from 894 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 @@ -10948,6 +10948,7 @@ Ready. [ "sqlcatalog","alter_set_table", "pattern sqlcatalog.alter_set_table(sname:str, tnme:str, access:int):void ", "SQLalter_set_table;", "Catalog operation alter_set_table" ] [ "sqlcatalog","alter_table", "pattern sqlcatalog.alter_table(sname:str, tname:str, tbl:ptr, action:int):void ", "SQLalter_table;", "Catalog operation alter_table" ] [ "sqlcatalog","alter_user", "pattern sqlcatalog.alter_user(sname:str, passwrd:str, enc:int, schema:str, oldpasswrd:str):void ", "SQLalter_user;", "Catalog operation alter_user" ] +[ "sqlcatalog","comment_on", "pattern sqlcatalog.comment_on(objid:int, remark:str):void ", "SQLcomment_on;", "Catalog operation comment_on" ] [ "sqlcatalog","create_function", "pattern sqlcatalog.create_function(sname:str, fname:str, fcn:ptr):void ", "SQLcreate_function;", "Catalog operation create_function" ] [ "sqlcatalog","create_role", "pattern sqlcatalog.create_role(sname:str, role:str, grator:int):void ", "SQLcreate_role;", "Catalog operation create_role" ] [ "sqlcatalog","create_schema","pattern sqlcatalog.create_schema(sname:str, auth:str, ifnotexists:int, action:int):void ", "SQLcreate_schema;","Catalog operation create_schema" ] 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 @@ -15161,6 +15161,7 @@ Ready. [ "sqlcatalog","alter_set_table", "pattern sqlcatalog.alter_set_table(sname:str, tnme:str, access:int):void ", "SQLalter_set_table;", "Catalog operation alter_set_table" ] [ "sqlcatalog","alter_table", "pattern sqlcatalog.alter_table(sname:str, tname:str, tbl:ptr, action:int):void ", "SQLalter_table;", "Catalog operation alter_table" ] [ "sqlcatalog","alter_user", "pattern sqlcatalog.alter_user(sname:str, passwrd:str, enc:int, schema:str, oldpasswrd:str):void ", "SQLalter_user;", "Catalog operation alter_user" ] +[ "sqlcatalog","comment_on", "pattern sqlcatalog.comment_on(objid:int, remark:str):void ", "SQLcomment_on;", "Catalog operation comment_on" ] [ "sqlcatalog","create_function", "pattern sqlcatalog.create_function(sname:str, fname:str, fcn:ptr):void ", "SQLcreate_function;", "Catalog operation create_function" ] [ "sqlcatalog",
MonetDB: default - merged (again) with Mar2018
Changeset: 763df5150f0f for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=763df5150f0f Modified Files: clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures.stable.out.int128 clients/Tests/exports.stable.out monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h sql/backends/monet5/rel_bin.c sql/backends/monet5/sql_cat.c sql/backends/monet5/sql_cat.h sql/backends/monet5/sql_statement.c sql/backends/monet5/sql_upgrades.c sql/backends/monet5/sqlcatalog.mal sql/include/sql_relation.h sql/scripts/97_comments.sql sql/server/rel_schema.c sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.stable.out sql/test/emptydb/Tests/check.stable.out.32bit sql/test/emptydb/Tests/check.stable.out.int128 sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade/Tests/upgrade.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128 Branch: default Log Message: merged (again) with Mar2018 diffs (truncated from 3288 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 @@ -10948,6 +10948,7 @@ Ready. [ "sqlcatalog","alter_set_table", "pattern sqlcatalog.alter_set_table(sname:str, tnme:str, access:int):void ", "SQLalter_set_table;", "Catalog operation alter_set_table" ] [ "sqlcatalog","alter_table", "pattern sqlcatalog.alter_table(sname:str, tname:str, tbl:ptr, action:int):void ", "SQLalter_table;", "Catalog operation alter_table" ] [ "sqlcatalog","alter_user", "pattern sqlcatalog.alter_user(sname:str, passwrd:str, enc:int, schema:str, oldpasswrd:str):void ", "SQLalter_user;", "Catalog operation alter_user" ] +[ "sqlcatalog","comment_on", "pattern sqlcatalog.comment_on(objid:int, remark:str):void ", "SQLcomment_on;", "Catalog operation comment_on" ] [ "sqlcatalog","create_function", "pattern sqlcatalog.create_function(sname:str, fname:str, fcn:ptr):void ", "SQLcreate_function;", "Catalog operation create_function" ] [ "sqlcatalog","create_role", "pattern sqlcatalog.create_role(sname:str, role:str, grator:int):void ", "SQLcreate_role;", "Catalog operation create_role" ] [ "sqlcatalog","create_schema","pattern sqlcatalog.create_schema(sname:str, auth:str, ifnotexists:int, action:int):void ", "SQLcreate_schema;","Catalog operation create_schema" ] 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 @@ -15161,6 +15161,7 @@ Ready. [ "sqlcatalog","alter_set_table", "pattern sqlcatalog.alter_set_table(sname:str, tnme:str, access:int):void ", "SQLalter_set_table;", "Catalog operation alter_set_table" ] [ "sqlcatalog","alter_table", "pattern sqlcatalog.alter_table(sname:str, tname:str, tbl:ptr, action:int):void ", "SQLalter_table;", "Catalog operation alter_table" ] [ "sqlcatalog","alter_user", "pattern sqlcatalog.alter_user(sname:str, passwrd:str, enc:int, schema:str, oldpasswrd:str):void ", "SQLalter_user;", "Catalog operation alter_user" ] +[ "sqlcatalog","comment_on", "pattern sqlcatalog.comment_on(objid:int, remark:str):void ", "SQLcomment_on;", "Catalog operation comment_on" ] [ "sqlcatalog","create_function", "pattern sqlcatalog.create_function(sname:str, fname:str, fcn:ptr):void ", "SQLcreate_function;", "Catalog operation create_function" ] [ "sqlcatalog","create_role", "pattern
monetdb-java: embedded - Merge with default
Changeset: c23218fbc2e9 for monetdb-java URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=c23218fbc2e9 Modified Files: src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java Branch: embedded Log Message: Merge with default ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
monetdb-java: embedded - Indentation
Changeset: 4106c9ed7b6a for monetdb-java URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=4106c9ed7b6a Modified Files: src/main/java/nl/cwi/monetdb/mcl/connection/mapi/MapiConnection.java Branch: embedded Log Message: Indentation diffs (13 lines): diff --git a/src/main/java/nl/cwi/monetdb/mcl/connection/mapi/MapiConnection.java b/src/main/java/nl/cwi/monetdb/mcl/connection/mapi/MapiConnection.java --- a/src/main/java/nl/cwi/monetdb/mcl/connection/mapi/MapiConnection.java +++ b/src/main/java/nl/cwi/monetdb/mcl/connection/mapi/MapiConnection.java @@ -264,7 +264,8 @@ public class MapiConnection extends Mone * @throws SQLException if an IO exception or a database error occurs */ @Override - protected boolean executeNextQueryBatch(MonetStatement statement, List batch, int[] counts, BatchUpdateException e) throws SQLException { + protected boolean executeNextQueryBatch(MonetStatement statement, List batch, int[] counts, + BatchUpdateException e) throws SQLException { int offset = 0; boolean first = true, error = false; int builderSize = this.initialStringBuilderSize(); ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Mar2018 - Approve after changeset f74f0724d3b9.
Changeset: 35cc1a5b221f for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=35cc1a5b221f Modified Files: sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.stable.out sql/test/emptydb/Tests/check.stable.out.32bit sql/test/emptydb/Tests/check.stable.out.int128 sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade/Tests/upgrade.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128 Branch: Mar2018 Log Message: Approve after changeset f74f0724d3b9. diffs (truncated from 2457 to 300 lines): diff --git a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 --- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 +++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 @@ -5521,41 +5521,42 @@ SELECT k.table_id AS key_table_id, k.id GRANT SELECT ON sys.dependency_keys_on_foreignkeys TO PUBLIC; -CREATE VIEW sys.dependency_tables_on_procdures AS -SELECT t.schema_id AS table_schema_id, t.id AS table_id, t.name AS table_name, p.name, p.type AS proc_type, dep.depend_type AS depend_type +CREATE VIEW sys.dependency_tables_on_procedures AS +SELECT t.schema_id AS table_schema_id, t.id AS table_id, t.name AS table_name, p.id AS procedure_id, p.name AS procedure_name, p.type AS procedure_type, dep.depend_type AS depend_type FROM sys.functions AS p, sys.tables AS t, sys.dependencies AS dep WHERE t.id = dep.id AND p.id = dep.depend_id AND dep.depend_type = 13 AND p.type = 2 AND t.type NOT IN (1, 11) ORDER BY t.name, t.schema_id, p.name, p.id; -GRANT SELECT ON sys.dependency_tables_on_procdures TO PUBLIC; +GRANT SELECT ON sys.dependency_tables_on_procedures TO PUBLIC; -CREATE VIEW sys.dependency_views_on_procdures AS -SELECT v.name AS view_name, p.name AS proc_name, p.type AS proc_type, dep.depend_type AS depend_type +CREATE VIEW sys.dependency_views_on_procedures AS +SELECT v.schema_id AS view_schema_id, v.id AS view_id, v.name AS view_name, p.id AS procedure_id, p.name AS procedure_name, p.type AS procedure_type, dep.depend_type AS depend_type FROM sys.functions AS p, sys.tables AS v, sys.dependencies AS dep WHERE v.id = dep.id AND p.id = dep.depend_id AND dep.depend_type = 13 AND p.type = 2 AND v.type IN (1, 11) ORDER BY v.name, v.schema_id, p.name, p.id; -GRANT SELECT ON sys.dependency_views_on_procdures TO PUBLIC; +GRANT SELECT ON sys.dependency_views_on_procedures TO PUBLIC; -CREATE VIEW sys.dependency_columns_on_procdures AS -SELECT c.name AS column_name, p.name AS proc_name, p.type AS proc_type, dep.depend_type AS depend_type +CREATE VIEW sys.dependency_columns_on_procedures AS +SELECT c.table_id, c.id AS column_id, c.name AS column_name, p.id AS procedure_id, p.name AS procedure_name, p.type AS procedure_type, dep.depend_type AS depend_type FROM sys.functions AS p, sys.columns AS c, sys.dependencies AS dep WHERE c.id = dep.id AND p.id = dep.depend_id AND dep.depend_type = 13 AND p.type = 2 ORDER BY c.name, c.table_id, p.name, p.id; -GRANT SELECT ON sys.dependency_columns_on_procdures TO PUBLIC; +GRANT SELECT ON sys.dependency_columns_on_procedures TO PUBLIC; -CREATE VIEW sys.dependency_functions_on_procdures AS -SELECT p.name AS proc_name, p.type AS proc_type, f2.name AS func_name, f2.type AS func_type, dep.depend_type AS depend_type - FROM sys.functions AS p, sys.functions AS f2, sys.dependencies AS dep - WHERE f2.id = dep.id AND p.id = dep.depend_id +CREATE VIEW sys.dependency_functions_on_procedures AS +SELECT f.schema_id AS function_schema_id, f.id AS function_id, f.name AS function_name, f.type AS function_type, + p.schema_id AS procedure_schema_id, p.id AS procedure_id, p.name AS procedure_name, p.type AS procedure_type, dep.depend_type AS depend_type + FROM sys.functions AS p, sys.functions AS f, sys.dependencies AS dep + WHERE
MonetDB: default - merged with Mar2018
Changeset: 14211c2d07ea for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=14211c2d07ea Modified Files: clients/mapiclient/mnc.c monetdb5/modules/mal/mal_mapi.c sql/ChangeLog.Mar2018 sql/backends/monet5/sql.c sql/backends/monet5/sql_upgrades.c sql/scripts/21_dependency_views.sql sql/server/rel_select.c sql/test/BugTracker-2016/Tests/storagemodel.sql sql/test/BugTracker-2016/Tests/storagemodel.stable.out sql/test/BugTracker-2017/Tests/crash_correlated_subqueries_in_select.Bug-6254.stable.out sql/test/Dependencies/Tests/Dependencies.stable.out sql/test/Dependencies/Tests/Dependencies.stable.out.int128 sql/test/Dependencies/Tests/dependency_loop.stable.out sql/test/Dependencies/Tests/dependency_loop.stable.out.int128 tools/merovingian/daemon/connections.c Branch: default Log Message: merged with Mar2018 diffs (truncated from 753 to 300 lines): diff --git a/clients/mapiclient/mnc.c b/clients/mapiclient/mnc.c --- a/clients/mapiclient/mnc.c +++ b/clients/mapiclient/mnc.c @@ -213,6 +213,7 @@ main(int argc, char **argv) #endif if (connect(s, serv, sizeof(server)) == SOCKET_ERROR) { + closesocket(s); fprintf(stderr, "initiating connection on socket failed: %s\n", strerror(errno)); @@ -253,13 +254,20 @@ main(int argc, char **argv) server.sin_port = htons((unsigned short) ((port) & 0x)); if (bind(sock, (SOCKPTR) , length) == SOCKET_ERROR) { + closesocket(sock); fprintf(stderr, "bind to port %d failed: %s\n", port, strerror(errno)); exit(1); } - listen(sock, 1); + if(listen(sock, 1) == -1) { + closesocket(sock); + fprintf(stderr, "failed to set socket to listen: %s\n", + strerror(errno)); + exit(1); + } if ((s = accept4(sock, (SOCKPTR)0, (socklen_t *)0, SOCK_CLOEXEC)) == INVALID_SOCKET) { + closesocket(sock); fprintf(stderr, "failed to accept connection: %s\n", strerror(errno)); exit(1); @@ -288,8 +296,11 @@ main(int argc, char **argv) /* on Windows: unsigned int, * elsewhere: size_t, but then * unsigned int shouldn't harm */ - if (!write(1, buf, (unsigned int) len)) + if (!write(1, buf, (unsigned int) len)) { + mnstr_destroy(in); + mnstr_destroy(out); exit(2); + } seenflush = 0; } else { /* flush or error */ diff --git a/monetdb5/modules/mal/mal_mapi.c b/monetdb5/modules/mal/mal_mapi.c --- a/monetdb5/modules/mal/mal_mapi.c +++ b/monetdb5/modules/mal/mal_mapi.c @@ -158,6 +158,7 @@ doChallenge(void *data) generateChallenge(challenge, 8, 12); algos = mcrypt_getHashAlgorithms(); if(!algos) { + mnstr_printf(fdout, "!allocation failure in the server\n"); GDKsyserror("SERVERlisten:"MAL_MALLOC_FAIL); close_stream(fdin); close_stream(fdout); @@ -278,6 +279,7 @@ doChallenge(void *data) bs = bstream_create(fdin, 128 * BLOCK); if (bs == NULL){ + mnstr_printf(fdout, "!allocation failure in the server\n"); close_stream(fdin); close_stream(fdout); GDKfree(buf); @@ -436,7 +438,7 @@ SERVERlistenThread(SOCKET *Sock) { int *c_d; /* filedescriptor, put it in place of msgsock */ cmsg = CMSG_FIRSTHDR(); - shutdown(msgsock, SHUT_WR); + (void) shutdown(msgsock, SHUT_WR); closesocket(msgsock); if (!cmsg || cmsg->cmsg_type != SCM_RIGHTS) { fprintf(stderr, "!mal_mapi.listen: " @@ -714,7 +716,20 @@ SERVERlisten(int *Port, str *Usockfile, #endif ); } - listen(sock, maxusers); + if(listen(sock, maxusers) == SOCKET_ERROR) { + closesocket(sock); +
monetdb-java: embedded - Move batch processing definition in ord...
Changeset: e6dc6196f470 for monetdb-java URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=e6dc6196f470 Modified Files: src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java src/main/java/nl/cwi/monetdb/mcl/connection/mapi/MapiConnection.java Branch: embedded Log Message: Move batch processing definition in order to support it properly in a embedded connection diffs (175 lines): diff --git a/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java b/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java --- a/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java +++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java @@ -200,13 +200,26 @@ public abstract class MonetConnection ex /** * Sends a control command to the server. * -* @param commandID the command identifier according to {@link ControlCommands} listing +* @param commandID The command identifier according to {@link ControlCommands} listing * @param data The integer to send according to the control command * @throws SQLException if an IO exception or a database error occurs */ public abstract void sendControlCommand(int commandID, int data) throws SQLException; /** +* Execute a batch of SQL query statements. +* +* @param statement The original MonetStatement where the batch comes from +* @param batch The list of queries to execute +* @param counts The return of the update statement of each input query +* @param e An exception to be thrown if an error occurs +* @return If all queries in the batch executed successfully or not +* @throws SQLException if an IO exception or a database error occurs +*/ + protected abstract boolean executeNextQueryBatch(MonetStatement statement, List batch, int[] counts, + BatchUpdateException e) throws SQLException; + + /** * Releases this Connection object's database and JDBC resources immediately instead of waiting for them to be * automatically released. All Statements created from this Connection will be closed when this method is called. * diff --git a/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java b/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java --- a/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java +++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java @@ -186,43 +186,9 @@ public class MonetStatement extends Mone return new int[0]; int[] counts = new int[batch.size()]; - int offset = 0; - boolean first = true; - boolean error = false; - BatchUpdateException e = new BatchUpdateException("Error(s) occurred while executing the batch, see next SQLExceptions for details", "22000", counts); - int builderSize = connection.initialStringBuilderSize(); - StringBuilder tmpBatch = new StringBuilder(builderSize); - String sep = connection.getLanguage().getQueryTemplateIndex(2); - for (int i = 0; i < batch.size(); i++) { - String tmp = batch.get(i); - if (sep.length() + tmp.length() > builderSize) { - // The thing is too big. Way too big. Since it won't be optimal anyway, just add it to whatever we - // have and continue. - if (!first) { - tmpBatch.append(sep); - } - tmpBatch.append(tmp); - // send and receive - error |= internalBatch(tmpBatch.toString(), counts, offset, i + 1, e); - offset = i; - tmpBatch.delete(0, tmpBatch.length()); - first = true; - continue; - } - if (tmpBatch.length() + sep.length() + tmp.length() >= builderSize) { - // send and receive - error |= internalBatch(tmpBatch.toString(), counts, offset, i + 1, e); - offset = i; - tmpBatch.delete(0, tmpBatch.length()); - first = true; - } - if (!first) tmpBatch.append(sep); -
MonetDB: Mar2018 - Move creation of sys.comments table to C.
Changeset: c645018726e3 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c645018726e3 Modified Files: sql/backends/monet5/sql_upgrades.c sql/scripts/97_comments.sql sql/server/sql_mvc.c sql/server/sql_privileges.c sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64 sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/emptydb-upgrade/Tests/upgrade.stable.out sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128 sql/test/emptydb/Tests/check.stable.out sql/test/emptydb/Tests/check.stable.out.32bit sql/test/emptydb/Tests/check.stable.out.int128 sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128 sql/test/testdb-upgrade/Tests/upgrade.stable.out sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128 Branch: Mar2018 Log Message: Move creation of sys.comments table to C. It's a core table, it should be created by the core. diffs (truncated from 395 to 300 lines): diff --git a/sql/backends/monet5/sql_upgrades.c b/sql/backends/monet5/sql_upgrades.c --- a/sql/backends/monet5/sql_upgrades.c +++ b/sql/backends/monet5/sql_upgrades.c @@ -975,6 +975,21 @@ sql_update_mar2018(Client c, mvc *sql) throw(SQL, "sql_update_mar2018", SQLSTATE(HY001) MAL_MALLOC_FAIL); s = mvc_bind_schema(sql, "sys"); + t = mvc_create_table(sql, s, "comments", tt_table, 1, SQL_PERSIST, 0, -1); + sql_column *col = mvc_create_column_(sql, t, "id", "int", 32); + sql_key *k = sql_trans_create_ukey(sql->session->tr, t, "comments_id_pkey", pkey); + k = sql_trans_create_kc(sql->session->tr, k, col); + k = sql_trans_key_done(sql->session->tr, k); + sql_trans_create_dependency(sql->session->tr, col->base.id, k->idx->base.id, INDEX_DEPENDENCY); + col = mvc_create_column_(sql, t, "remark", "varchar", 65000); + sql_trans_alter_null(sql->session->tr, col, 0); + + sql_table *privs = mvc_bind_table(sql, s, "privileges"); + int pub = ROLE_PUBLIC; + int p = PRIV_SELECT; + int zero = 0; + table_funcs.table_insert(sql->session->tr, privs, >base.id, , , , ); + pos += snprintf(buf + pos, bufsize - pos, "set schema \"sys\";\n"); /* 21_dependency_views.sql */ @@ -1406,11 +1421,6 @@ sql_update_mar2018(Client c, mvc *sql) /* 97_comments */ pos += snprintf(buf + pos, bufsize - pos, - "CREATE TABLE sys.comments (\n" - "id INTEGER NOT NULL PRIMARY KEY,\n" - "remark VARCHAR(65000) NOT NULL\n" - ");\n" - "GRANT SELECT ON sys.comments TO PUBLIC;\n" "CREATE FUNCTION sys.function_type_keyword(ftype INT)\n" "RETURNS VARCHAR(20)\n" "BEGIN\n" diff --git a/sql/scripts/97_comments.sql b/sql/scripts/97_comments.sql --- a/sql/scripts/97_comments.sql +++ b/sql/scripts/97_comments.sql @@ -4,13 +4,6 @@ -- -- Copyright 1997 - July 2008 CWI, August 2008 - 2018 MonetDB B.V. -CREATE TABLE sys.comments ( -id INTEGER NOT NULL PRIMARY KEY, -remark VARCHAR(65000) NOT NULL -); -GRANT SELECT ON sys.comments TO PUBLIC; - - -- This table used to be in 99_system.sql but we need the systemfunctions table -- in sys.describe_all_objects and sys.commented_function_signatures defined below. CREATE TABLE sys.systemfunctions (function_id INTEGER NOT NULL); diff --git a/sql/server/sql_mvc.c b/sql/server/sql_mvc.c --- a/sql/server/sql_mvc.c +++ b/sql/server/sql_mvc.c @@ -158,8 +158,18 @@ mvc_init(int debug, store_type store, in while ((rid = table_funcs.column_find_row(m->session->tr, depids, , NULL)), !is_oid_nil(rid)) { table_funcs.column_update_value(m->session->tr, depids, rid, ); } - } else { + } else { + sql_column *col; + sql_key *k; sql_create_env(m, s); + t = mvc_create_table(m, s, "comments", tt_table, 1, SQL_PERSIST,