Changeset: 9736079f6ef9 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9736079f6ef9 Added Files: sql/backends/monet5/Tests/cquery20.stable.err sql/backends/monet5/Tests/cquery20.stable.out Modified Files: sql/backends/monet5/sql_cat.c sql/backends/monet5/sql_cquery.c sql/backends/monet5/sql_cquery.h sql/test/Tests/systemfunctions.stable.out sql/test/Tests/systemfunctions.stable.out.int128 Branch: trails Log Message:
Add stream tables to continous functions output. diffs (truncated from 695 to 300 lines): diff --git a/sql/backends/monet5/Tests/cquery20.stable.err b/sql/backends/monet5/Tests/cquery20.stable.err new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/Tests/cquery20.stable.err @@ -0,0 +1,46 @@ +stderr of test 'cquery20` in directory 'sql/backends/monet5` itself: + + +# 11:09:21 > +# 11:09:21 > "/usr/bin/python2" "cquery20.py" "cquery20" +# 11:09:21 > + +# builtin opt gdk_dbpath = /home/ferreira/MonetDB-trails/BUILD/var/monetdb5/dbfarm/demo +# builtin opt gdk_debug = 0 +# builtin opt gdk_vmtrim = no +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 50000 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 38287 +# cmdline opt mapi_usock = /var/tmp/mtest-31962/.s.monetdb.38287 +# cmdline opt monet_prompt = +# cmdline opt gdk_dbpath = /home/ferreira/MonetDB-trails/BUILD/var/MonetDB/mTests_sql_backends_monet5 +# cmdline opt gdk_debug = 536870922 +# builtin opt gdk_dbpath = /home/ferreira/MonetDB-trails/BUILD/var/monetdb5/dbfarm/demo +# builtin opt gdk_debug = 0 +# builtin opt gdk_vmtrim = no +# builtin opt monet_prompt = > +# builtin opt monet_daemon = no +# builtin opt mapi_port = 50000 +# builtin opt mapi_open = false +# builtin opt mapi_autosense = false +# builtin opt sql_optimizer = default_pipe +# builtin opt sql_debug = 0 +# cmdline opt gdk_nr_threads = 0 +# cmdline opt mapi_open = true +# cmdline opt mapi_port = 38287 +# cmdline opt mapi_usock = /var/tmp/mtest-31962/.s.monetdb.38287 +# cmdline opt monet_prompt = +# cmdline opt gdk_dbpath = /home/ferreira/MonetDB-trails/BUILD/var/MonetDB/mTests_sql_backends_monet5 +# cmdline opt gdk_debug = 536870922 + +# 11:09:23 > +# 11:09:23 > "Done." +# 11:09:23 > + diff --git a/sql/backends/monet5/Tests/cquery20.stable.out b/sql/backends/monet5/Tests/cquery20.stable.out new file mode 100644 --- /dev/null +++ b/sql/backends/monet5/Tests/cquery20.stable.out @@ -0,0 +1,112 @@ +stdout of test 'cquery20` in directory 'sql/backends/monet5` itself: + + +# 11:09:21 > +# 11:09:21 > "/usr/bin/python2" "cquery20.py" "cquery20" +# 11:09:21 > + +#create temporary stream table sta (a int);select count(*) from streams;create stream table stb (a int);select count(*) from streams; +#create temporary stream table sta (a int);select count(*) from streams;create stream table stb (a int);select count(*) from streams; +% .L22 # table_name +% L21 # name +% bigint # type +% 1 # length +[ 1 ] +#create temporary stream table sta (a int);select count(*) from streams;create stream table stb (a int);select count(*) from streams; +#create temporary stream table sta (a int);select count(*) from streams;create stream table stb (a int);select count(*) from streams; +% .L22 # table_name +% L21 # name +% bigint # type +% 1 # length +[ 2 ] +#select count(*) from streams; +% .L22 # table_name +% L21 # name +% bigint # type +% 1 # length +[ 1 ] +# MonetDB 5 server v11.28.0 +# This is an unreleased version +# Serving database 'mTests_sql_backends_monet5', using 8 threads +# Compiled for x86_64-pc-linux-gnu/64bit with 128bit integers +# Found 15.498 GiB available main-memory. +# Copyright (c) 1993-July 2008 CWI. +# Copyright (c) August 2008-2017 MonetDB B.V., all rights reserved +# Visit https://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://dhcp-120.eduroam.cwi.nl:38287/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-31962/.s.monetdb.38287 +# MonetDB/GIS module loaded +# MonetDB/SQL module loaded +# MonetDB/Timetrails module loaded +# SQL catalog created, loading sql scripts once +# loading sql script: 09_like.sql +# 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_querylog.sql +# loading sql script: 16_tracelog.sql +# loading sql script: 17_temporal.sql +# loading sql script: 18_index.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: 25_debug.sql +# loading sql script: 26_sysmon.sql +# loading sql script: 27_rejects.sql +# loading sql script: 39_analytics.sql +# loading sql script: 39_analytics_hge.sql +# loading sql script: 40_geom.sql +# loading sql script: 40_json.sql +# loading sql script: 40_json_hge.sql +# loading sql script: 41_md5sum.sql +# loading sql script: 45_uuid.sql +# loading sql script: 46_profiler.sql +# loading sql script: 50_cquery.sql +# loading sql script: 51_sys_schema_extension.sql +# loading sql script: 60_wlcr.sql +# loading sql script: 72_fits.sql +# loading sql script: 74_netcdf.sql +# loading sql script: 75_lidar.sql +# loading sql script: 75_shp.sql +# loading sql script: 75_storagemodel.sql +# loading sql script: 80_statistics.sql +# loading sql script: 80_udf.sql +# loading sql script: 80_udf_hge.sql +# loading sql script: 85_bam.sql +# loading sql script: 90_generator.sql +# loading sql script: 90_generator_hge.sql +# loading sql script: 99_system.sql +#select count(*) from streams;drop table stb;select count(*) from streams; +% .L22 # table_name +% L21 # name +% bigint # type +% 1 # length +[ 1 ] +#select count(*) from streams;drop table stb;select count(*) from streams; +#select count(*) from streams;drop table stb;select count(*) from streams; +% .L22 # table_name +% L21 # name +% bigint # type +% 1 # length +[ 0 ] +# MonetDB 5 server v11.28.0 +# This is an unreleased version +# Serving database 'mTests_sql_backends_monet5', using 8 threads +# Compiled for x86_64-pc-linux-gnu/64bit with 128bit integers +# Found 15.498 GiB available main-memory. +# Copyright (c) 1993-July 2008 CWI. +# Copyright (c) August 2008-2017 MonetDB B.V., all rights reserved +# Visit https://www.monetdb.org/ for further information +# Listening for connection requests on mapi:monetdb://dhcp-120.eduroam.cwi.nl:38287/ +# Listening for UNIX domain connection requests on mapi:monetdb:///var/tmp/mtest-31962/.s.monetdb.38287 +# MonetDB/GIS module loaded +# MonetDB/SQL module loaded +# MonetDB/Timetrails module loaded + +# 11:09:23 > +# 11:09:23 > "Done." +# 11:09:23 > + diff --git a/sql/backends/monet5/sql_cat.c b/sql/backends/monet5/sql_cat.c --- a/sql/backends/monet5/sql_cat.c +++ b/sql/backends/monet5/sql_cat.c @@ -427,7 +427,7 @@ drop_index(Client cntxt, mvc *sql, char } static str -change_single_cp(str alias, int action, lng heartbeat, lng startat, int cycles) +change_single_cp(Client cntxt, str alias, int action, lng heartbeat, lng startat, int cycles) { if(action & mod_resume_continuous) { return CQresume(alias, 1, heartbeat, startat, cycles); @@ -436,14 +436,14 @@ change_single_cp(str alias, int action, } else if(action & mod_pause_continuous) { return CQpause(alias); } else if(action & mod_stop_continuous) { - return CQderegister(alias); + return CQderegister(cntxt, alias); } assert(0); return NULL; } static str -change_all_cp(int action) +change_all_cp(Client cntxt, int action) { switch(action) { case mod_pause_all_continuous: @@ -451,7 +451,7 @@ change_all_cp(int action) case mod_resume_all_continuous: return CQresumeAll(); case mod_stop_all_continuous: - return CQderegisterAll(); + return CQderegisterAll(cntxt); default: assert(0); } @@ -1336,7 +1336,7 @@ SQLchange_single_cp(Client cntxt, MalBlk int cycles = *getArgReference_int(stk, pci, 5); initcontext(); - msg = change_single_cp(alias, action, heartbeat, startat, cycles); + msg = change_single_cp(cntxt, alias, action, heartbeat, startat, cycles); return msg; } @@ -1347,7 +1347,7 @@ SQLchange_all_cp(Client cntxt, MalBlkPtr int action = *getArgReference_int(stk, pci, 1); initcontext(); - msg = change_all_cp(action); + msg = change_all_cp(cntxt, action); return msg; } diff --git a/sql/backends/monet5/sql_cquery.c b/sql/backends/monet5/sql_cquery.c --- a/sql/backends/monet5/sql_cquery.c +++ b/sql/backends/monet5/sql_cquery.c @@ -50,6 +50,7 @@ #include "sql_execute.h" #include "mal_builder.h" #include "opt_prelude.h" +#include "mal_authorize.h" #include "mtime.h" static str statusname[7] = {"init", "register", "readytorun", "running", "waiting", "paused", "stopping"}; @@ -83,33 +84,56 @@ do { throw(SQL,malcal,SQLSTATE(42000) "##name##ALL CONTINUOUS: insufficient privileges for the current user\n");\ } while(0); -#define CLEAN_BASKETS(idx) \ -do { \ - for(int m=0; m< MAXSTREAMS && pnet[idx].baskets[m]; m++) { \ - int found = 0; \ - str sch = baskets[pnet[idx].baskets[m]].table->s->base.name; \ - str tbl = baskets[pnet[idx].baskets[m]].table->base.name; \ - for(int n=0; n < pnettop && !found; n++) { \ - if(n != idx) { \ - for(int o=0; o< MAXSTREAMS && pnet[n].baskets[o] && !found; o++) { \ - if (strcmp(sch, baskets[pnet[n].baskets[o]].table->s->base.name) == 0 && \ - strcmp(tbl, baskets[pnet[n].baskets[o]].table->base.name) == 0) \ - found = 1; \ - } \ - } \ - } \ - if(!found) { \ - BSKTclean(pnet[idx].baskets[m]); \ - } \ - } \ -} while(0); +static void +cleanBaskets(int idx) +{ + int m, n, o, found; + str sch, tbl; + + for(m=0; m< MAXSTREAMS && pnet[idx].baskets[m]; m++) { + found = 0; + sch = baskets[pnet[idx].baskets[m]].table->s->base.name; + tbl = baskets[pnet[idx].baskets[m]].table->base.name; + for(n=0; n < pnettop && !found; n++) { + if(n != idx) { + for(o=0; o< MAXSTREAMS && pnet[n].baskets[o] && !found; o++) { + if (strcmp(sch, baskets[pnet[n].baskets[o]].table->s->base.name) == 0 && + strcmp(tbl, baskets[pnet[n].baskets[o]].table->base.name) == 0) + found = 1; + } + } + } + if(!found) { + BSKTclean(pnet[idx].baskets[m]); + } + } +} static void -CQfree(int idx) +CQfree(Client cntxt, int idx) { int i; InstrPtr p; + if(cntxt && IS_UNION(pnet[idx].func)) { + oid prevID; + str prevUserName; + + //change IDs + prevID = cntxt->user; + prevUserName = cntxt->username; + cntxt->user = CQ_SCHEDULER_CLIENTID; + if(AUTHgetUsername(&cntxt->username, cntxt) == MAL_SUCCEED) { _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list