MonetDB: Jul2017 - fixes for bug 6379

2017-07-28 Thread Niels Nes
Changeset: 471a91ee613d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=471a91ee613d
Modified Files:
sql/server/rel_select.c
Branch: Jul2017
Log Message:

fixes for bug 6379


diffs (12 lines):

diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c
--- a/sql/server/rel_select.c
+++ b/sql/server/rel_select.c
@@ -649,6 +649,8 @@ rel_named_table_function(mvc *sql, sql_r
if (!f->rel || !rel || !sf)
return NULL;
}
+   if (!sf)
+   return NULL;
exps = list_dup(exps, NULL);
append(exps, tid);
e = exp_op(sql->sa, exps, sf);
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: trails - Added stream table parameters at time of their...

2017-07-28 Thread Pedro Ferreira
Changeset: 915cd0653e7e for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=915cd0653e7e
Modified Files:
sql/backends/monet5/Tests/cqcreate.sql
sql/backends/monet5/Tests/cquery00.stable.err
sql/backends/monet5/Tests/cquery06.stable.err
sql/backends/monet5/basket.mal
sql/backends/monet5/sql.c
sql/backends/monet5/sql_basket.c
sql/backends/monet5/sql_basket.h
sql/backends/monet5/sql_cquery.c
sql/include/sql_catalog.h
sql/scripts/50_cquery.sql
sql/server/rel_psm.c
sql/server/rel_schema.c
sql/server/rel_schema.h
sql/server/sql_mvc.c
sql/server/sql_mvc.h
sql/server/sql_parser.y
sql/server/sql_privileges.c
sql/server/sql_scan.c
sql/storage/sql_storage.h
sql/storage/store.c
Branch: trails
Log Message:

Added stream table parameters at time of their creation ( CREATE STREAM TABLE 
qname ... SET WINDOW intval STRIDE intval ) The window and stride parameters 
are then used in the baskets during continuous queries. Still there is a lot of 
debugging to be done.


diffs (truncated from 1405 to 300 lines):

diff --git a/sql/backends/monet5/Tests/cqcreate.sql 
b/sql/backends/monet5/Tests/cqcreate.sql
--- a/sql/backends/monet5/Tests/cqcreate.sql
+++ b/sql/backends/monet5/Tests/cqcreate.sql
@@ -6,3 +6,7 @@ CREATE PROCEDURE stressing() BEGIN INSER
 
 START CONTINUOUS stressing();
 STOP CONTINUOUS stressing();
+
+DROP PROCEDURE stressing;
+DROP TABLE results;
+DROP TABLE testing;
diff --git a/sql/backends/monet5/Tests/cquery00.stable.err 
b/sql/backends/monet5/Tests/cquery00.stable.err
--- a/sql/backends/monet5/Tests/cquery00.stable.err
+++ b/sql/backends/monet5/Tests/cquery00.stable.err
@@ -44,6 +44,7 @@ QUERY = # some simple MAL tests
 
 
 
+
 # 22:29:14 >  
 # 22:29:14 >  "Done."
 # 22:29:14 >  
diff --git a/sql/backends/monet5/Tests/cquery06.stable.err 
b/sql/backends/monet5/Tests/cquery06.stable.err
--- a/sql/backends/monet5/Tests/cquery06.stable.err
+++ b/sql/backends/monet5/Tests/cquery06.stable.err
@@ -31,6 +31,7 @@ MAPI  = (monetdb) /var/tmp/mtest-24395/.
 QUERY = pause continuous cq_basic06(); --error
 
 
+
 # 10:26:39 >  
 # 10:26:39 >  "Done."
 # 10:26:39 >  
diff --git a/sql/backends/monet5/basket.mal b/sql/backends/monet5/basket.mal
--- a/sql/backends/monet5/basket.mal
+++ b/sql/backends/monet5/basket.mal
@@ -77,7 +77,7 @@ pattern drop(mvc:int,sch:str,tbl:str):in
 address BSKTdrop
 comment "Remove the basket";
 
-pattern status() (seen:bat[:timestamp],sch:bat[:str],tbl:bat[:str], 
window:bat[:int], stride:bat[:int],events:bat[:int],cycles:bat[:int], 
error:bat[:str])
+pattern status() (seen:bat[:timestamp],sch:bat[:str],tbl:bat[:str], 
window:bat[:int], stride:bat[:int],events:bat[:int], error:bat[:str])
 address BSKTstatus
 comment "Show the status of the baskets";
 
diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -282,6 +282,7 @@ create_table_or_view(mvc *sql, char *sna
sql_schema *s = mvc_bind_schema(sql, sname);
sql_table *nt = NULL;
node *n;
+   int window_size, stride;
 
(void)tname;
if (STORE_READONLY)
@@ -322,7 +323,10 @@ create_table_or_view(mvc *sql, char *sna
}
}
 
-   nt = sql_trans_create_table(sql->session->tr, s, t->base.name, 
t->query, t->type, t->system, temp, t->commit_action, t->sz);
+   window_size = isStream(t) ? t->stream->window : 0;
+   stride = isStream(t) ? t->stream->stride : 0;
+
+   nt = sql_trans_create_table(sql->session->tr, s, t->base.name, 
t->query, t->type, t->system, temp, t->commit_action, t->sz, window_size, 
stride);
 
for (n = t->columns.set->h; n; n = n->next) {
sql_column *c = n->data;
diff --git a/sql/backends/monet5/sql_basket.c b/sql/backends/monet5/sql_basket.c
--- a/sql/backends/monet5/sql_basket.c
+++ b/sql/backends/monet5/sql_basket.c
@@ -47,8 +47,8 @@ BSKTlocate(str sch, str tbl)
if( sch == 0 || tbl == 0)
return 0;
for (i = 1; i < bsktTop; i++)
-   if (baskets[i].schema && strcmp(sch, baskets[i].schema) == 0 &&
-   baskets[i].table && strcmp(tbl, baskets[i].table) == 0)
+   if (baskets[i].table && baskets[i].table->s && strcmp(sch, 
baskets[i].table->s->base.name) == 0 &&
+   baskets[i].table && strcmp(tbl, 
baskets[i].table->base.name) == 0)
return i;
return 0;
 }
@@ -90,70 +90,21 @@ BSKTclean(int idx)
 {  int i;
 
if( idx){
-   GDKfree(baskets[idx].schema);
-   GDKfree(baskets[idx].table);
-   GDKfree(baskets[idx].error);
-   baskets[idx].schema = NULL;
+   if(baskets[idx].error)
+   GDKfree(baskets[idx].error);
baskets[idx].table = NULL;

MonetDB: data-vaults - Approve output

2017-07-28 Thread Panagiotis Koutsourakis
Changeset: ec53d25b772b for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ec53d25b772b
Modified Files:
sql/test/emptydb/Tests/check.stable.out
sql/test/emptydb/Tests/check.stable.out.32bit
sql/test/emptydb/Tests/check.stable.out.int128
Branch: data-vaults
Log Message:

Approve output


diffs (truncated from 492 to 300 lines):

diff --git a/sql/test/emptydb/Tests/check.stable.out 
b/sql/test/emptydb/Tests/check.stable.out
--- a/sql/test/emptydb/Tests/check.stable.out
+++ b/sql/test/emptydb/Tests/check.stable.out
@@ -140,6 +140,17 @@ Ready.
 \dSf sys."fitsload"
 \dSf sys."flush_log"
 \dSf sys."fuse"
+\dSf sys."gadgetanalyzetab"
+\dSf sys."gadgetattach"
+\dSf sys."gadgetattachall"
+\dSf sys."gadgetchecktab"
+\dSf sys."gadgetlistdir"
+\dSf sys."gadgetlistdirall"
+\dSf sys."gadgetlistdirpat"
+\dSf sys."gadgetload"
+\dSf sys."gadgetloadall"
+\dSf sys."gadgetphkeyconvert"
+\dSf sys."gadgetphkeyinvert"
 \dSf sys."generate_series"
 \dSf sys."geometrytype"
 \dSf sys."get_type"
@@ -170,9 +181,12 @@ Ready.
 \dSf sys."isauuid"
 \dSf sys."left_shift"
 \dSf sys."left_shift_assign"
+\dSf sys."lidaranalyzetab"
 \dSf sys."lidarattach"
+\dSf sys."lidarchecktab"
 \dSf sys."lidarexport"
 \dSf sys."lidarload"
+\dSf sys."lidarunload"
 \dSf sys."like"
 \dSf sys."listdir"
 \dSf sys."listdirpat"
@@ -481,6 +495,17 @@ SYSTEM FUNCTION  sys.fitsload
 SYSTEM FUNCTION  sys.floor
 SYSTEM FUNCTION  sys.flush_log
 SYSTEM FUNCTION  sys.fuse
+SYSTEM FUNCTION  sys.gadgetanalyzetab
+SYSTEM FUNCTION  sys.gadgetattach
+SYSTEM FUNCTION  sys.gadgetattachall
+SYSTEM FUNCTION  sys.gadgetchecktab
+SYSTEM FUNCTION  sys.gadgetlistdir
+SYSTEM FUNCTION  sys.gadgetlistdirall
+SYSTEM FUNCTION  sys.gadgetlistdirpat
+SYSTEM FUNCTION  sys.gadgetload
+SYSTEM FUNCTION  sys.gadgetloadall
+SYSTEM FUNCTION  sys.gadgetphkeyconvert
+SYSTEM FUNCTION  sys.gadgetphkeyinvert
 SYSTEM FUNCTION  sys.generate_series
 SYSTEM FUNCTION  sys.geometrytype
 SYSTEM FUNCTION  sys.get_type
@@ -524,9 +549,12 @@ SYSTEM FUNCTION  sys.left_shift
 SYSTEM FUNCTION  sys.left_shift_assign
 SYSTEM FUNCTION  sys.length
 SYSTEM FUNCTION  sys.levenshtein
+SYSTEM FUNCTION  sys.lidaranalyzetab
 SYSTEM FUNCTION  sys.lidarattach
+SYSTEM FUNCTION  sys.lidarchecktab
 SYSTEM FUNCTION  sys.lidarexport
 SYSTEM FUNCTION  sys.lidarload
+SYSTEM FUNCTION  sys.lidarunload
 SYSTEM FUNCTION  sys.like
 SYSTEM FUNCTION  sys.listdir
 SYSTEM FUNCTION  sys.listdirpat
@@ -900,6 +928,17 @@ create procedure sys.flush_log () extern
 create function fuse(one integer, two integer) returns bigint external name 
udf.fuse;
 create function fuse(one smallint, two smallint) returns integer external name 
udf.fuse;
 create function fuse(one tinyint, two tinyint) returns smallint external name 
udf.fuse;
+create procedure gadgetanalyzetab(status int, tname string) external name 
gadget.analyzetab;
+create procedure gadgetattach(fname string) external name gadget.attach;
+create procedure gadgetattachall(*) external name gadget.attachall;
+create procedure gadgetchecktab(tname string) external name gadget.checktab;
+create procedure gadgetlistdir(dname string) external name gadget.listdir;
+create procedure gadgetlistdirall(dname string) external name 
gadget.listdirall;
+create procedure gadgetlistdirpat(dname string, pattern string) external name 
gadget.listdirpattern;
+create procedure gadgetload(tname string) external name gadget.load;
+create procedure gadgetloadall(tname string) external name gadget.loadall;
+create function gadgetphkeyconvert(x real, y real, z real, basesize real, 
nbits int) returns bigint external name gadget.phkeyconvert;
+create function gadgetphkeyinvert(phkey bigint, basesize real, nbits int) 
returns table (x real, y real, z real, csize real) external name 
gadget.phkeyinvert;
 create function sys.generate_series(first bigint, last bigint) returns table 
(value bigint) external name generator.series;
 create function sys.generate_series(first bigint, last bigint, stepsize 
bigint) returns table (value bigint) external name generator.series;
 create function sys.generate_series(first decimal(10,2), last decimal(10,2), 
stepsize decimal(10,2)) returns table (value decimal(10,2)) external name 
generator.series;
@@ -942,9 +981,14 @@ create function isaurl(theurl url) retur
 create function sys.isauuid(s string) returns boolean external name 
uuid."isaUUID";
 create function "left_shift"(i1 inet, i2 inet) returns boolean external name 
inet."<<";
 create function "left_shift_assign"(i1 inet, i2 inet) returns boolean external 
name inet."<<=";
+create procedure lidaranalyzetab(status int, tname string) external name 
lidar.analyzetab;
 create procedure lidarattach(fname string) external name lidar.attach;
+create procedure lidarattach(fname string, tname string) external name 
lidar.attach;
+create procedure lidarattach(fname string, tname string, params string) 
external name lidar.attach;
+create procedure lidarchecktab(tname string) external name 

MonetDB: data-vaults - Merge with default

2017-07-28 Thread Panagiotis Koutsourakis
Changeset: 3801aa917e55 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3801aa917e55
Added Files:
buildtools/selinux/monetdb.fc
buildtools/selinux/monetdb.if
buildtools/selinux/monetdb.te
debian/libmonetdb-client9.install
debian/libmonetdb15.install
sql/backends/monet5/Tests/pyloader08.sql
sql/backends/monet5/Tests/pyloader08.stable.err
sql/backends/monet5/Tests/pyloader08.stable.out
sql/jdbc/tests/Tests/Bug_PrepStmtSetObject_CLOB_6349.SQL.bat
sql/jdbc/tests/Tests/Bug_PrepStmtSetObject_CLOB_6349.SQL.sh
sql/jdbc/tests/Tests/Bug_PrepStmtSetObject_CLOB_6349.stable.err
sql/jdbc/tests/Tests/Bug_PrepStmtSetObject_CLOB_6349.stable.out

sql/test/BugTracker-2017/Tests/extract_quarter_week_from_date.Bug-3831.sql

sql/test/BugTracker-2017/Tests/extract_quarter_week_from_date.Bug-3831.stable.err

sql/test/BugTracker-2017/Tests/extract_quarter_week_from_date.Bug-3831.stable.out
sql/test/BugTracker-2017/Tests/groupby_assertion.Bug-6338.sql
sql/test/BugTracker-2017/Tests/handle-values-subqueries.Bug-6336.sql

sql/test/BugTracker-2017/Tests/handle-values-subqueries.Bug-6336.stable.err

sql/test/BugTracker-2017/Tests/handle-values-subqueries.Bug-6336.stable.out
sql/test/BugTracker-2017/Tests/multiplevalues.Bug-6336.sql
sql/test/BugTracker-2017/Tests/name-interference.Bug-6348.sql
sql/test/BugTracker-2017/Tests/spurious_error.Bug-6344.sql
Removed Files:
debian/libmonetdb-client8.install
debian/libmonetdb13.install
Modified Files:
.hgignore
.hgtags
ChangeLog
ChangeLog-Archive
ChangeLog.Jul2017
MonetDB.spec
NT/monetdb_config.h.in
buildtools/ChangeLog-Archive
buildtools/Makefile.ag
clients/ChangeLog
clients/ChangeLog-Archive
clients/ChangeLog.Jul2017
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
clients/mapiclient/eventparser.c
clients/mapiclient/eventparser.h
clients/mapiclient/mhelp.c
clients/mapiclient/mnc.c
clients/mapiclient/stethoscope.c
clients/mapilib/mapi.c
common/stream/stream.c
common/stream/stream.h
common/utils/mutils.c
common/utils/prompt.c
configure.ag
debian/changelog
debian/control
debian/monetdb5-sql.install
gdk/ChangeLog-Archive
gdk/ChangeLog.Jul2017
gdk/gdk_bbp.c
gdk/gdk_posix.c
gdk/gdk_posix.h
gdk/gdk_storage.c
gdk/gdk_system.h
gdk/gdk_utils.c
gdk/gdk_value.c
libversions
monetdb5/ChangeLog-Archive
monetdb5/ChangeLog.Jul2017
monetdb5/extras/rapi/rapi.c
monetdb5/mal/mal.c
monetdb5/mal/mal_client.c
monetdb5/mal/mal_debugger.c
monetdb5/mal/mal_interpreter.c
monetdb5/mal/mal_linker.c
monetdb5/mal/mal_listing.c
monetdb5/mal/mal_private.h
monetdb5/mal/mal_profiler.c
monetdb5/mal/mal_readline.c
monetdb5/mal/mal_resolve.c
monetdb5/mal/mal_runtime.c
monetdb5/mal/mal_scenario.c
monetdb5/mal/mal_session.c
monetdb5/mal/mal_type.c
monetdb5/modules/atoms/blob.c
monetdb5/modules/atoms/mcurl.c
monetdb5/modules/atoms/mtime.c
monetdb5/modules/atoms/mtime.h
monetdb5/modules/atoms/mtime.mal
monetdb5/modules/kernel/batmmath.c
monetdb5/modules/kernel/mmath.c
monetdb5/modules/mal/Tests/inspect00.stable.out
monetdb5/modules/mal/calc.c
monetdb5/modules/mal/mal_mapi.c
monetdb5/modules/mal/remote.c
monetdb5/optimizer/opt_dataflow.c
monetdb5/optimizer/opt_garbageCollector.c
monetdb5/optimizer/opt_mergetable.c
monetdb5/optimizer/opt_pushselect.c
sql/ChangeLog-Archive
sql/ChangeLog.Jul2017
sql/NT/dump-restore.rst
sql/backends/monet5/Tests/pyloader01.stable.out
sql/backends/monet5/Tests/pyloader02.stable.out
sql/backends/monet5/Tests/pyloader03.stable.out
sql/backends/monet5/Tests/pyloader04.stable.out
sql/backends/monet5/Tests/pyloader05.stable.out
sql/backends/monet5/UDF/pyapi/connection.c
sql/backends/monet5/UDF/pyapi/connection.h
sql/backends/monet5/UDF/pyapi/pyapi.c
sql/backends/monet5/UDF/pyapi/pyapi_locatepython.bat
sql/backends/monet5/UDF/pyapi/pyheader.h
sql/backends/monet5/UDF/pyapi/pyloader.c
sql/backends/monet5/mal_backend.c
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql.h
sql/backends/monet5/sql_cat.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_scenario.c

MonetDB: default - Approve stethoscope help test

2017-07-28 Thread Panagiotis Koutsourakis
Changeset: 7f53e0ab6390 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7f53e0ab6390
Modified Files:
clients/mapiclient/Tests/stethoscope--help.stable.err
Branch: default
Log Message:

Approve stethoscope help test


diffs (13 lines):

diff --git a/clients/mapiclient/Tests/stethoscope--help.stable.err 
b/clients/mapiclient/Tests/stethoscope--help.stable.err
--- a/clients/mapiclient/Tests/stethoscope--help.stable.err
+++ b/clients/mapiclient/Tests/stethoscope--help.stable.err
@@ -16,7 +16,9 @@ stethoscope [options]
   -P | --password=
   -p | --port=
   -h | --host=
+  -c | --convert=
   -j | --json
+  -y | --pretty (implies --json)
   -o | --output=
   -b | --beat= in milliseconds (default 50)
   -D | --debug
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Jul2017 - fixes for bug 6353, ie handle NULL in rel_rea...

2017-07-28 Thread Niels Nes
Changeset: d876a2cc5823 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d876a2cc5823
Modified Files:
sql/server/rel_dump.c
Branch: Jul2017
Log Message:

fixes for bug 6353, ie handle NULL in rel_read better


diffs (15 lines):

diff --git a/sql/server/rel_dump.c b/sql/server/rel_dump.c
--- a/sql/server/rel_dump.c
+++ b/sql/server/rel_dump.c
@@ -857,7 +857,10 @@ exp_read(mvc *sql, sql_rel *lrel, sql_re
tname = b;
tpe = sql_bind_subtype(sql->sa, tname, 0, 0);
st = readString(r,pos);
-   exp = exp_atom(sql->sa, atom_general(sql->sa, tpe, st));
+   if (st && strcmp(st, "NULL") == 0)
+   exp = exp_atom(sql->sa, atom_general(sql->sa, tpe, 
NULL));
+   else
+   exp = exp_atom(sql->sa, atom_general(sql->sa, tpe, st));
skipWS(r, pos);
break;
default:
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: data-vaults - Merge with default

2017-07-28 Thread Panagiotis Koutsourakis
Changeset: cd1d450187fd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=cd1d450187fd
Modified Files:
clients/mapiclient/Tests/stethoscope--help.stable.err
Branch: data-vaults
Log Message:

Merge with default


diffs (13 lines):

diff --git a/clients/mapiclient/Tests/stethoscope--help.stable.err 
b/clients/mapiclient/Tests/stethoscope--help.stable.err
--- a/clients/mapiclient/Tests/stethoscope--help.stable.err
+++ b/clients/mapiclient/Tests/stethoscope--help.stable.err
@@ -16,7 +16,9 @@ stethoscope [options]
   -P | --password=
   -p | --port=
   -h | --host=
+  -c | --convert=
   -j | --json
+  -y | --pretty (implies --json)
   -o | --output=
   -b | --beat= in milliseconds (default 50)
   -D | --debug
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: trails - Added alter statements for streaming tables (w...

2017-07-28 Thread Pedro Ferreira
Changeset: aaf1a390321b for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=aaf1a390321b
Modified Files:
monetdb5/modules/mal/wlc.mal
monetdb5/optimizer/opt_prelude.c
monetdb5/optimizer/opt_prelude.h
sql/backends/monet5/Tests/cqstream00.sql
sql/backends/monet5/Tests/cqstream01.sql
sql/backends/monet5/Tests/cqstream03.sql
sql/backends/monet5/basket.mal
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql_basket.c
sql/backends/monet5/sql_basket.h
sql/backends/monet5/sql_cat.c
sql/backends/monet5/sql_cat.h
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sqlcatalog.mal
sql/backends/monet5/wlr.mal
sql/include/sql_catalog.h
sql/include/sql_relation.h
sql/server/rel_schema.c
sql/server/sql_mvc.c
sql/server/sql_mvc.h
sql/server/sql_parser.h
sql/server/sql_parser.y
sql/storage/sql_storage.h
sql/storage/store.c
Branch: trails
Log Message:

Added alter statements for streaming tables (window and stride), e.g ALTER 
STREAM TABLE qname SET WINDOW 99 That's everything required in the SQL layer 
for now.


diffs (truncated from 994 to 300 lines):

diff --git a/monetdb5/modules/mal/wlc.mal b/monetdb5/modules/mal/wlc.mal
--- a/monetdb5/modules/mal/wlc.mal
+++ b/monetdb5/modules/mal/wlc.mal
@@ -234,6 +234,10 @@ pattern alter_set_table( sname:str, tnme
 address WLCgeneric
 comment "Catalog operation alter_set_table";
 
+pattern alter_stream_table( sname:str, tnme:str, operation:int, value:int)
+address WLCgeneric
+comment "Catalog operation alter_stream_table";
+
 pattern transaction_release(chain:int,name:str):void
 address WLCgeneric
 comment "A transaction statement (type can be commit,release,rollback or 
start)";
diff --git a/monetdb5/optimizer/opt_prelude.c b/monetdb5/optimizer/opt_prelude.c
--- a/monetdb5/optimizer/opt_prelude.c
+++ b/monetdb5/optimizer/opt_prelude.c
@@ -40,6 +40,7 @@ str alter_triggerRef;
 str alter_add_tableRef;
 str alter_del_tableRef;
 str alter_set_tableRef;
+str alter_stream_tableRef;
 str attachRef;
 str avgRef;
 str batRef;
@@ -338,6 +339,7 @@ void optimizerInit(void)
alter_add_tableRef = putName("alter_add_table");
alter_del_tableRef = putName("alter_del_table");
alter_set_tableRef = putName("alter_set_table");
+   alter_stream_tableRef = putName("alter_stream_table");
avgRef = putName("avg");
arrayRef = putName("array");
batRef = putName("bat");
diff --git a/monetdb5/optimizer/opt_prelude.h b/monetdb5/optimizer/opt_prelude.h
--- a/monetdb5/optimizer/opt_prelude.h
+++ b/monetdb5/optimizer/opt_prelude.h
@@ -39,6 +39,7 @@ mal_export  str alter_triggerRef;
 mal_export  str alter_add_tableRef;
 mal_export  str alter_del_tableRef;
 mal_export  str alter_set_tableRef;
+mal_export  str alter_stream_tableRef;
 mal_export  str avgRef;
 mal_export  str arrayRef;
 mal_export  str batRef;
diff --git a/sql/backends/monet5/Tests/cqstream00.sql 
b/sql/backends/monet5/Tests/cqstream00.sql
--- a/sql/backends/monet5/Tests/cqstream00.sql
+++ b/sql/backends/monet5/Tests/cqstream00.sql
@@ -1,7 +1,7 @@
 -- Example of a stream splitter
-create stream table stmp2 (t timestamp, sensor integer, val decimal(8,2)) ;
 -- SET WINDOW 2 STRIDE 1
-call cquery."window"('sys','stmp2',1); -- consume 1 tuple and tumble 1 from 
this stream
+-- call cquery."window"('sys','stmp2',1); -- consume 1 tuple and tumble 1 from 
this stream
+create stream table stmp2 (t timestamp, sensor integer, val decimal(8,2)) set 
window 2;
 --select * from cquery.streams();
 
 insert into stmp2 values('2005-09-23 12:34:26.000',1,11.0);
diff --git a/sql/backends/monet5/Tests/cqstream01.sql 
b/sql/backends/monet5/Tests/cqstream01.sql
--- a/sql/backends/monet5/Tests/cqstream01.sql
+++ b/sql/backends/monet5/Tests/cqstream01.sql
@@ -12,7 +12,7 @@ create procedure cq_window()
 begin
-- The window ensures a maximal number of tuples to consider
-- Could be considered a property of the stream table
-call cquery."window"('sys','stmp2',2);
+   alter stream table 'sys'.'stmp2' set window 2;
 insert into result2 select * from stmp2 where val >12;
 end;
 
diff --git a/sql/backends/monet5/Tests/cqstream03.sql 
b/sql/backends/monet5/Tests/cqstream03.sql
--- a/sql/backends/monet5/Tests/cqstream03.sql
+++ b/sql/backends/monet5/Tests/cqstream03.sql
@@ -1,10 +1,9 @@
 -- Introduce firing conditions to the queries themselves.
-create stream table tmp13 (t timestamp, sensor integer, val decimal(8,2)) ;
-create table agenda13(i integer, msg string);
-
 -- The window determines the input size, it can not be overruled.
 -- which is overruled here by the hearbeat (order is important)
-call cquery."window"('sys','tmp13',2);
+--call cquery."window"('sys','tmp13',2);
+create stream table tmp13 (t timestamp, sensor integer, val decimal(8,2)) set 
window 2;
+create table agenda13(i 

MonetDB: Jul2017 - fixed problem in rel_read, now we also set th...

2017-07-28 Thread Niels Nes
Changeset: 46c8b0bfab74 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=46c8b0bfab74
Modified Files:
monetdb5/mal/mal_client.c
sql/server/rel_dump.c
sql/server/rel_optimizer.c
sql/server/rel_rel.c
Branch: Jul2017
Log Message:

fixed problem in rel_read, now we also set the type of
the projection columns in a set operator.

For the op_table operator we now handle the type 2, case (trigger
related function calls) everywhere in the code.


diffs (113 lines):

diff --git a/monetdb5/mal/mal_client.c b/monetdb5/mal/mal_client.c
--- a/monetdb5/mal/mal_client.c
+++ b/monetdb5/mal/mal_client.c
@@ -334,9 +334,6 @@ MCforkClient(Client father)
GDKfree(son->prompt);
son->prompt = GDKstrdup(father->prompt);
son->promptlength = strlen(father->prompt);
-   /* reuse the scopes wherever possible */
-   if (son->nspace == 0)
-   son->nspace = newModule(NULL, putName("child"));
}
return son;
 }
diff --git a/sql/server/rel_dump.c b/sql/server/rel_dump.c
--- a/sql/server/rel_dump.c
+++ b/sql/server/rel_dump.c
@@ -1081,6 +1081,22 @@ exp_read(mvc *sql, sql_rel *lrel, sql_re
return exp;
 }
 
+static int
+rel_set_types(mvc *sql, sql_rel *rel)
+{
+   list *iexps = rel_projections( sql, rel->l, NULL, 0, 1);
+   node *n, *m;
+
+   if (!iexps || list_length(iexps) >= list_length(rel->exps))
+   return -1;
+   for(n=iexps->h, m=rel->exps->h; n && m; n = n->next, m = m->next) {
+   sql_exp *e = m->data;
+
+   e->tpe = *exp_subtype( n->data );
+   }
+   return 0;
+}
+
 sql_rel*
 rel_read(mvc *sql, char *r, int *pos, list *refs)
 {
@@ -1387,9 +1403,13 @@ rel_read(mvc *sql, char *r, int *pos, li
(*pos)++;
skipWS(r, pos);
 
-   exps = read_exps(sql, lrel, rrel, NULL, r, pos, '[', 0);
+   exps = read_exps(sql, NULL, NULL, NULL, r, pos, '[', 0);
rel = rel_setop(sql->sa, lrel, rrel, j);
+   if (!exps)
+   return NULL;
rel->exps = exps;
+   if (rel_set_types(sql, rel) < 0)
+   return NULL;
set_processed(rel);
return rel;
case 'd':
diff --git a/sql/server/rel_optimizer.c b/sql/server/rel_optimizer.c
--- a/sql/server/rel_optimizer.c
+++ b/sql/server/rel_optimizer.c
@@ -5837,7 +5837,7 @@ rel_mark_used(mvc *sql, sql_rel *rel, in
case op_basetable:
case op_table:
 
-   if (rel->op == op_table && rel->l) {
+   if (rel->op == op_table && rel->l && rel->flag != 2) {
rel_used(rel);
if (rel->r)
exp_mark_used(rel->l, rel->r);
@@ -6086,7 +6086,7 @@ rel_dce_refs(mvc *sql, sql_rel *rel)
case op_groupby: 
case op_select: 
 
-   if (rel->l)
+   if (rel->l && (rel->op != op_table || rel->flag != 2))
l = rel_dce_refs(sql, rel->l);
 
case op_basetable:
@@ -6150,7 +6150,7 @@ rel_dce_down(mvc *sql, sql_rel *rel, lis
case op_basetable:
case op_table:
 
-   if (skip_proj && rel->l && rel->op == op_table)
+   if (skip_proj && rel->l && rel->op == op_table && rel->flag != 
2)
rel->l = rel_dce_down(sql, rel->l, refs, 0);
if (!skip_proj)
rel_dce_sub(sql, rel, refs);
@@ -8316,7 +8316,7 @@ rel_apply_rename(mvc *sql, sql_rel *rel)
case op_basetable:
return rel;
case op_table:
-   if (rel->l)
+   if (rel->l && rel->flag != 2)
rel->l = rel_apply_rename(sql, rel->l);
return rel;
case op_project:
@@ -8483,7 +8483,7 @@ rel_apply_rewrite(int *changes, mvc *sql
return l;
}
/* table function (TODO should output any input cols) */
-   if (r->op == op_table && r->l) {
+   if (r->op == op_table && r->l && rel->flag != 2) {
assert(0);
r->l = rel->l;
return r;
diff --git a/sql/server/rel_rel.c b/sql/server/rel_rel.c
--- a/sql/server/rel_rel.c
+++ b/sql/server/rel_rel.c
@@ -104,6 +104,7 @@ rel_copy( sql_allocator *sa, sql_rel *i 
rel->l = NULL;
rel->r = NULL;
rel->card = i->card;
+   rel->flag = i->flag;
 
switch(i->op) {
case op_basetable:
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


monetdb-java: default - Settings tag v2.26.

2017-07-28 Thread Sjoerd Mullender
Changeset: f79507689c5d for monetdb-java
URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=f79507689c5d
Modified Files:
.hgtags
Branch: default
Log Message:

Settings tag v2.26.


diffs (6 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -1,1 +1,2 @@
 80de05f07508fec938845b4a6e05f600bf0b48c0 v2.24
+c43c293f3d5841517cbe0d858108c4da5fb1ec0c v2.26
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


monetdb-java: default - Updated release numbers in preparation f...

2017-07-28 Thread Sjoerd Mullender
Changeset: c43c293f3d58 for monetdb-java
URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=c43c293f3d58
Modified Files:
build.properties
pom.xml
release.txt
Branch: default
Log Message:

Updated release numbers in preparation for a release.


diffs (36 lines):

diff --git a/build.properties b/build.properties
--- a/build.properties
+++ b/build.properties
@@ -19,7 +19,7 @@ MCL_MINOR=15
 # major release number
 JDBC_MAJOR=2
 # minor release number
-JDBC_MINOR=25
+JDBC_MINOR=26
 # an additional identifying string
 JDBC_VER_SUFFIX=Liberica
 # the default port to connect on, if no port given when using SQL
diff --git a/pom.xml b/pom.xml
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
 
monetdb
monetdb-jdbc
-   2.25
+   2.26
${project.groupId}:${project.artifactId}
MonetDB JDBC driver
https://www.monetdb.org
diff --git a/release.txt b/release.txt
--- a/release.txt
+++ b/release.txt
@@ -1,6 +1,6 @@
 RELEASE NOTES
-MonetDB JDBC driver version 2.25 (Liberica/MCL-1.15)
-Release date: 2017-03-30
+MonetDB JDBC driver version 2.26 (Liberica/MCL-1.15)
+Release date: 2017-07-28
 
 This JDBC driver is designed for use with MonetDB, a main-memory
 database.  For more information see https://www.monetdb.org/.
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


monetdb-java: default - Retroactively added tag v2.25 for change...

2017-07-28 Thread Sjoerd Mullender
Changeset: fd1f55e41bfb for monetdb-java
URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=fd1f55e41bfb
Modified Files:
.hgtags
Branch: default
Log Message:

Retroactively added tag v2.25 for changeset a6a2f4ee2d42.


diffs (7 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -1,2 +1,3 @@
 80de05f07508fec938845b4a6e05f600bf0b48c0 v2.24
 c43c293f3d5841517cbe0d858108c4da5fb1ec0c v2.26
+a6a2f4ee2d42d7e192f9d8d37f79ea99178d7f2c v2.25
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Jul2017 - fixed bug 6374, ie clear cached statistics on...

2017-07-28 Thread Niels Nes
Changeset: 6e732bac4683 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6e732bac4683
Modified Files:
sql/backends/monet5/sql_statistics.c
Branch: Jul2017
Log Message:

fixed bug 6374, ie clear cached statistics on analyze call


diffs (16 lines):

diff --git a/sql/backends/monet5/sql_statistics.c 
b/sql/backends/monet5/sql_statistics.c
--- a/sql/backends/monet5/sql_statistics.c
+++ b/sql/backends/monet5/sql_statistics.c
@@ -126,6 +126,12 @@ sql_analyze(Client cntxt, MalBlkPtr mb, 
if (col && strcmp(bc->name, 
col))
continue;
 
+   /* remove cached value */
+   if (c->min)
+   c->min = NULL;
+   if (c->max)
+   c->max = NULL;
+
if ((bn = 
store_funcs.bind_col(tr, c, RDONLY)) == NULL) {
/* XXX throw error 
instead? */
continue;
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Jul2017 - approved output (we don't support deletes on ...

2017-07-28 Thread Niels Nes
Changeset: 0f52db3d0ee0 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0f52db3d0ee0
Modified Files:

sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.err

sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.out
Branch: Jul2017
Log Message:

approved output (we don't support deletes on merge tables)


diffs (35 lines):

diff --git 
a/sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.err 
b/sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.err
--- a/sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.err
+++ b/sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.err
@@ -29,6 +29,15 @@ stderr of test 'delete_from_merge_table.
 # 17:32:34 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-19147" "--port=31497"
 # 17:32:34 >  
 
+MAPI  = (monetdb) /var/tmp/mtest-8392/.s.monetdb.34552
+QUERY = delete from tt where t = 1;
+ERROR = !DELETE FROM: cannot delete from merge table 'tt'
+MAPI  = (monetdb) /var/tmp/mtest-8392/.s.monetdb.34552
+QUERY = delete from tt where t = 2;
+ERROR = !DELETE FROM: cannot delete from merge table 'tt'
+MAPI  = (monetdb) /var/tmp/mtest-8392/.s.monetdb.34552
+QUERY = delete from tt;
+ERROR = !DELETE FROM: cannot delete from merge table 'tt'
 
 # 17:32:35 >  
 # 17:32:35 >  "Done."
diff --git 
a/sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.out 
b/sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.out
--- a/sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.out
+++ b/sql/test/BugTracker-2017/Tests/delete_from_merge_table.Bug-3743.stable.out
@@ -81,12 +81,6 @@ Ready.
 % 1 # length
 [ 1]
 [ 2]
-#delete from tt where t = 1;
-[ 1]
-#delete from tt where t = 2;
-[ 1]
-#delete from tt;
-[ 0]
 #drop table tt cascade;
 #drop table t1 cascade;
 #drop table t2 cascade;
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Test file fore test 6381

2017-07-28 Thread Martin Kersten
Changeset: cf4289d73bf1 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=cf4289d73bf1
Added Files:
sql/test/BugTracker-2017/Tests/parsererror.Bug-6381.sql
Branch: default
Log Message:

Test file fore test 6381


diffs (29 lines):

diff --git a/sql/test/BugTracker-2017/Tests/parsererror.Bug-6381.sql 
b/sql/test/BugTracker-2017/Tests/parsererror.Bug-6381.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2017/Tests/parsererror.Bug-6381.sql
@@ -0,0 +1,24 @@
+create function mycounter1()
+returns integer
+begin
+declare s int;
+while (true)
+do
+set s =1;
+end while;
+return s;
+END;
+select * from functions where name ='mycounter1';
+
+-- This semantic identical function is not recognized
+create function mycounter2()
+returns integer
+begin
+declare s int;
+while (select true)
+do
+set s =1;
+end while;
+return s;
+END;
+sql>select * from functions where name ='mycounter2';
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Jul2017 - add test for bug 6174

2017-07-28 Thread Niels Nes
Changeset: 182df737b80c for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=182df737b80c
Added Files:
sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.sql
sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.stable.err
sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.stable.out
Modified Files:
sql/test/BugTracker-2017/Tests/All
Branch: Jul2017
Log Message:

add test for bug 6174


diffs (179 lines):

diff --git a/sql/test/BugTracker-2017/Tests/All 
b/sql/test/BugTracker-2017/Tests/All
--- a/sql/test/BugTracker-2017/Tests/All
+++ b/sql/test/BugTracker-2017/Tests/All
@@ -61,4 +61,4 @@ statistics_nils_not_eq_zero.Bug-6331
 crash-select_after_MAL_error.Bug-6332
 handle-values-subqueries.Bug-6336
 spurious_errors.Bug-6344
-
+caching_stats_bug.6374
diff --git a/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.sql 
b/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.sql
@@ -0,0 +1,23 @@
+create table sub1 (i int);
+create table sub2 (i int);
+create merge table mt as select * from sub1 with no data;
+alter table mt add table sub1;
+alter table mt add table sub2;
+insert into sub1 values (1),(2);
+insert into sub2 values (11),(12);
+alter table sub1 set read only;
+alter table sub2 set read only;
+analyze sys.sub1;
+analyze sys.sub2;
+select count(*) from mt where i >= 5 and i < 100;
+plan select count(*) from mt where i >= 5 and i < 100;
+alter table sub1 set read write;
+insert into sub1 values (7),(8);
+alter table sub1 set read only;
+analyze sys.sub1;
+select count(*) from mt where i >= 5 and i < 100;
+plan select count(*) from mt where i >= 5 and i < 100;
+
+drop table mt;
+drop table sub1;
+drop table sub2;
diff --git a/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.stable.err 
b/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.stable.err
@@ -0,0 +1,34 @@
+stderr of test 'caching_stats_bug.6374` in directory 
'sql/test/BugTracker-2017` itself:
+
+
+# 21:27:18 >  
+# 21:27:18 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=34552" "--set" 
"mapi_usock=/var/tmp/mtest-8392/.s.monetdb.34552" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2017"
+# 21:27:18 >  
+
+# 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 = 34552
+# cmdline opt  mapi_usock = /var/tmp/mtest-8392/.s.monetdb.34552
+# cmdline opt  monet_prompt = 
+# cmdline opt  gdk_dbpath = 
/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2017
+# cmdline opt  gdk_debug = 536870922
+
+# 21:27:18 >  
+# 21:27:18 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-8392" "--port=34552"
+# 21:27:18 >  
+
+
+# 21:27:18 >  
+# 21:27:18 >  "Done."
+# 21:27:18 >  
+
diff --git a/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.stable.out 
b/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2017/Tests/caching_stats_bug.6374.stable.out
@@ -0,0 +1,98 @@
+stdout of test 'caching_stats_bug.6374` in directory 
'sql/test/BugTracker-2017` itself:
+
+
+# 21:27:18 >  
+# 21:27:18 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=34552" "--set" 
"mapi_usock=/var/tmp/mtest-8392/.s.monetdb.34552" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_BugTracker-2017"
+# 21:27:18 >  
+
+# MonetDB 5 server v11.27.4
+# This is an unreleased version
+# Serving database 'mTests_sql_test_BugTracker-2017', using 4 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 128bit integers
+# Found 7.331 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://localhost.nes.nl:34552/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-8392/.s.monetdb.34552
+# MonetDB/GIS module loaded
+# MonetDB/SQL module loaded
+
+Ready.
+
+# 21:27:18 >  
+# 21:27:18 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-8392" "--port=34552"
+# 21:27:18 >  
+

MonetDB: Jul2017 - fixed bug 6348, only rename non constant expr...

2017-07-28 Thread Niels Nes
Changeset: e9c19dd387e7 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e9c19dd387e7
Modified Files:
sql/backends/monet5/rel_bin.c
sql/server/rel_optimizer.c
sql/server/rel_updates.c
Branch: Jul2017
Log Message:

fixed bug 6348, only rename non constant expressions
fixed bug 6352, when pushing projects up, we should include subqueries.


diffs (37 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
@@ -271,6 +271,9 @@ value_list(backend *be, list *vals, stmt
sql_exp *e = n->data;
stmt *i = exp_bin(be, e, left, NULL, NULL, NULL, NULL, sel);
 
+   if (!i)
+   return NULL;
+
if (list_length(vals) == 1)
return i;

diff --git a/sql/server/rel_optimizer.c b/sql/server/rel_optimizer.c
--- a/sql/server/rel_optimizer.c
+++ b/sql/server/rel_optimizer.c
@@ -5500,7 +5500,7 @@ rel_push_project_up(int *changes, mvc *s
}
}
} else if (is_join(rel->op)) {
-   list *r_exps = rel_projections(sql, r, NULL, 1, 1);
+   list *r_exps = rel_projections(sql, r, NULL, 1, 2);
 
list_merge(exps, r_exps, (fdup)NULL);
}
diff --git a/sql/server/rel_updates.c b/sql/server/rel_updates.c
--- a/sql/server/rel_updates.c
+++ b/sql/server/rel_updates.c
@@ -498,7 +498,7 @@ insert_into(mvc *sql, dlist *qname, dlis
inner = 
rel_crossproduct(sql->sa, inner, r, op_join);
else if (r) 
inner = r;
-   if (inner && !ins->name) {
+   if (inner && !ins->name && 
!is_atom(ins->type)) {
exp_label(sql->sa, ins, 
++sql->label);
ins = 
exp_column(sql->sa, exp_relname(ins), exp_name(ins), exp_subtype(ins), 
ins->card, has_nil(ins), is_intern(ins));
}
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: Jul2017 - create nspace when needed

2017-07-28 Thread Niels Nes
Changeset: 1eb976e16c14 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1eb976e16c14
Modified Files:
monetdb5/mal/mal_session.c
Branch: Jul2017
Log Message:

create nspace when needed


diffs (13 lines):

diff --git a/monetdb5/mal/mal_session.c b/monetdb5/mal/mal_session.c
--- a/monetdb5/mal/mal_session.c
+++ b/monetdb5/mal/mal_session.c
@@ -125,6 +125,9 @@ MSinitClientPrg(Client cntxt, str mod, s
MSresetClientPrg(cntxt);
return;
}
+   if (cntxt->nspace == 0) {
+   cntxt->nspace = newModule(NULL, putName("user"));
+   }
cntxt->curprg = newFunction(putName("user"), putName(nme), 
FUNCTIONsymbol);
if( cntxt->curprg == 0){
GDKerror("MSinitClientPrg" "Failed to create function");
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list