MonetDB: default - Merge with Jun2016 branch.

2016-10-12 Thread Sjoerd Mullender
Changeset: 76ffd2312f54 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=76ffd2312f54
Modified Files:
gdk/gdk_atoms.c
gdk/gdk_join.c
gdk/gdk_select.c
gdk/gdk_utils.c
monetdb5/modules/atoms/json.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 1450 to 300 lines):

diff --git a/gdk/gdk_atoms.c b/gdk/gdk_atoms.c
--- a/gdk/gdk_atoms.c
+++ b/gdk/gdk_atoms.c
@@ -499,7 +499,8 @@ bitToStr(char **dst, int *len, const bit
 static bit *
 bitRead(bit *a, stream *s, size_t cnt)
 {
-   mnstr_read(s, (char *) a, 1, cnt);
+   if (mnstr_read(s, (char *) a, 1, cnt) < 0)
+   return NULL;
return mnstr_errnr(s) ? NULL : a;
 }
 
diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c
--- a/gdk/gdk_join.c
+++ b/gdk/gdk_join.c
@@ -136,9 +136,9 @@ joininitresults(BAT **r1p, BAT **r2p, BU
if (lcnt == 0 || rcnt == 0)
maxsize = nil_on_miss ? lcnt : 0;
else if (BUN_MAX / lcnt >= rcnt)
+   maxsize = lcnt * rcnt;
+   else
maxsize = BUN_MAX;
-   else
-   maxsize = lcnt * rcnt;
}
size = estimate == BUN_NONE ? lcnt : estimate;
if (size > maxsize)
diff --git a/gdk/gdk_select.c b/gdk/gdk_select.c
--- a/gdk/gdk_select.c
+++ b/gdk/gdk_select.c
@@ -374,7 +374,7 @@ do {
\
if (BATcapacity(bn) < maximum) {\
impsloop(CAND, TEST,\
 buninsfix(bn, dst, cnt, o, \
-  (BUN) ((dbl) cnt / (dbl) (p-r)   \
+  (BUN) ((dbl) cnt / (dbl) (p == r ? 1 : p - 
r)\
  * (dbl) (q-p) * 1.1 + 1024),  \
   BATcapacity(bn) + q - p, BUN_NONE)); \
} else {\
@@ -439,7 +439,7 @@ do {
\
v = src[o-off]; \
if (TEST) { \
buninsfix(bn, dst, cnt, o,  \
- (BUN) ((dbl) cnt / (dbl) (p-r) \
+ (BUN) ((dbl) cnt / (dbl) (p == r ? 1 
: p - r) \
 * (dbl) (q-p) * 1.1 + 1024), \
  BATcapacity(bn) + q - p, BUN_NONE); \
cnt++;  \
@@ -606,7 +606,7 @@ candscan_any (BAT *b, BAT *s, BAT *bn, c
v = BUNtail(bi,(BUN)(o-off));
if ((*cmp)(tl, v) == 0) {
buninsfix(bn, dst, cnt, o,
- (BUN) ((dbl) cnt / (dbl) (p-r)
+ (BUN) ((dbl) cnt / (dbl) (p == r ? 1 
: p - r)
 * (dbl) (q-p) * 1.1 + 1024),
  BATcapacity(bn) + q - p, BUN_NONE);
cnt++;
@@ -630,7 +630,7 @@ candscan_any (BAT *b, BAT *s, BAT *bn, c
  ((c = (*cmp)(th, v)) < 0 ||
   (!hi && c == 0) {
buninsfix(bn, dst, cnt, o,
- (BUN) ((dbl) cnt / (dbl) (p-r)
+ (BUN) ((dbl) cnt / (dbl) (p == r ? 1 
: p - r)
 * (dbl) (q-p) * 1.1 + 1024),
  BATcapacity(bn) + q - p, BUN_NONE);
cnt++;
@@ -654,7 +654,7 @@ candscan_any (BAT *b, BAT *s, BAT *bn, c
  (c = cmp(th, v)) > 0 ||
  (hi && c == 0 {
buninsfix(bn, dst, cnt, o,
- (BUN) ((dbl) cnt / (dbl) (p-r)
+ (BUN) ((dbl) cnt / (dbl) (p == r ? 1 
: p - r)
 * (dbl) (q-p) * 1.1 + 1024),
  BATcapacity(bn) + q - p, BUN_NONE);
cnt++;
@@ -694,7 +694,7 @@ fullscan_any(BAT *b, BAT *s, BAT *bn, co
v = BUNtail(bi,(BUN)(o-off));
if ((*cmp)(tl, v) == 0) {
buninsfix(bn, dst, cnt, o,
- (BUN) ((dbl) cnt / (dbl) (p-r)
+ (BUN) ((dbl) cnt / (dbl) (p == r ? 1 
: p - r)
  

MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-10-07 Thread Sjoerd Mullender
Changeset: 33927fb22e3b for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=33927fb22e3b
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files..

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-10-07 Thread Sjoerd Mullender
Changeset: 28e4a00953fd for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=28e4a00953fd
Modified Files:
.hgtags
MonetDB.spec
debian/changelog
libversions
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (71 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -637,3 +637,6 @@ 731a25ce40993c0d73ee4fcefb286b9a0a2e0981
 f16cdfed96bdc0f3324f8ced85a8b74c67f4dc9b Jun2016_11
 731a25ce40993c0d73ee4fcefb286b9a0a2e0981 Jun2016_SP2_release
 f16cdfed96bdc0f3324f8ced85a8b74c67f4dc9b Jun2016_SP2_release
+293b452cd1e5964d820f7d6c538e06507e575d88 Jun2016_13
+f16cdfed96bdc0f3324f8ced85a8b74c67f4dc9b Jun2016_SP2_release
+293b452cd1e5964d820f7d6c538e06507e575d88 Jun2016_SP2_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -899,6 +899,17 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Fri Oct 07 2016 Sjoerd Mullender  - 11.23.13-20161007
+- Rebuilt.
+- BZ#4058: Server crashes with a particular conditional query
+- BZ#4064: Assertion: column not found
+- BZ#4067: Relevant column name not printed when a CSV parsing error
+  occurs
+- BZ#4070: Extra condition in join predicate of explicit join produces
+  wrong MAL code
+- BZ#4074: Cannot use prepared statements when caching disabled
+- BZ#6065: CTE with row number and union fails within MAL
+
 * Wed Sep 28 2016 Sjoerd Mullender  - 11.23.11-20160928
 - Rebuilt.
 
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,17 @@
+monetdb (11.23.13) unstable; urgency=low
+
+  * Rebuilt.
+  * BZ#4058: Server crashes with a particular conditional query
+  * BZ#4064: Assertion: column not found
+  * BZ#4067: Relevant column name not printed when a CSV parsing error
+occurs
+  * BZ#4070: Extra condition in join predicate of explicit join produces
+wrong MAL code
+  * BZ#4074: Cannot use prepared statements when caching disabled
+  * BZ#6065: CTE with row number and union fails within MAL
+
+ -- Sjoerd Mullender   Fri, 07 Oct 2016 11:01:07 +0200
+
 monetdb (11.23.11) unstable; urgency=low
 
   * Rebuilt.
diff --git a/libversions b/libversions
--- a/libversions
+++ b/libversions
@@ -36,13 +36,13 @@
 
 # version of the GDK library (subdirectory gdk; also includes
 # common/options and common/utils)
-GDK_VERSION=13:5:0
+GDK_VERSION=13:6:0
 
 # version of the MAPI library (subdirectory clients/mapilib)
 MAPI_VERSION=8:1:0
 
 # version of the MONETDB5 library (subdirectory monetdb5, not including extras)
-MONETDB5_VERSION=21:5:0
+MONETDB5_VERSION=21:6:0
 
 # version of the STREAM library (subdirectory common/stream)
 STREAM_VERSION=8:3:0
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-10-07 Thread Sjoerd Mullender
Changeset: 9a261201c0e1 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9a261201c0e1
Modified Files:
clients/mapilib/Makefile.ag
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (12 lines):

diff --git a/clients/mapilib/Makefile.ag b/clients/mapilib/Makefile.ag
--- a/clients/mapilib/Makefile.ag
+++ b/clients/mapilib/Makefile.ag
@@ -7,7 +7,7 @@
 MTSAFE
 
 INCLUDES = ../../common/options ../../common/stream ../../common/utils \
-  $(MSGCONTROL_FLAGS)
+  $(MSGCONTROL_FLAGS) $(openssl_CFLAGS)
 
 lib_mapi = {
VERSION = $(MAPI_VERSION)
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-10-05 Thread Sjoerd Mullender
Changeset: 0eb5737c8b8f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0eb5737c8b8f
Modified Files:
gdk/gdk_imprints.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (12 lines):

diff --git a/gdk/gdk_imprints.c b/gdk/gdk_imprints.c
--- a/gdk/gdk_imprints.c
+++ b/gdk/gdk_imprints.c
@@ -157,7 +157,7 @@ imprints_create(BAT *b, void *inbins, BU
 }
 
 #ifdef NDEBUG
-#define CLRMEM()   ((void *) 0)
+#define CLRMEM()   ((void) 0)
 #else
 #define CLRMEM()   while (k < 64) h[k++] = 0
 #endif
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-10-05 Thread Sjoerd Mullender
Changeset: 593633197125 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=593633197125
Added Files:
sql/test/BugTracker-2016/Tests/name_conflict_in_union.Bug-6065.sql

sql/test/BugTracker-2016/Tests/name_conflict_in_union.Bug-6065.stable.err

sql/test/BugTracker-2016/Tests/name_conflict_in_union.Bug-6065.stable.out
Modified Files:
gdk/gdk_hash.c
gdk/gdk_heap.c
gdk/gdk_imprints.c
sql/test/BugTracker-2016/Tests/All
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (268 lines):

diff --git a/gdk/gdk_hash.c b/gdk/gdk_hash.c
--- a/gdk/gdk_hash.c
+++ b/gdk/gdk_hash.c
@@ -495,6 +495,10 @@ BAThash(BAT *b, BUN masksize)
}
break;
}
+#ifndef NDEBUG
+   /* clear unused part of Link array */
+   memset((char *) h->Link + q * h->width, 0, (h->lim - q) * 
h->width);
+#endif
hp->parentid = b->batCacheid;
 #ifdef PERSISTENTHASH
if (BBP_status(b->batCacheid) & BBPEXISTING) {
diff --git a/gdk/gdk_heap.c b/gdk/gdk_heap.c
--- a/gdk/gdk_heap.c
+++ b/gdk/gdk_heap.c
@@ -489,44 +489,53 @@ GDKupgradevarheap(BAT *b, var_t v, int c
 #endif
 
/* convert from back to front so that we can do it in-place */
-   switch (b->twidth) {
-   case 1:
-   switch (width) {
-   case 2:
+   switch (width) {
+   case 2:
+#ifndef NDEBUG
+   memset(ps, 0, b->theap.base + b->theap.size - (char *) ps);
+#endif
+   switch (b->twidth) {
+   case 1:
for (i = 0; i < n; i++)
*--ps = *--pc;
break;
-   case 4:
+   }
+   break;
+   case 4:
+#ifndef NDEBUG
+   memset(ps, 0, b->theap.base + b->theap.size - (char *) pi);
+#endif
+   switch (b->twidth) {
+   case 1:
for (i = 0; i < n; i++)
*--pi = *--pc + GDK_VAROFFSET;
break;
+   case 2:
+   for (i = 0; i < n; i++)
+   *--pi = *--ps + GDK_VAROFFSET;
+   break;
+   }
+   break;
 #if SIZEOF_VAR_T == 8
-   case 8:
+   case 8:
+#ifndef NDEBUG
+   memset(ps, 0, b->theap.base + b->theap.size - (char *) pv);
+#endif
+   switch (b->twidth) {
+   case 1:
for (i = 0; i < n; i++)
*--pv = *--pc + GDK_VAROFFSET;
break;
-#endif
-   }
-   break;
-   case 2:
-   switch (width) {
-   case 4:
-   for (i = 0; i < n; i++)
-   *--pi = *--ps + GDK_VAROFFSET;
-   break;
-#if SIZEOF_VAR_T == 8
-   case 8:
+   case 2:
for (i = 0; i < n; i++)
*--pv = *--ps + GDK_VAROFFSET;
break;
-#endif
+   case 4:
+   for (i = 0; i < n; i++)
+   *--pv = *--pi;
+   break;
}
break;
-#if SIZEOF_VAR_T == 8
-   case 4:
-   for (i = 0; i < n; i++)
-   *--pv = *--pi;
-   break;
 #endif
}
b->theap.free <<= shift - b->tshift;
diff --git a/gdk/gdk_imprints.c b/gdk/gdk_imprints.c
--- a/gdk/gdk_imprints.c
+++ b/gdk/gdk_imprints.c
@@ -117,6 +117,10 @@ imprints_create(BAT *b, void *inbins, BU
BUN *restrict cnt_bins = max_bins + 64;
int bin = 0;
dcnt = icnt = 0;
+#ifndef NDEBUG
+   memset(min_bins, 0, 64 * SIZEOF_BUN);
+   memset(max_bins, 0, 64 * SIZEOF_BUN);
+#endif
memset(cnt_bins, 0, 64 * SIZEOF_BUN);
 
switch (ATOMbasetype(b->ttype)) {
@@ -152,6 +156,12 @@ imprints_create(BAT *b, void *inbins, BU
*impcnt = icnt;
 }
 
+#ifdef NDEBUG
+#define CLRMEM()   ((void *) 0)
+#else
+#define CLRMEM()   while (k < 64) h[k++] = 0
+#endif
+
 #define FILL_HISTOGRAM(TYPE)   \
 do {   \
BUN k;  \
@@ -163,6 +173,7 @@ do {
\
h[k] = s[k];\
while (k < (BUN) imprints->bits)\
h[k++] = max;   \
+   CLRMEM();   \
} else {\
double y, ystep = (double) cnt / (64 

MonetDB: default - Merge with Jun2016 branch.

2016-09-28 Thread Sjoerd Mullender
Changeset: b6b7ff0e7672 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b6b7ff0e7672
Modified Files:
.hgtags
MonetDB.spec
buildtools/ChangeLog-Archive
buildtools/ChangeLog.Jun2016
debian/changelog
libversions
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (93 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -634,3 +634,6 @@ 4a05df3932a97865ac7e4037361723d5563490b3
 c8b06c670a635978640d742643c317b82c5f4b8c Jun2016_SP1_release
 731a25ce40993c0d73ee4fcefb286b9a0a2e0981 Jun2016_9
 731a25ce40993c0d73ee4fcefb286b9a0a2e0981 Jun2016_SP2_release
+f16cdfed96bdc0f3324f8ced85a8b74c67f4dc9b Jun2016_11
+731a25ce40993c0d73ee4fcefb286b9a0a2e0981 Jun2016_SP2_release
+f16cdfed96bdc0f3324f8ced85a8b74c67f4dc9b Jun2016_SP2_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -899,6 +899,13 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Wed Sep 28 2016 Sjoerd Mullender  - 11.23.11-20160928
+- Rebuilt.
+
+* Mon Sep 26 2016 Sjoerd Mullender  - 11.23.11-20160928
+- buildtools: We now use the CommonCrypto library instead of the OpenSSL 
library
+  on Darwin.
+
 * Mon Sep 19 2016 Sjoerd Mullender  - 11.23.9-20160919
 - Rebuilt.
 - BZ#3939: Assert failure on concurrent queries when querying sys.queue
diff --git a/buildtools/ChangeLog-Archive b/buildtools/ChangeLog-Archive
--- a/buildtools/ChangeLog-Archive
+++ b/buildtools/ChangeLog-Archive
@@ -1,6 +1,10 @@
 # DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY
 # This file contains past ChangeLog entries
 
+* Mon Sep 26 2016 Sjoerd Mullender  - 11.23.11-20160928
+- We now use the CommonCrypto library instead of the OpenSSL library
+  on Darwin.
+
 * Fri Feb 26 2016 Sjoerd Mullender  - 11.23.1-20160601
 - A new package MonetDB-lidar (Fedora) or libmonetdb5-server-lidar
   (Debian/Ubuntu) has been created to work with LiDAR data.
diff --git a/buildtools/ChangeLog.Jun2016 b/buildtools/ChangeLog.Jun2016
--- a/buildtools/ChangeLog.Jun2016
+++ b/buildtools/ChangeLog.Jun2016
@@ -1,7 +1,3 @@
 # ChangeLog file for buildtools
 # This file is updated with Maddlog
 
-* Mon Sep 26 2016 Sjoerd Mullender 
-- We now use the CommonCrypto library instead of the OpenSSL library
-  on Darwin.
-
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,16 @@
+monetdb (11.23.11) unstable; urgency=low
+
+  * Rebuilt.
+
+ -- Sjoerd Mullender   Wed, 28 Sep 2016 13:47:01 +0200
+
+monetdb (11.23.11) unstable; urgency=low
+
+  * buildtools: We now use the CommonCrypto library instead of the OpenSSL 
library
+on Darwin.
+
+ -- Sjoerd Mullender   Mon, 26 Sep 2016 13:47:01 +0200
+
 monetdb (11.23.9) unstable; urgency=low
 
   * Rebuilt.
diff --git a/libversions b/libversions
--- a/libversions
+++ b/libversions
@@ -36,13 +36,13 @@
 
 # version of the GDK library (subdirectory gdk; also includes
 # common/options and common/utils)
-GDK_VERSION=13:4:0
+GDK_VERSION=13:5:0
 
 # version of the MAPI library (subdirectory clients/mapilib)
-MAPI_VERSION=8:0:0
+MAPI_VERSION=8:1:0
 
 # version of the MONETDB5 library (subdirectory monetdb5, not including extras)
-MONETDB5_VERSION=21:4:0
+MONETDB5_VERSION=21:5:0
 
 # version of the STREAM library (subdirectory common/stream)
-STREAM_VERSION=8:2:0
+STREAM_VERSION=8:3:0
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-09-28 Thread Sjoerd Mullender
Changeset: 1bdc0ce285a8 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1bdc0ce285a8
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files.

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-09-28 Thread Sjoerd Mullender
Changeset: 8a96f219fba1 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8a96f219fba1
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files..

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-28 Thread Sjoerd Mullender
Changeset: f19bf95c6460 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f19bf95c6460
Added Files:
monetdb5/modules/mal/Tests/clients-hashes.stable.out.Darwin
Modified Files:
monetdb5/modules/mal/Tests/clients-hashes.malC
monetdb5/modules/mal/clients.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (178 lines):

diff --git a/monetdb5/modules/mal/Tests/clients-hashes.malC 
b/monetdb5/modules/mal/Tests/clients-hashes.malC
--- a/monetdb5/modules/mal/Tests/clients-hashes.malC
+++ b/monetdb5/modules/mal/Tests/clients-hashes.malC
@@ -1,14 +1,35 @@
 p := clients.md5sum("monetdb");
 io.print(p);
+catch MALException:str;
+io.print("clients.md5sum not available");
+exit MALException;
 p := clients.sha1sum("monetdb");
 io.print(p);
+catch MALException:str;
+io.print("clients.sha1sum not available");
+exit MALException;
 p := clients.ripemd160sum("monetdb");
 io.print(p);
+catch MALException:str;
+io.print("clients.ripemd160sum not available");
+exit MALException;
 p := clients.sha2sum("monetdb", 224);
 io.print(p);
+catch MALException:str;
+io.print("clients.sha2sum (224) not available");
+exit MALException;
 p := clients.sha2sum("monetdb", 256);
 io.print(p);
+catch MALException:str;
+io.print("clients.sha2sum (256) not available");
+exit MALException;
 p := clients.sha2sum("monetdb", 384);
 io.print(p);
+catch MALException:str;
+io.print("clients.sha2sum (384) not available");
+exit MALException;
 p := clients.sha2sum("monetdb", 512);
 io.print(p);
+catch MALException:str;
+io.print("clients.sha2sum (512) not available");
+exit MALException;
diff --git a/monetdb5/modules/mal/Tests/clients-hashes.stable.out.Darwin 
b/monetdb5/modules/mal/Tests/clients-hashes.stable.out.Darwin
new file mode 100644
--- /dev/null
+++ b/monetdb5/modules/mal/Tests/clients-hashes.stable.out.Darwin
@@ -0,0 +1,41 @@
+stdout of test 'clients-hashes` in directory 'monetdb5/modules/mal` itself:
+
+
+# 14:07:01 >  
+# 14:07:01 >   mserver5 
"--config=/export/scratch/stripe/fabian/monetdb/current/program-i86pc/etc/monetdb5.conf"
 --debug=10 --set gdk_nr_threads=0 --set 
"monet_mod_path=/export/scratch/stripe/fabian/monetdb/current/program-i86pc/lib/MonetDB5:/export/scratch/stripe/fabian/monetdb/current/program-i86pc/lib/MonetDB5/lib:/export/scratch/stripe/fabian/monetdb/current/program-i86pc/lib/MonetDB5/bin"
 --set 
"gdk_dbfarm=/export/scratch/stripe/fabian/monetdb/current/mtest-pegasus.ins.cwi.nl/five/dbfarm"
 --set 
"sql_logdir=/export/scratch/stripe/fabian/monetdb/current/mtest-pegasus.ins.cwi.nl/five/sqllog"
 --set 
"xquery_logdir=/export/scratch/stripe/fabian/monetdb/current/mtest-pegasus.ins.cwi.nl/five/xquerylog"
  --set mapi_open=true --set xrpc_open=true --set mapi_port=37637 --set 
xrpc_port=44162 --set monet_prompt= --trace  --dbname=mTests_src_modules_mal  
clients-hashes.mal
+# 14:07:01 >  
+
+# MonetDB server v5.11.0, based on kernel v1.29.0
+# Serving database 'mTests_src_modules_mal', using 1 thread
+# Compiled for x86_64-pc-solaris2.11/64bit with 64bit OIDs dynamically linked
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2015 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://vienna.da.cwi.nl:35410/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-26774/.s.monetdb.35410
+# MonetDB/GIS module loaded
+# Start processing logs sql/sql_logs version 52200
+# Start reading the write-ahead log 'sql_logs/sql/log.4'
+# Finished reading the write-ahead log 'sql_logs/sql/log.4'
+# Finished processing logs sql/sql_logs
+# MonetDB/SQL module loaded
+# MonetDB/R   module loaded
+
+Ready.
+
+# 09:46:40 >  
+# 09:46:40 >  "mclient" "-lmal" "-ftest" "-Eutf-8" 
"--host=/var/tmp/mtest-26774" "--port=35410"
+# 09:46:40 >  
+
+[ "4fe67471e97aae17f10bf200ccadc4e4" ]
+[ "4751fc28d9a64a043865922548ee7d623743bcad" ]
+[ "clients.ripemd160sum not available" ]
+[ "ba11e4ad9ac60f775cf1f133a81faf32241d9c136e4d3b193bdbbf1e" ]
+[ "38e38a32871128f6c9b84c72c4b6c473e53ab084bffb37c094310045716a8247" ]
+[ 
"d494cbc91a0d3315210af1c2d14e3758ba7d6716393a234cf9f29d8de077110c9009dd840f9c93a5d350b739253f6bd9"
 ]
+[ 
"a73f1d86383446438ac64f56e15ada38b41fbb18f029d2181723aeb2acac6a831f60e5fdbd64ac2c8c70e035dd44cbbe3b45565ef2d58feb2821a2078c7fad35"
 ]
+
+# 14:07:02 >  
+# 14:07:02 >  Done.
+# 14:07:02 >  
+
diff --git a/monetdb5/modules/mal/clients.c b/monetdb5/modules/mal/clients.c
--- a/monetdb5/modules/mal/clients.c
+++ b/monetdb5/modules/mal/clients.c
@@ -350,41 +350,67 @@ CLTwakeup(void *ret, int *id)
 }
 
 str CLTmd5sum(str *ret, str *pw) {
+#ifdef HAVE_MD5_UPDATE
char *mret = mcrypt_MD5Sum(*pw, strlen(*pw));
*ret = GDKstrdup(mret);
free(mret);
return MAL_SUCCEED;
+#else
+   (void) ret;
+   (void) pw;
+   throw(MAL, "clients.md5sum", PROGRAM_NYI);
+#endif
 }
 
 str CLTsha1sum(str *ret, str *pw) {
+#ifdef 

MonetDB: default - Merge with Jun2016 branch.

2016-09-28 Thread Sjoerd Mullender
Changeset: f940a809d0d3 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f940a809d0d3
Modified Files:
NT/monetdb_config.h.in
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
gdk/libbat.rc
monetdb5/mal/Makefile.ag
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (81 lines):

diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -345,9 +345,6 @@
 /* Define to 1 if you have the `mallopt' function. */
 /* #undef HAVE_MALLOPT */
 
-/* Define to 1 if you have the `MD5_Update' function. */
-#define HAVE_MD5_UPDATE 1
-
 /* Define to 1 if you have the  header file. */
 #define HAVE_MEMORY_H 1
 
@@ -430,9 +427,6 @@
 /* Define if the compiler supports the restrict keyword */
 /* #undef HAVE_RESTRICT */
 
-/* Define to 1 if you have the `RIPEMD160_Update' function. */
-#define HAVE_RIPEMD160_UPDATE 1
-
 /* Define to 1 if you have the `round' function. */
 #if !defined(_MSC_VER) || _MSC_VER > 1600
 #define HAVE_ROUND 1
@@ -459,6 +453,13 @@
 /* Define to 1 if you have the `setsid' function. */
 /* #undef HAVE_SETSID */
 
+#ifdef HAVE_OPENSSL
+/* Define to 1 if you have the `MD5_Update' function. */
+#define HAVE_MD5_UPDATE 1
+
+/* Define to 1 if you have the `RIPEMD160_Update' function. */
+#define HAVE_RIPEMD160_UPDATE 1
+
 /* Define to 1 if you have the `SHA1_Update' function. */
 #define HAVE_SHA1_UPDATE 1
 
@@ -473,6 +474,7 @@
 
 /* Define to 1 if you have the `SHA512_Update' function. */
 #define HAVE_SHA512_UPDATE 1
+#endif
 
 /* Define to 1 if you have the `shutdown' function. */
 #define HAVE_SHUTDOWN 1
diff --git a/clients/mapilib/mapi.rc b/clients/mapilib/mapi.rc
--- a/clients/mapilib/mapi.rc
+++ b/clients/mapilib/mapi.rc
@@ -23,7 +23,7 @@ BEGIN
   // Maintained via vertoo. Please don't modify by hand!
   // Contact monetdb-develop...@lists.sourceforge.net for details and/or 
assistance.
   VALUE "InternalName", "Mapi\0"
-  VALUE "LegalCopyright", "Copyright © MonetDB B.V. 2008-2015\0"
+  VALUE "LegalCopyright", "Copyright © MonetDB B.V. 2008-2016\0"
   VALUE "LegalTrademarks", "\0"
   VALUE "OriginalFilename", "Mapi.dll\0"
   VALUE "PrivateBuild", "\0"
diff --git a/clients/odbc/driver/driver.rc b/clients/odbc/driver/driver.rc
--- a/clients/odbc/driver/driver.rc
+++ b/clients/odbc/driver/driver.rc
@@ -23,7 +23,7 @@ BEGIN
   // Maintained via vertoo. Please don't modify by hand!
   // Contact monetdb-develop...@lists.sourceforge.net for details and/or 
assistance.
   VALUE "InternalName", "libMonetODBC\0"
-  VALUE "LegalCopyright", "Copyright © MonetDB B.V. 2008-2015\0"
+  VALUE "LegalCopyright", "Copyright © MonetDB B.V. 2008-2016\0"
   VALUE "LegalTrademarks", "\0"
   VALUE "OriginalFilename", "libMonetODBC.dll\0"
   VALUE "PrivateBuild", "\0"
diff --git a/gdk/libbat.rc b/gdk/libbat.rc
--- a/gdk/libbat.rc
+++ b/gdk/libbat.rc
@@ -23,7 +23,7 @@ BEGIN
   // Maintained via vertoo. Please don't modify by hand!
   // Contact monetdb-develop...@lists.sourceforge.net for details and/or 
assistance.
   VALUE "InternalName", "libbat\0"
-  VALUE "LegalCopyright", "Copyright © MonetDB B.V. 2008-2015\0"
+  VALUE "LegalCopyright", "Copyright © MonetDB B.V. 2008-2016\0"
   VALUE "LegalTrademarks", "\0"
   VALUE "OriginalFilename", "libbat.dll\0"
   VALUE "PrivateBuild", "\0"
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-27 Thread Sjoerd Mullender
Changeset: f7256d223b90 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f7256d223b90
Modified Files:
common/utils/mcrypt.c
common/utils/mcrypt.h
monetdb5/mal/mal_authorize.c
monetdb5/mal/mal_debugger.c
monetdb5/mal/mal_session.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (11 lines):

diff --git a/common/utils/mcrypt.h b/common/utils/mcrypt.h
--- a/common/utils/mcrypt.h
+++ b/common/utils/mcrypt.h
@@ -19,7 +19,4 @@ char *mcrypt_SHA512Sum(const char *strin
 char *mcrypt_RIPEMD160Sum(const char *string, size_t len);
 char *mcrypt_BackendSum(const char *string, size_t len);
 char *mcrypt_hashPassword(const char *algo, const char *password, const char 
*challenge);
-#ifdef HAVE_EMBEDDED
-char* mcrypt_sum_fail(const char *string, size_t len);
 #endif
-#endif
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-27 Thread Sjoerd Mullender
Changeset: c7f197b16264 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c7f197b16264
Modified Files:
common/utils/mcrypt.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (22 lines):

diff --git a/common/utils/mcrypt.c b/common/utils/mcrypt.c
--- a/common/utils/mcrypt.c
+++ b/common/utils/mcrypt.c
@@ -44,7 +44,7 @@ mcrypt_getHashAlgorithms(void)
 * desire.
 */
 #if !defined(HAVE_EMBEDDED) && (defined(HAVE_RIPEMD160_UPDATE) || 
defined(HAVE_SHA256_UPDATE) || defined(HAVE_SHA1_UPDATE) || 
defined(HAVE_MD5_UPDATE))
-   return strdup(
+   const char *algorithms =
 #ifdef HAVE_RIPEMD160_UPDATE
"RIPEMD160"
 #endif
@@ -66,7 +66,8 @@ mcrypt_getHashAlgorithms(void)
 #endif
"MD5"
 #endif
-   );
+   ;
+   return strdup(algorithms);
 #else
fprintf(stderr, "There are no digest functions available.\n");
exit(1);
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-26 Thread Sjoerd Mullender
Changeset: 570a2bbcecc8 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=570a2bbcecc8
Modified Files:
NT/monetdb_config.h.in
buildtools/ChangeLog.Jun2016
clients/mapilib/mapi.c
common/utils/mcrypt.c
common/utils/muuid.c
configure.ag
monetdb5/mal/mal_authorize.c
monetdb5/modules/atoms/uuid.c
monetdb5/modules/mal/mal_mapi.c
tools/merovingian/utils/control.c
tools/merovingian/utils/utils.c
tools/mserver/monet_version.c.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 1061 to 300 lines):

diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -345,8 +345,8 @@
 /* Define to 1 if you have the `mallopt' function. */
 /* #undef HAVE_MALLOPT */
 
-/* Define to 1 if you have the `MD5' function. */
-#define HAVE_MD5 1
+/* Define to 1 if you have the `MD5_Update' function. */
+#define HAVE_MD5_UPDATE 1
 
 /* Define to 1 if you have the  header file. */
 #define HAVE_MEMORY_H 1
@@ -430,8 +430,8 @@
 /* Define if the compiler supports the restrict keyword */
 /* #undef HAVE_RESTRICT */
 
-/* Define to 1 if you have the `RIPEMD160' function. */
-#define HAVE_RIPEMD160 1
+/* Define to 1 if you have the `RIPEMD160_Update' function. */
+#define HAVE_RIPEMD160_UPDATE 1
 
 /* Define to 1 if you have the `round' function. */
 #if !defined(_MSC_VER) || _MSC_VER > 1600
@@ -459,20 +459,20 @@
 /* Define to 1 if you have the `setsid' function. */
 /* #undef HAVE_SETSID */
 
-/* Define to 1 if you have the `SHA1' function. */
-#define HAVE_SHA1 1
+/* Define to 1 if you have the `SHA1_Update' function. */
+#define HAVE_SHA1_UPDATE 1
 
-/* Define to 1 if you have the `SHA224' function. */
-#define HAVE_SHA224 1
+/* Define to 1 if you have the `SHA224_Update' function. */
+#define HAVE_SHA224_UPDATE 1
 
-/* Define to 1 if you have the `SHA256' function. */
-#define HAVE_SHA256 1
+/* Define to 1 if you have the `SHA256_Update' function. */
+#define HAVE_SHA256_UPDATE 1
 
-/* Define to 1 if you have the `SHA384' function. */
-#define HAVE_SHA384 1
+/* Define to 1 if you have the `SHA384_Update' function. */
+#define HAVE_SHA384_UPDATE 1
 
-/* Define to 1 if you have the `SHA512' function. */
-#define HAVE_SHA512 1
+/* Define to 1 if you have the `SHA512_Update' function. */
+#define HAVE_SHA512_UPDATE 1
 
 /* Define to 1 if you have the `shutdown' function. */
 #define HAVE_SHUTDOWN 1
diff --git a/buildtools/ChangeLog.Jun2016 b/buildtools/ChangeLog.Jun2016
--- a/buildtools/ChangeLog.Jun2016
+++ b/buildtools/ChangeLog.Jun2016
@@ -1,3 +1,7 @@
 # ChangeLog file for buildtools
 # This file is updated with Maddlog
 
+* Mon Sep 26 2016 Sjoerd Mullender 
+- We now use the CommonCrypto library instead of the OpenSSL library
+  on Darwin.
+
diff --git a/clients/mapilib/mapi.c b/clients/mapilib/mapi.c
--- a/clients/mapilib/mapi.c
+++ b/clients/mapilib/mapi.c
@@ -2587,9 +2587,15 @@ mapi_reconnect(Mapi mid)
char *byteo = NULL;
char *serverhash = NULL;
char *algsv[] = {
+#ifdef HAVE_RIPEMD160_UPDATE
"RIPEMD160",
+#endif
+#ifdef HAVE_SHA1_UPDATE
"SHA1",
+#endif
+#ifdef HAVE_MD5_UPDATE
"MD5",
+#endif
NULL
};
char **algs = algsv;
@@ -2643,28 +2649,49 @@ mapi_reconnect(Mapi mid)
/* hash password, if not already */
if (mid->password[0] != '\1') {
char *pwdhash = NULL;
+#ifdef HAVE_RIPEMD160_UPDATE
if (strcmp(serverhash, "RIPEMD160") == 0) {
pwdhash = mcrypt_RIPEMD160Sum(mid->password,
strlen(mid->password));
-   } else if (strcmp(serverhash, "SHA512") == 0) {
+   } else
+#endif
+#ifdef HAVE_SHA512_UPDATE
+   if (strcmp(serverhash, "SHA512") == 0) {
pwdhash = mcrypt_SHA512Sum(mid->password,
strlen(mid->password));
-   } else if (strcmp(serverhash, "SHA384") == 0) {
+   } else
+#endif
+#ifdef HAVE_SHA384_UPDATE
+   if (strcmp(serverhash, "SHA384") == 0) {
pwdhash = mcrypt_SHA384Sum(mid->password,
strlen(mid->password));
-   } else if (strcmp(serverhash, "SHA256") == 0) {
+   } else
+#endif
+#ifdef HAVE_SHA256_UPDATE
+   if (strcmp(serverhash, "SHA256") == 0) {
pwdhash = mcrypt_SHA256Sum(mid->password,
strlen(mid->password));
-   } else if (strcmp(serverhash, 

MonetDB: default - Merge with Jun2016 branch.

2016-09-26 Thread Sjoerd Mullender
Changeset: 9c4d86d2983d for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9c4d86d2983d
Modified Files:
clients/mapilib/mapi.c
configure.ag
sql/server/rel_dump.c
sql/server/rel_optimizer.c
sql/server/rel_select.c
sql/test/BugTracker-2016/Tests/concat_2_integers.Bug-4058.stable.out
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (135 lines):

diff --git a/clients/mapilib/mapi.c b/clients/mapilib/mapi.c
--- a/clients/mapilib/mapi.c
+++ b/clients/mapilib/mapi.c
@@ -2175,6 +2175,8 @@ mapi_destroy(Mapi mid)
free(mid->password);
if (mid->language)
free(mid->language);
+   if (mid->motd)
+   free(mid->motd);
 
if (mid->database)
free(mid->database);
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
@@ -72,6 +72,7 @@ exp_print(mvc *sql, stream *fout, sql_ex
(void)sql;
if (!e)
return;
+   //mnstr_printf(fout, " %p ", e);
switch(e->type) {
case e_psm: {
if (e->flag & PSM_SET) {
@@ -319,6 +320,8 @@ rel_print_(mvc *sql, stream  *fout, sql_
mnstr_printf(fout, "\n%cREF %d (%d)", decorate?'=':' ', nr, 
cnt);
}
 
+
+   //mnstr_printf(fout, " %p ", rel);
switch (rel->op) {
case op_basetable: {
sql_table *t = rel->l;
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
@@ -5545,6 +5545,8 @@ exps_used(list *l)
 static void
 rel_used(sql_rel *rel)
 {
+   if (!rel)
+   return;
if (is_join(rel->op) || is_set(rel->op) || is_semi(rel->op)) {
if (rel->l) 
rel_used(rel->l);
@@ -5556,7 +5558,7 @@ rel_used(sql_rel *rel)
} else if (rel->op == op_table && rel->r) {
exp_used(rel->r);
}
-   if (rel->exps) {
+   if (rel && rel->exps) {
exps_used(rel->exps);
if (rel->r && (rel->op == op_project || rel->op  == op_groupby))
exps_used(rel->r);
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
@@ -2360,6 +2360,7 @@ rel_logical_exp(mvc *sql, sql_rel *rel, 
list *vals = NULL, *ll = sa_list(sql->sa);
int correlated = 0;
int l_is_value = 1, r_is_rel = 0;
+   list *pexps = NULL;
 
/* complex case */
if (dl->h->type == type_list) { /* (a,b..) in (.. ) */
@@ -2389,12 +2390,18 @@ rel_logical_exp(mvc *sql, sql_rel *rel, 
/* first remove the NULLs */
if (sc->token == SQL_NOT_IN &&
l->card != CARD_ATOM && has_nil(l)) {
+   sql_exp *ol;
+
+   rel = rel_project(sql->sa, rel, 
rel_projections(sql, rel, NULL, 1, 1));
+   pexps = rel_projections(sql, rel, NULL, 1, 1);
+   l = exp_label(sql->sa, l, ++sql->label);
+   append(rel->exps, l);
+   ol = l;
+   l = exp_column(sql->sa, exp_relname(ol), 
exp_name(ol), exp_subtype(ol), ol->card, has_nil(ol), is_intern(ol));
e = rel_unop_(sql, l, NULL, "isnull", 
card_value);
e = exp_compare(sql->sa, e, 
exp_atom_bool(sql->sa, 0), cmp_equal);
-   if (!is_select(rel->op) || rel_is_ref(rel))
-   left = rel = rel_select(sql->sa, rel, 
e);
-   else
-   rel_select_add_exp(sql->sa, rel, e);
+   left = rel = rel_select(sql->sa, rel, e);
+   l = exp_column(sql->sa, exp_relname(ol), 
exp_name(ol), exp_subtype(ol), ol->card, has_nil(ol), is_intern(ol));
}
 
append(ll, l);
@@ -2440,7 +2447,10 @@ rel_logical_exp(mvc *sql, sql_rel *rel, 
list_append(nvals, r);
}
e = exp_in(sql->sa, l, nvals, 
sc->token==SQL_NOT_IN?cmp_notin:cmp_in);
-   return rel_select(sql->sa, rel, e);
+   rel = rel_select(sql->sa, rel, e);
+   if (pexps) 
+   rel = rel_project(sql->sa, rel, pexps);
+   return rel;
} else { /* complex case */
vals = new_exp_list(sql->sa);
n = dl->h->next;
@@ -2474,12 +2484,6 @@ 

MonetDB: default - Merge with Jun2016 branch.

2016-09-23 Thread Sjoerd Mullender
Changeset: 64bf074b6f46 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=64bf074b6f46
Modified Files:
configure.ag
sql/test/emptydb-upgrade-chain/Tests/check.stable.out
sql/test/emptydb-upgrade/Tests/check.stable.out
sql/test/emptydb/Tests/All
sql/test/emptydb/Tests/check.stable.out
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (12 lines):

diff --git a/sql/test/emptydb/Tests/All b/sql/test/emptydb/Tests/All
--- a/sql/test/emptydb/Tests/All
+++ b/sql/test/emptydb/Tests/All
@@ -1,5 +1,5 @@
 HAVE_GEOM?load
-RELEASERUN&!HAVE_HGE&!HAVE_NETCDF&!HAVE_FITS_GEOM&!HAVE_GSL&!HAVE_SAMTOOLS&!BITS32?package
-RELEASERUN_HGE&!HAVE_NETCDF&!HAVE_FITS_GEOM&!HAVE_GSL&!HAVE_SAMTOOLS&!BITS32?package-hge
+RELEASERUN&!HAVE_HGE&!HAVE_LIDAR&!HAVE_NETCDF&!HAVE_FITS_GEOM&!HAVE_GSL&!HAVE_SAMTOOLS&!BITS32?package
+RELEASERUN_HGE&!HAVE_LIDAR&!HAVE_NETCDF&!HAVE_FITS_GEOM&!HAVE_GSL&!HAVE_SAMTOOLS&!BITS32?package-hge
 HAVE_GEOM?dump
-!HAVE_NETCDF&!HAVE_FITS_GEOM&!HAVE_GSL_PCRE&!HAVE_SAMTOOLS&!BITS32?check
+!HAVE_LIDAR&!HAVE_NETCDF&!HAVE_FITS_GEOM&!HAVE_GSL_PCRE&!HAVE_SAMTOOLS&!BITS32?check
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-20 Thread Sjoerd Mullender
Changeset: 5ff4e5d5ec49 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5ff4e5d5ec49
Modified Files:
MonetDB.spec
debian/control
gdk/gdk_batop.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (30 lines):

diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -1146,6 +1146,8 @@ BATsort(BAT **sorted, BAT **order, BAT *
assert(g->ttype == TYPE_oid);
grps = (oid *) Tloc(g, 0);
prev = grps[0];
+   if (BATmaterialize(bn) != GDK_SUCCEED)
+   goto error;
for (r = 0, p = 1, q = BATcount(g); p < q; p++) {
if (grps[p] != prev) {
/* sub sort [r,p) */
@@ -1179,11 +1181,12 @@ BATsort(BAT **sorted, BAT **order, BAT *
b->tsorted = b->trevsorted = 1;
}
if (!(reverse ? bn->trevsorted : bn->tsorted) &&
-   do_sort(Tloc(bn, 0),
-   on ? Tloc(on, 0) : NULL,
-   bn->tvheap ? bn->tvheap->base : NULL,
-   BATcount(bn), Tsize(bn), on ? Tsize(on) : 0,
-   bn->ttype, reverse, stable) != GDK_SUCCEED)
+   (BATmaterialize(bn) != GDK_SUCCEED ||
+do_sort(Tloc(bn, 0),
+on ? Tloc(on, 0) : NULL,
+bn->tvheap ? bn->tvheap->base : NULL,
+BATcount(bn), Tsize(bn), on ? Tsize(on) : 0,
+bn->ttype, reverse, stable) != GDK_SUCCEED))
goto error;
bn->tsorted = !reverse;
bn->trevsorted = reverse;
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-20 Thread Sjoerd Mullender
Changeset: a3a69793cce4 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a3a69793cce4
Modified Files:
testing/Mtest.py.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (21 lines):

diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -3713,6 +3713,17 @@ def main(argv) :
 CONDITIONALS['HAVE_PERL'] = '#'
 else:
 print('Perl available, but MonetDB driver not available')
+if CONDITIONALS['HAVE_LIBR'] and CheckExec('R'):
+proc = process.Popen(['R', '--slave', '--no-save', '--no-restore',
+  '-e', 'print(Sys.getenv("R_LIBS_USER"))'],
+ stdout = process.PIPE, stderr = process.PIPE,
+ universal_newlines = True)
+r_out, r_err = proc.communicate()
+res = re.search(r'\[\d+\] "(?P.*)"', r_out)
+if res is not None:
+rdir = os.path.expanduser(res.group('dir'))
+if not os.path.exists(rdir):
+os.makedirs(rdir)
 if CheckExec('php'):
 proc = process.Popen(['php', '-r', "require 
'monetdb/php_monetdb.php';"],
  stdout = process.PIPE, stderr = process.PIPE,
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-09-19 Thread Sjoerd Mullender
Changeset: 4d2d4532228a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4d2d4532228a
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files..

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-19 Thread Sjoerd Mullender
Changeset: 7e13ceb03f09 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7e13ceb03f09
Modified Files:
.hgtags
MonetDB.spec
debian/changelog
libversions
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (92 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -632,3 +632,5 @@ 4a05df3932a97865ac7e4037361723d5563490b3
 c8b06c670a635978640d742643c317b82c5f4b8c Jun2016_7
 4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_SP1_release
 c8b06c670a635978640d742643c317b82c5f4b8c Jun2016_SP1_release
+731a25ce40993c0d73ee4fcefb286b9a0a2e0981 Jun2016_9
+731a25ce40993c0d73ee4fcefb286b9a0a2e0981 Jun2016_SP2_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -114,7 +114,7 @@ Vendor: MonetDB BV 
 Group: Applications/Databases
 License: MPLv2.0
 URL: http://www.monetdb.org/
-Source: 
http://dev.monetdb.org/downloads/sources/Jun2016-SP1/%{name}-%{version}.tar.bz2
+Source: 
http://dev.monetdb.org/downloads/sources/Jun2016-SP2/%{name}-%{version}.tar.bz2
 
 # we need systemd for the _unitdir macro to exist
 %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
@@ -936,6 +936,23 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Mon Sep 19 2016 Sjoerd Mullender  - 11.23.9-20160919
+- Rebuilt.
+- BZ#3939: Assert failure on concurrent queries when querying sys.queue
+- BZ#4019: Casting a timestamp from a string results in NULL
+- BZ#4025: expressions in the WHERE clause that evaluates incorrectly
+- BZ#4038: After upgrade from 11.21.19, jdbc couldn't list tables for
+  non sys users
+- BZ#4044: Server crash when trying to delete a table has been added to
+  a merge table with "cascade" at the end
+- BZ#4049: Wrong results for queries with "OR" and "LEFT JOIN"
+- BZ#4052: Infinite loop in rel_select
+- BZ#4054: copy into file wrongly exports functions
+- BZ#4059: Geom functions only visible by user monetdb
+- BZ#4060: BAT leak in some aggregate queries
+- BZ#4062: Error: SELECT: no such binary operator 'like(varchar,varchar)'
+  when used in query running in other schema than sys
+
 * Wed Jul 13 2016 Sjoerd Mullender  - 11.23.7-20160713
 - Rebuilt.
 - BZ#4014: KILL signal
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,23 @@
+monetdb (11.23.9) unstable; urgency=low
+
+  * Rebuilt.
+  * BZ#3939: Assert failure on concurrent queries when querying sys.queue
+  * BZ#4019: Casting a timestamp from a string results in NULL
+  * BZ#4025: expressions in the WHERE clause that evaluates incorrectly
+  * BZ#4038: After upgrade from 11.21.19, jdbc couldn't list tables for
+non sys users
+  * BZ#4044: Server crash when trying to delete a table has been added to
+a merge table with "cascade" at the end
+  * BZ#4049: Wrong results for queries with "OR" and "LEFT JOIN"
+  * BZ#4052: Infinite loop in rel_select
+  * BZ#4054: copy into file wrongly exports functions
+  * BZ#4059: Geom functions only visible by user monetdb
+  * BZ#4060: BAT leak in some aggregate queries
+  * BZ#4062: Error: SELECT: no such binary operator 'like(varchar,varchar)'
+when used in query running in other schema than sys
+
+ -- Sjoerd Mullender   Mon, 19 Sep 2016 09:30:29 +0200
+
 monetdb (11.23.7) unstable; urgency=low
 
   * Rebuilt.
diff --git a/libversions b/libversions
--- a/libversions
+++ b/libversions
@@ -36,13 +36,13 @@
 
 # version of the GDK library (subdirectory gdk; also includes
 # common/options and common/utils)
-GDK_VERSION=13:3:0
+GDK_VERSION=13:4:0
 
 # version of the MAPI library (subdirectory clients/mapilib)
 MAPI_VERSION=8:0:0
 
 # version of the MONETDB5 library (subdirectory monetdb5, not including extras)
-MONETDB5_VERSION=21:3:0
+MONETDB5_VERSION=21:4:0
 
 # version of the STREAM library (subdirectory common/stream)
-STREAM_VERSION=8:1:0
+STREAM_VERSION=8:2:0
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-09-19 Thread Sjoerd Mullender
Changeset: 3092fc8ece1f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3092fc8ece1f
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files.

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-19 Thread Sjoerd Mullender
Changeset: 6c4257dd4a84 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6c4257dd4a84
Modified Files:
monetdb5/modules/mal/tablet.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (13 lines):

diff --git a/monetdb5/modules/mal/tablet.c b/monetdb5/modules/mal/tablet.c
--- a/monetdb5/modules/mal/tablet.c
+++ b/monetdb5/modules/mal/tablet.c
@@ -1994,7 +1994,8 @@ SQLload_file(Client cntxt, Tablet *as, b
 #endif
for (i = 0; i < as->nr_attrs; i++) {
BAT *b = task->as->format[i].c;
-   BATsettrivprop(b);
+   if (b)
+   BATsettrivprop(b);
GDKfree(task->fields[i]);
}
GDKfree(task->fields);
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-14 Thread Sjoerd Mullender
Changeset: 8d99b1b83977 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8d99b1b83977
Modified Files:
sql/backends/monet5/vaults/lidar/lidar.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (14 lines):

diff --git a/sql/backends/monet5/vaults/lidar/lidar.c 
b/sql/backends/monet5/vaults/lidar/lidar.c
--- a/sql/backends/monet5/vaults/lidar/lidar.c
+++ b/sql/backends/monet5/vaults/lidar/lidar.c
@@ -1013,8 +1013,8 @@ str LIDARloadTable(Client cntxt, MalBlkP
"number of returns : %d\n"
"scan direction: %d\n"
"flight line edge  : %d\n"
-   "scan flags: %lc\n"
-   "classification: %lc\n"
+   "scan flags: %d\n"
+   "classification: %d\n"
"time  : %f\n"
"scan angle rank   : %d\n"
"point source id   : %d\n",
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-13 Thread Sjoerd Mullender
Changeset: 4b3f9a28686d for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4b3f9a28686d
Modified Files:
configure.ag
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (12 lines):

diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -1107,7 +1107,7 @@ AC_PROG_LN_S
 AC_CHECK_PROGS([DIFF], [gdiff diff])
 AC_DEFINE_UNQUOTED([DIFF], ["$DIFF"], [Program to perform diffs])
 
-AC_CHECK_PROGS([RPMBUILD], [rpmbuild rpm])
+AC_CHECK_PROGS([RPMBUILD], [rpmbuild])
 
 org_have_perl=auto
 have_perl=$org_have_perl
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-13 Thread Sjoerd Mullender
Changeset: 4f542acdd1fe for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4f542acdd1fe
Modified Files:
sql/backends/monet5/vaults/lidar/lidar.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (18 lines):

diff --git a/sql/backends/monet5/vaults/lidar/lidar.c 
b/sql/backends/monet5/vaults/lidar/lidar.c
--- a/sql/backends/monet5/vaults/lidar/lidar.c
+++ b/sql/backends/monet5/vaults/lidar/lidar.c
@@ -1016,12 +1016,12 @@ str LIDARloadTable(Client cntxt, MalBlkP
"scan flags: %lc\n"
"classification: %lc\n"
"time  : %f\n"
-   "scan angle rank   : %lc\n"
+   "scan angle rank   : %d\n"
"point source id   : %d\n",
i, x, rawx, y, rawy, z, rawz,
intensity, returnno, noofreturns, 
scandir, flightline, flags, class, 
-   t, anglerank, sourceid);
+   t, (signed char) anglerank, sourceid);
}
 #endif
//TODO: Add a flag that indicates whether LiDAR points should 
be validited up front
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-12 Thread Sjoerd Mullender
Changeset: 4cacfb260a3e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4cacfb260a3e
Modified Files:
gdk/gdk_utils.c
testing/Mtest.py.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (262 lines):

diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -656,45 +656,56 @@ def CreateHtmlIndex (env, *body) :
   'target': '%s_%s_body' % (DISTVER, TSTDIR),
   'class': 'black'},
  header)
+tr = Element('tr', {'valign': 'top'},
+ Element('th', {'class': 'header'},
+ header))
+tr.addchildren(body)
+hbody = Element('body',
+{'bgcolor': white,
+ 'text': black,
+ 'link': green,
+ 'vlink': darkgreen,
+ 'alink': lime},
+Element('center', {},
+Element('table',
+{'align': 'abscenter',
+ 'border': '1',
+ 'cellspacing': '0',
+ 'cellpadding': '3'},
+tr)))
 else:
-header = Element('span', {'class': 'black'},
+header = Element('h3', {},
  Text(DISTVER))
-tr = Element('tr', {'valign': 'top'},
- Element('th', {'class': 'header'},
- header))
-tr.addchildren(body)
+hbody = Element('body',
+{'bgcolor': white,
+ 'text': black,
+ 'link': green,
+ 'vlink': darkgreen,
+ 'alink': lime},
+header)
+hbody.addchildren(body)
 html = Element('html', {},
Element('head', {},
Element('meta', {'charset':'utf8'}),
Element('title', {}, Text(HTMLTITLE)),
stylesheet),
-   Element('body',
-   {'bgcolor': white,
-'text': black,
-'link': green,
-'vlink': darkgreen,
-'alink': lime},
-   Element('center', {},
-   Element('table',
-   {'align': 'abscenter',
-'border': '1',
-'cellspacing': '0',
-'cellpadding': '3'},
-   tr
+   hbody)
 f = open("%s.head.html" % INDEX,"w")
 html.write(f, True)
 f.close()
 
 if TSTDIR:
-ROWS="72"
+layout = 'rows'
+ROWS="8%"
 else:
-ROWS="54"
+layout = 'cols'
+ROWS="10%"
 html = Element('html', {},
Element('head', {},
Element('meta', {'charset':'utf8'}),
Element('title', {}, Text(HTMLTITLE))),
Element('frameset',
-   {'rows': '%s,*' % ROWS,
+   {layout: '%s,*' % ROWS,
 'frameborder': 'yes',
 'border': '1',
 'bordercolor': white,
@@ -1056,14 +1067,15 @@ def AddTstToHtmlIndex (env, TST, STABLEo
 ### AddTstToHtmlIndex (env, TST, STABLEout, STABLEerr, EXT) #
 
 def AddSubToHtmlIndex (env, TSTDIR, diff) :
-td = Element('td', {'class': 'header'})
-td.addchildren(AddHref('%s/.index.html' % url(TSTDIR), '%s__body' % 
DISTVER,
-   TSTDIR, diff))
+elem = Element('p', {})
+elem.addchildren(AddHref('%s/.index.html' % url(TSTDIR),
+ '%s__body' % DISTVER,
+ TSTDIR, diff))
 if '__BODY_' not in env  or  \
not env['__BODY_'][0]  or  \
( (not env['__BODY_'][1])  and  diff ):
 env['__BODY_'] = ["%s/.index.html" % TSTDIR, diff]
-return td
+return elem
 ### AddSubToHtmlIndex (env, TSTDIR, diff) #
 
 def SkipTest(env, TST, EXT, REASON, length) :
@@ -1129,6 +1141,7 @@ def find_test_dirs(thisdir) :
 ### find_test_dirs(thisdir) #
 
 def PerformDir(env, testdir, testlist, BusyPorts, all_tests = False) :
+

MonetDB: default - Merge with Jun2016 branch.

2016-09-07 Thread Sjoerd Mullender
Changeset: 7b5567cc9e68 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7b5567cc9e68
Modified Files:
gdk/gdk_system.c
sql/test/Tests/systemfunctions.stable.out
sql/test/Tests/systemfunctions.stable.out.int128
sql/test/leaks/Tests/check0.stable.out
sql/test/leaks/Tests/check0.stable.out.int128
sql/test/leaks/Tests/check1.stable.out
sql/test/leaks/Tests/check1.stable.out.int128
sql/test/leaks/Tests/check2.stable.out
sql/test/leaks/Tests/check2.stable.out.int128
sql/test/leaks/Tests/check3.stable.out
sql/test/leaks/Tests/check3.stable.out.int128
sql/test/leaks/Tests/check4.stable.out
sql/test/leaks/Tests/check4.stable.out.int128
sql/test/leaks/Tests/check5.stable.out
sql/test/leaks/Tests/check5.stable.out.int128
tools/merovingian/utils/utils.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (81 lines):

diff --git a/gdk/gdk_system.c b/gdk/gdk_system.c
--- a/gdk/gdk_system.c
+++ b/gdk/gdk_system.c
@@ -237,18 +237,25 @@ void
 join_detached_threads(void)
 {
struct winthread *w;
+   int waited;
 
-   EnterCriticalSection(_cs);
-   while (winthreads) {
-   w = winthreads;
-   winthreads = w->next;
+   do {
+   waited = 0;
+   EnterCriticalSection(_cs);
+   for (w = winthreads; w; w = w->next) {
+   if ((w->flags & (DETACHED | WAITING)) == DETACHED) {
+   w->flags |= WAITING;
+   LeaveCriticalSection(_cs);
+   WaitForSingleObject(w->hdl, INFINITE);
+   CloseHandle(w->hdl);
+   rm_winthread(w);
+   waited = 1;
+   EnterCriticalSection(_cs);
+   break;
+   }
+   }
LeaveCriticalSection(_cs);
-   WaitForSingleObject(w->hdl, INFINITE);
-   CloseHandle(w->hdl);
-   free(w);
-   EnterCriticalSection(_cs);
-   }
-   LeaveCriticalSection(_cs);
+   } while (waited);
 }
 
 int
diff --git a/sql/test/Tests/systemfunctions.stable.out 
b/sql/test/Tests/systemfunctions.stable.out
--- a/sql/test/Tests/systemfunctions.stable.out
+++ b/sql/test/Tests/systemfunctions.stable.out
@@ -690,7 +690,7 @@ Ready.
 [ "sys",   "gethost",  1,  "url",  ""  ]
 [ "sys",   "getport",  0,  "clob", "create function getport(theurl 
url) returns string\n external name url.\"getPort\";"   ]
 [ "sys",   "getport",  1,  "url",  ""  ]
-[ "sys",   "getproj4", 0,  "clob", "create function 
getproj4(srid_in integer) returns string \nbegin\n return select proj4text from 
spatial_ref_sys where srid=srid_in; \nend;"]
+[ "sys",   "getproj4", 0,  "clob", "create function 
getproj4(srid_in integer) returns string\nbegin\n return select proj4text from 
spatial_ref_sys where srid=srid_in;\nend;"  ]
 [ "sys",   "getproj4", 1,  "int",  ""  ]
 [ "sys",   "getprotocol",  0,  "clob", "create function 
getprotocol(theurl url) returns string\n external name url.\"getProtocol\";"   ]
 [ "sys",   "getprotocol",  1,  "url",  ""  ]
@@ -4012,7 +4012,7 @@ Ready.
 [ "sys",   "st_touches",   0,  "boolean",  "create function 
st_touches(geom1 geometry, geom2 geometry) returns boolean external name 
geom.\"Touches\";"]
 [ "sys",   "st_touches",   1,  "geometry", ""  ]
 [ "sys",   "st_touches",   2,  "geometry", ""  ]
-[ "sys",   "st_transform", 0,  "geometry", "create function 
st_transform(geom geometry, srid integer) returns geometry\nbegin\n declare 
srid_src integer;\n declare proj4_src string;\n declare proj4_dest string;\n 
select st_srid(geom) into srid_src;\n select getproj4(srid_src) into 
proj4_src;\n select getproj4(srid) into proj4_dest;\n if proj4_src is null 
then\n return select internaltransform(geom, srid_src, srid, 'null', 
proj4_dest); \n else\n if proj4_dest is null then\n return select 
internaltransform(geom, srid_src, srid, proj4_src, 'null'); \n else\n return 
select internaltransform(geom, srid_src, srid, proj4_src, proj4_dest);\n end 
if; \n end if;\nend;"]
+[ "sys",   "st_transform", 0,  "geometry", "create function 
st_transform(geom geometry, srid integer) returns geometry\nbegin\n declare 
srid_src integer;\n declare proj4_src string;\n declare proj4_dest string;\n 
select st_srid(geom) into srid_src;\n select getproj4(srid_src) into 
proj4_src;\n select getproj4(srid) into proj4_dest;\n if proj4_src is null 
then\n return select internaltransform(geom, srid_src, srid, 'null', 
proj4_dest);\n else\n if proj4_dest is null then\n return select 
internaltransform(geom, srid_src, 

MonetDB: default - Merge with Jun2016 branch.

2016-09-05 Thread Sjoerd Mullender
Changeset: 0f356442561f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0f356442561f
Modified Files:
tools/merovingian/utils/utils.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (40 lines):

diff --git a/tools/merovingian/utils/utils.c b/tools/merovingian/utils/utils.c
--- a/tools/merovingian/utils/utils.c
+++ b/tools/merovingian/utils/utils.c
@@ -118,25 +118,17 @@ freeConfFile(confkeyval *list) {
  */
 int
 defaultProperty(const char *property) {
-   // TODO: find a better way to do this
-   if (property != NULL && strcmp(property, "type") == 0) {
-   return 1;
-   } else if (property != NULL && strcmp(property, "shared") == 0) {
-   return 1;
-   } else if (property != NULL && strcmp(property, "nthreads") == 0) {
-   return 1;
-   } else if (property != NULL && strcmp(property, "readonly") == 0) {
-   return 1;
-   } else if (property != NULL && strcmp(property, "nclients") == 0) {
-   return 1;
-   } else if (property != NULL && strcmp(property, "mfunnel") == 0) {
-   return 1;
-   } else if (property != NULL && strcmp(property, "embedr") == 0) {
-   return 1;
-   } else if (property != NULL && strcmp(property, "embedpy") == 0) {
-   return 1;
-   }
-   return 0;
+   if (property == NULL)
+   return 0;
+   return strcmp(property, "type") == 0 ||
+   strcmp(property, "shared") == 0 ||
+   strcmp(property, "nthreads") == 0 ||
+   strcmp(property, "readonly") == 0 ||
+   strcmp(property, "nclients") == 0 ||
+   strcmp(property, "mfunnel") == 0 ||
+   strcmp(property, "embedr") == 0 ||
+   strcmp(property, "embedpy") == 0 ||
+   strcmp(property, "optpipe") == 0;
 }
 
 /**
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-05 Thread Sjoerd Mullender
Changeset: e927418a247f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e927418a247f
Modified Files:
gdk/gdk_system.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (92 lines):

diff --git a/gdk/gdk_system.c b/gdk/gdk_system.c
--- a/gdk/gdk_system.c
+++ b/gdk/gdk_system.c
@@ -233,11 +233,32 @@ join_threads(void)
} while (waited);
 }
 
+void
+join_detached_threads(void)
+{
+   struct winthread *w;
+
+   EnterCriticalSection(_cs);
+   while (winthreads) {
+   w = winthreads;
+   winthreads = w->next;
+   LeaveCriticalSection(_cs);
+   WaitForSingleObject(w->hdl, INFINITE);
+   CloseHandle(w->hdl);
+   free(w);
+   EnterCriticalSection(_cs);
+   }
+   LeaveCriticalSection(_cs);
+}
+
 int
 MT_create_thread(MT_Id *t, void (*f) (void *), void *arg, enum MT_thr_detach d)
 {
struct winthread *w = malloc(sizeof(*w));
 
+   if (w == NULL)
+   return -1;
+
if (winthread_cs_init == 0) {
/* we only get here before any threads are created,
 * and this is the only time that winthread_cs_init is
@@ -501,23 +522,18 @@ void
 join_detached_threads(void)
 {
struct posthread *p;
-   int waited;
pthread_t tid;
 
pthread_mutex_lock(_lock);
-   do {
-   waited = 0;
-   for (p = posthreads; p; p = p->next) {
-   tid = p->tid;
-   rm_posthread_locked(p);
-   free(p);
-   pthread_mutex_unlock(_lock);
-   pthread_join(tid, NULL);
-   pthread_mutex_lock(_lock);
-   waited = 1;
-   break;
-   }
-   } while (waited);
+   while (posthreads) {
+   p = posthreads;
+   posthreads = p->next;
+   tid = p->tid;
+   free(p);
+   pthread_mutex_unlock(_lock);
+   pthread_join(tid, NULL);
+   pthread_mutex_lock(_lock);
+   }
pthread_mutex_unlock(_lock);
 }
 
@@ -542,6 +558,12 @@ MT_create_thread(MT_Id *t, void (*f) (vo
pthread_attr_setdetachstate(, PTHREAD_CREATE_JOINABLE);
if (d == MT_THR_DETACHED) {
p = malloc(sizeof(struct posthread));
+   if (p == NULL) {
+#ifdef HAVE_PTHREAD_SIGMASK
+   MT_thread_sigmask(_mask, NULL);
+#endif
+   return -1;
+   }
p->func = f;
p->arg = arg;
p->exited = 0;
@@ -789,6 +811,9 @@ MT_check_nr_cores_(void)
lng t0, t1;
MT_Id *threads = malloc(sizeof(MT_Id) * curr);
 
+   if (threads == NULL)
+   break;
+
t0 = GDKusec();
for (i = 0; i < curr; i++)
MT_create_thread(threads + i, smp_thread, NULL, 
MT_THR_JOINABLE);
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-09-05 Thread Sjoerd Mullender
Changeset: f3f489edfd9f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f3f489edfd9f
Modified Files:
gdk/gdk_firstn.c
gdk/gdk_group.c
gdk/gdk_logger.c
gdk/gdk_posix.c
gdk/gdk_private.h
gdk/gdk_project.c
gdk/gdk_system.c
gdk/gdk_system.h
gdk/gdk_system_private.h
gdk/gdk_utils.c
gdk/gdk_value.c
monetdb5/mal/mal_dataflow.c
monetdb5/mal/mal_debugger.c
monetdb5/mal/mal_function.c
monetdb5/mal/mal_import.c
monetdb5/mal/mal_interpreter.c
monetdb5/mal/mal_listing.c
monetdb5/mal/mal_module.c
monetdb5/mal/mal_parser.c
monetdb5/mal/mal_profiler.c
monetdb5/mal/mal_resolve.c
monetdb5/mal/mal_session.c
monetdb5/mal/mal_stack.h
monetdb5/modules/atoms/blob.c
monetdb5/modules/atoms/color.c
monetdb5/modules/atoms/identifier.c
monetdb5/modules/atoms/inet.c
monetdb5/modules/atoms/json.c
monetdb5/modules/atoms/mtime.c
monetdb5/modules/atoms/streams.c
monetdb5/modules/kernel/algebra.c
monetdb5/modules/mal/inspect.c
monetdb5/modules/mal/mal_mapi.c
monetdb5/modules/mal/tablet.c
monetdb5/modules/mal/tokenizer.c
monetdb5/optimizer/opt_pipes.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_scenario.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 1362 to 300 lines):

diff --git a/gdk/gdk_firstn.c b/gdk/gdk_firstn.c
--- a/gdk/gdk_firstn.c
+++ b/gdk/gdk_firstn.c
@@ -656,6 +656,8 @@ BATfirstn_grouped(BAT **topn, BAT **gids
 * can use the base type */
tpe = ATOMbasetype(tpe); /* takes care of oid */
groups = GDKmalloc(sizeof(*groups) * n);
+   if( groups == NULL)
+   return GDK_FAIL;
oldcand = cand;
if (asc) {
switch (tpe) {
@@ -960,6 +962,8 @@ BATfirstn_grouped_with_groups(BAT **topn
 * can use the base type */
tpe = ATOMbasetype(tpe); /* takes care of oid */
groups = GDKmalloc(sizeof(*groups) * n);
+   if( groups == NULL)
+   return GDK_FAIL;
gv = (const oid *) Tloc(g, 0);
oldcand = cand;
if (asc) {
diff --git a/gdk/gdk_group.c b/gdk/gdk_group.c
--- a/gdk/gdk_group.c
+++ b/gdk/gdk_group.c
@@ -711,6 +711,9 @@ BATgroup_internal(BAT **groups, BAT **ex
unsigned char *restrict bgrps = GDKmalloc(256);
const unsigned char *restrict w = (const unsigned char *) 
Tloc(b, 0);
unsigned char v;
+
+   if( bgrps == NULL)
+   goto error;
memset(bgrps, 0xFF, 256);
if (histo)
memset(cnts, 0, maxgrps * sizeof(lng));
@@ -737,6 +740,9 @@ BATgroup_internal(BAT **groups, BAT **ex
unsigned short *restrict sgrps = GDKmalloc(65536 * 
sizeof(short));
const unsigned short *restrict w = (const unsigned short *) 
Tloc(b, 0);
unsigned short v;
+
+   if( sgrps == NULL)
+   goto error;
memset(sgrps, 0xFF, 65536 * sizeof(short));
if (histo)
memset(cnts, 0, maxgrps * sizeof(lng));
diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1219,6 +1219,9 @@ bm_subcommit(logger *lg, BAT *list_bid, 
BATiter iter = (list_nme)?bat_iterator(list_nme):bat_iterator(list_bid);
gdk_return res;
 
+   if( n == NULL)
+   return GDK_FAIL;
+
n[i++] = 0; /* n[0] is not used */
BATloop(list_bid, p, q) {
bat col = *(log_bid *) Tloc(list_bid, p);
diff --git a/gdk/gdk_posix.c b/gdk/gdk_posix.c
--- a/gdk/gdk_posix.c
+++ b/gdk/gdk_posix.c
@@ -582,6 +582,12 @@ MT_mremap(const char *path, int mode, vo
if (fd >= 0)
close(fd);
p = malloc(strlen(path) + 5);
+   if ( p == NULL){
+   GDKsyserror("MT_mremap: 
malloc() failed\n");
+   fprintf(stderr, "= %s:%d: 
MT_mremap(%s,"PTRFMT","SZFMT","SZFMT"): fd < 0\n", __FILE__, __LINE__, path, 
PTRFMTCAST old_address, old_size, *new_size);
+   return NULL;
+   }
+   
strcat(strcpy(p, path), ".tmp");
fd = open(p, O_RDWR | O_CREAT,
  MONETDB_MODE);
@@ -1048,6 +1054,8 @@ reduce_dir_name(const char *src, char *d
 
if (len >= cap)
buf = malloc(len + 1);
+   if( 

MonetDB: default - Merge with Jun2016 branch.

2016-09-02 Thread Sjoerd Mullender
Changeset: e6953d38bed6 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e6953d38bed6
Modified Files:
configure.ag
monetdb5/modules/mal/mal_mapi.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (17 lines):

diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -1147,6 +1147,13 @@ AS_VAR_IF([have_perl], [no],
PERL_LIBDIR=`"$PERL" -MConfig -e 
'$x=$Config{installvendorarch}; $x =~ s|$Config{vendorprefix}/||; print $x;' 
2>/dev/null`
# On Darwin this starts with a slash, remove it
PERL_LIBDIR="${PERL_LIBDIR@%:@/}"
+   AS_VAR_IF([PERL_LIBDIR], [], [
+   # if empty (e.g. on FreeBSD) try something else
+   PERL_LIBDIR=`"$PERL" -MConfig -e 
'$x=$Config{sitelib}; $x =~ s|$Config{prefix}/||; print $x;' 2>/dev/null`
+   AS_VAR_IF([PERL_LIBDIR], [], [
+   # if still empty, give up
+   have_perl=no
+   why_have_perl='(cannot 
determine location for files)'])])
],
[no], [],
[
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-08-31 Thread Sjoerd Mullender
Changeset: a219824bb780 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a219824bb780
Modified Files:
clients/Tests/SQL-dump.SQL.py
clients/Tests/SQL-dump.stable.out
clients/Tests/SQL-dump.stable.out.int128
geom/sql/40_geom.sql
sql/backends/monet5/sql_upgrades.c
sql/scripts/12_url.sql
sql/scripts/14_inet.sql
sql/scripts/39_analytics.sql
sql/scripts/39_analytics_hge.sql
sql/scripts/40_json.sql
sql/scripts/40_json_hge.sql
sql/scripts/45_uuid.sql
sql/test/emptydb-upgrade-chain-hge/Tests/check.stable.out.int128
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/check.stable.out
sql/test/emptydb-upgrade-chain/Tests/check.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-hge/Tests/check.stable.out.int128
sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade/Tests/check.stable.out
sql/test/emptydb-upgrade/Tests/check.stable.out.int128
sql/test/emptydb-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
sql/test/emptydb/Tests/check.stable.out
sql/test/emptydb/Tests/check.stable.out.int128
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out
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
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:

Merge with Jun2016 branch.


diffs (truncated from 8562 to 300 lines):

diff --git a/clients/Tests/SQL-dump.SQL.py b/clients/Tests/SQL-dump.SQL.py
--- a/clients/Tests/SQL-dump.SQL.py
+++ b/clients/Tests/SQL-dump.SQL.py
@@ -61,7 +61,7 @@ sys.stderr.write(err)
 # add queries to dump the system tables, but avoid dumping IDs since
 # they are too volatile, and if it makes sense, dump an identifier
 # from a referenced table
-out = '''
+out = r'''
 -- helper function
 create function pcre_replace(origin string, pat string, repl string, flags 
string) returns string external name pcre.replace;
 -- schemas
diff --git a/clients/Tests/SQL-dump.stable.out 
b/clients/Tests/SQL-dump.stable.out
--- a/clients/Tests/SQL-dump.stable.out
+++ b/clients/Tests/SQL-dump.stable.out
@@ -1190,15 +1190,11 @@ create function pcre_replace(origin stri
 -- schemas
 select name, authorization, owner, system from sys.schemas order by name;
 -- _tables
-select s.name, t.name, 
replace(replace(pcre_replace(pcre_replace(pcre_replace(t.query, '--.*
-', '', ''), '[ 
-]+', ' ', 'm'), '^ ', '', ''), '( ', '('), ' )', ')') as query, t.type, 
t.system, t.commit_action, t.access from sys._tables t left outer join 
sys.schemas s on t.schema_id = s.id order by s.name, t.name;
+select s.name, t.name, 
replace(replace(pcre_replace(pcre_replace(pcre_replace(t.query, '--.*\n', '', 
''), '[ \t\n]+', ' ', 'm'), '^ ', '', ''), '( ', '('), ' )', ')') as query, 
t.type, t.system, t.commit_action, t.access from sys._tables t left outer join 
sys.schemas s on t.schema_id = s.id order by s.name, t.name;
 -- _columns
 select t.name, c.name, c.type, c.type_digits, c.type_scale, c."default", 
c."null", c.number, c.storage from sys._tables t, sys._columns c where t.id = 
c.table_id order by t.name, c.number;
 -- functions
-select s.name, f.name, 
replace(replace(pcre_replace(pcre_replace(pcre_replace(f.func, '--.*
-', '', ''), '[ 
-]+', ' ', 'm'), '^ ', '', ''), '( ', '('), ' )', ')') as query, f.mod, 
f.language, f.type, f.side_effect, f.varres, f.vararg from sys.functions f left 
outer join sys.schemas s on f.schema_id = s.id order by s.name, f.name, query;
+select s.name, f.name, 
replace(replace(pcre_replace(pcre_replace(pcre_replace(f.func, '--.*\n', '', 
''), '[ \t\n]+', ' ', 'm'), '^ ', '', ''), '( ', '('), ' )', ')') as query, 
f.mod, f.language, f.type, f.side_effect, f.varres, f.vararg from sys.functions 
f left outer join sys.schemas s on f.schema_id = s.id order by s.name, f.name, 
query;
 -- args
 with
 arg1 (id, id1, name1, type1, type_digits1, type_scale1, inout1) as (select 
f.id, a1.id, a1.name, a1.type, a1.type_digits, a1.type_scale, a1.inout from 
sys.functions f left outer join args a1 on a1.func_id = f.id and a1.number = 1),
@@ -5231,7 +5227,7 @@ drop function pcre_replace(string, strin
 % sys.t,   sys.a,  .p, .g, .p # table_name
 % name,name,   privileges, name,   grantable # name
 % varchar, varchar,int,varchar,

MonetDB: default - Merge with Jun2016 branch.

2016-08-29 Thread Sjoerd Mullender
Changeset: 386936771f91 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=386936771f91
Modified Files:
monetdb5/modules/mal/batExtensions.c
sql/server/sql_parser.y
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (119 lines):

diff --git a/monetdb5/modules/mal/batExtensions.c 
b/monetdb5/modules/mal/batExtensions.c
--- a/monetdb5/modules/mal/batExtensions.c
+++ b/monetdb5/modules/mal/batExtensions.c
@@ -75,7 +75,7 @@ CMDBATsingle(Client cntxt, MalBlkPtr mb,
if (ATOMextern(b->ttype))
u = (ptr) *(str *)u;
BUNappend(b, u, FALSE);
-   BBPincref(*ret = b->batCacheid, TRUE);
+   BBPkeepref(*ret = b->batCacheid);
return MAL_SUCCEED;
 }
 
diff --git a/sql/server/sql_parser.y b/sql/server/sql_parser.y
--- a/sql/server/sql_parser.y
+++ b/sql/server/sql_parser.y
@@ -1808,8 +1808,11 @@ func_def:
lang = FUNC_LANG_C;
else if (l == 'J' || l == 'j')
lang = FUNC_LANG_J;
-   else
-   yyerror(m, sql_message("Language name R, C, 
P(ython), PYTHON_MAP or J(avascript):expected, received '%c'", l));
+   else {
+   char *msg = sql_message("Language name R, C, 
P(ython), PYTHON_MAP or J(avascript):expected, received '%c'", l);
+   yyerror(m, msg);
+   _DELETE(msg);
+   }
 
append_list(f, $3);
append_list(f, $5);
@@ -1865,8 +1868,11 @@ func_def:
lang = FUNC_LANG_C;
else if (l == 'J' || l == 'j')
lang = FUNC_LANG_J;
-   else
-   yyerror(m, sql_message("Language name R, C, 
P(ython), PYTHON_MAP or J(avascript):expected, received '%c'", l));
+   else {
+   char *msg = sql_message("Language name R, C, 
P(ython), PYTHON_MAP or J(avascript):expected, received '%c'", l);
+   yyerror(m, msg);
+   _DELETE(msg);
+   }
 
append_list(f, $3);
append_list(f, $5);
@@ -3396,9 +3402,7 @@ like_exp:
  |  scalar_exp ESCAPE string
{ const char *s = sql2str($3);
  if (_strlen(s) != 1) {
-   char *msg = sql_message("\b22025!ESCAPE must be one character");
-   yyerror(m, msg);
-   _DELETE(msg);
+   yyerror(m, "\b22025!ESCAPE must be one character");
$$ = NULL;
YYABORT;
  } else {
@@ -3681,10 +3685,7 @@ simple_scalar_exp:
if (!atom_neg(a)) {
$$ = $2;
} else {
-   char *msg = sql_message("\b22003!value 
too large or not a number");
-
-   yyerror(m, msg);
-   _DELETE(msg);
+   yyerror(m, "\b22003!value too large or 
not a number");
$$ = NULL;
YYABORT;
}
@@ -4977,7 +4978,11 @@ data_type:
  }
}
 | GEOMETRY {
-   sql_find_subtype(&$$, "geometry", 0, 0 );
+   if (!sql_find_subtype(&$$, "geometry", 0, 0 )) {
+   yyerror(m, "\b22000!type (geometry) unknown");
+   $$.type = NULL;
+   YYABORT;
+   }
}
 | GEOMETRY '(' subgeometry_type ')' {
int geoSubType = $3; 
@@ -5010,7 +5015,11 @@ data_type:
}
}
 | GEOMETRYA {
-   sql_find_subtype(&$$, "geometrya", 0, 0 );
+   if (!sql_find_subtype(&$$, "geometrya", 0, 0 )) {
+   yyerror(m, "\b22000!type (geometrya) unknown");
+   $$.type = NULL;
+   YYABORT;
+   }
}
 | GEOMETRYSUBTYPE {
int geoSubType = find_subgeometry_type($1);
@@ -5022,7 +5031,7 @@ data_type:
_DELETE(msg);
YYABORT;
}  else if (!sql_find_subtype(&$$, "geometry", geoSubType, 0 )) {
-   char *msg = sql_message("\b22000!type (%s) unknown", $1);
+   char *msg = sql_message("\b22000!type (%s) unknown", $1);
yyerror(m, msg);
_DELETE(msg);
$$.type = NULL;
@@ -5040,7 +5049,7 @@ subgeometry_type:
char *msg = sql_message("\b22000!type (%s) unknown", 
geoSubType);
yyerror(m, msg);
_DELETE(msg);
-   
+   YYABORT;
} 
$$ = 

MonetDB: default - Merge with Jun2016 branch.

2016-08-29 Thread Sjoerd Mullender
Changeset: 3f923b35041e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3f923b35041e
Added Files:
monetdb5/mal/Tests/tst023.malC
monetdb5/mal/Tests/tst023.stable.err
monetdb5/mal/Tests/tst023.stable.out
Modified Files:
gdk/gdk_batop.c
monetdb5/mal/Tests/All
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (188 lines):

diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -612,7 +612,7 @@ BATdel(BAT *b, BAT *d)
nd++;
if (c == 0 || *o - b->hseqbase >= BATcount(b))
n = b->hseqbase + BATcount(b) - o[-1] - 1;
-   else if ((oid) (o - s) > *o - *s)
+   else if ((oid) (o - s) < *o - *s)
n = o[0] - o[-1] - 1;
else
n = 0;
@@ -636,6 +636,10 @@ BATdel(BAT *b, BAT *d)
b->tnonil = 1;
}
}
+   /* not sure about these anymore */
+   b->tnosorted = b->tnorevsorted = 0;
+   b->tnokey[0] = b->tnokey[1] = 0;
+
return GDK_SUCCEED;
 }
 
diff --git a/monetdb5/mal/Tests/All b/monetdb5/mal/Tests/All
--- a/monetdb5/mal/Tests/All
+++ b/monetdb5/mal/Tests/All
@@ -20,15 +20,16 @@ tst019
 tst020
 tst021
 tst022
+tst023
 tst024
-#tst025
+tst025
 tst026
 tst027
 tst028
 tst029
 tst030
-#tst031
-#tst032
+tst031
+tst032
 tst033
 tst034
 tst035
diff --git a/monetdb5/mal/Tests/tst023.malC b/monetdb5/mal/Tests/tst023.malC
new file mode 100644
--- /dev/null
+++ b/monetdb5/mal/Tests/tst023.malC
@@ -0,0 +1,24 @@
+b1:= bat.new(:int);
+b2:= bat.new(:flt);
+
+bat.append(b1,1);
+bat.append(b1,2);
+bat.append(b1,3);
+bat.append(b1,4);
+bat.append(b1,2);
+
+bat.append(b2, 12.31);
+bat.append(b2, 12.32);
+bat.append(b2, 12.33);
+bat.append(b2, 12.34);
+bat.append(b2, 12.35);
+io.print(b1,b2);
+
+s:= algebra.subselect(b1,2,2,true,true,false);
+io.print(s);
+
+bat.delete(b1,s);
+io.print(b1);
+bat.delete(b2,s);
+io.print(b2);
+io.print(b1,b2);
diff --git a/monetdb5/mal/Tests/tst023.stable.err 
b/monetdb5/mal/Tests/tst023.stable.err
new file mode 100644
--- /dev/null
+++ b/monetdb5/mal/Tests/tst023.stable.err
@@ -0,0 +1,35 @@
+stderr of test 'tst023` in directory 'monetdb5/mal` itself:
+
+
+# 10:17:06 >  
+# 10:17:06 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36074" "--set" 
"mapi_usock=/var/tmp/mtest-8504/.s.monetdb.36074" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/ufs/sjoerd/Monet-stable/var/MonetDB/mTests_monetdb5_mal" "--set" 
"embedded_r=yes"
+# 10:17:06 >  
+
+# builtin opt  gdk_dbpath = /ufs/sjoerd/Monet-stable/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 = 36074
+# cmdline opt  mapi_usock = /var/tmp/mtest-8504/.s.monetdb.36074
+# cmdline opt  monet_prompt = 
+# cmdline opt  gdk_dbpath = 
/ufs/sjoerd/Monet-stable/var/MonetDB/mTests_monetdb5_mal
+# cmdline opt  embedded_r = yes
+# cmdline opt  gdk_debug = 536870922
+
+# 10:17:07 >  
+# 10:17:07 >  "mclient" "-lmal" "-ftest" "-Eutf-8" 
"--host=/var/tmp/mtest-8504" "--port=36074"
+# 10:17:07 >  
+
+
+# 10:17:07 >  
+# 10:17:07 >  "Done."
+# 10:17:07 >  
+
diff --git a/monetdb5/mal/Tests/tst023.stable.out 
b/monetdb5/mal/Tests/tst023.stable.out
new file mode 100644
--- /dev/null
+++ b/monetdb5/mal/Tests/tst023.stable.out
@@ -0,0 +1,68 @@
+stdout of test 'tst023` in directory 'monetdb5/mal` itself:
+
+
+# 10:17:06 >  
+# 10:17:06 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36074" "--set" 
"mapi_usock=/var/tmp/mtest-8504/.s.monetdb.36074" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/ufs/sjoerd/Monet-stable/var/MonetDB/mTests_monetdb5_mal" "--set" 
"embedded_r=yes"
+# 10:17:06 >  
+
+# MonetDB 5 server v11.23.8 (hg id: b4168ee316f9+)
+# This is an unreleased version
+# Serving database 'mTests_monetdb5_mal', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit 
integers dynamically linked
+# Found 15.589 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2016 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://madrid.da.cwi.nl:36074/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-8504/.s.monetdb.36074
+# MonetDB/GIS module loaded
+# MonetDB/SQL module loaded
+# MonetDB/R   module loaded
+
+Ready.
+
+# 10:17:07 >  

MonetDB: default - Merge with Jun2016 branch.

2016-08-15 Thread Sjoerd Mullender
Changeset: db733bbc40d3 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=db733bbc40d3
Modified Files:
common/stream/stream.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (12 lines):

diff --git a/common/stream/stream.c b/common/stream/stream.c
--- a/common/stream/stream.c
+++ b/common/stream/stream.c
@@ -3236,7 +3236,7 @@ ic_close(stream *s)
struct icstream *ic = (struct icstream *) s->stream_data.p;
 
if (ic) {
-   if (ic->access == ST_WRITE)
+   if (s->access == ST_WRITE)
ic_flush(s);
iconv_close(ic->cd);
mnstr_close(ic->s);
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-08-15 Thread Sjoerd Mullender
Changeset: 102d34b2ff38 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=102d34b2ff38
Added Files:
sql/test/BugTracker-2016/Tests/innerjoin-leftjoin-or.Bug-4049.sql
sql/test/BugTracker-2016/Tests/innerjoin-leftjoin-or.Bug-4049.stable.err
sql/test/BugTracker-2016/Tests/innerjoin-leftjoin-or.Bug-4049.stable.out
Modified Files:
common/stream/stream.c
monetdb5/modules/mal/tablet.c
sql/common/sql_list.c
sql/include/sql_list.h
sql/server/rel_optimizer.c
sql/server/rel_rel.c
sql/server/rel_select.c

sql/test/BugTracker-2015/Tests/mserver-crashes-under-specific-combination-of-JOIN-and-WHERE-conditions.Bug-3872.stable.out
sql/test/BugTracker-2016/Tests/All

sql/test/BugTracker-2016/Tests/memory-consumption-query-PLAN-25joins.Bug-3972.stable.out
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 462 to 300 lines):

diff --git a/common/stream/stream.c b/common/stream/stream.c
--- a/common/stream/stream.c
+++ b/common/stream/stream.c
@@ -1539,8 +1539,8 @@ stream_xzclose(stream *s)
if (fwrite(xz->buf, 1, sz, xz->fp) != sz) 
s->errnr = MNSTR_WRITE_ERROR;
}
+   fflush(xz->fp);
}
-   fflush(xz->fp);
fclose(xz->fp);
lzma_end(>strm);
free(xz);
@@ -3236,7 +3236,8 @@ ic_close(stream *s)
struct icstream *ic = (struct icstream *) s->stream_data.p;
 
if (ic) {
-   ic_flush(s);
+   if (ic->access == ST_WRITE)
+   ic_flush(s);
iconv_close(ic->cd);
mnstr_close(ic->s);
mnstr_destroy(ic->s);
diff --git a/monetdb5/modules/mal/tablet.c b/monetdb5/modules/mal/tablet.c
--- a/monetdb5/modules/mal/tablet.c
+++ b/monetdb5/modules/mal/tablet.c
@@ -59,7 +59,7 @@ void_bat_create(int adt, BUN nr)
 
/* check for correct structures */
if (b == NULL)
-   return b;
+   return NULL;
BATsetaccess(b, BAT_APPEND);
if (nr > BATTINY && adt && BATextend(b, nr) != GDK_SUCCEED) {
BBPunfix(b->batCacheid);
@@ -202,13 +202,13 @@ TABLETcreate_bats(Tablet *as, BUN est)
if (fmt[i].skip)
continue;
fmt[i].c = void_bat_create(fmt[i].adt, est);
-   fmt[i].ci = bat_iterator(fmt[i].c);
if (!fmt[i].c) {
for (j = 0; j < i; j++)
if (!fmt[i].skip)
BBPdecref(fmt[j].c->batCacheid, FALSE);
throw(SQL, "copy", "Failed to create bat of size " 
BUNFMT "\n", as->nr);
}
+   fmt[i].ci = bat_iterator(fmt[i].c);
}
return MAL_SUCCEED;
 }
diff --git a/sql/common/sql_list.c b/sql/common/sql_list.c
--- a/sql/common/sql_list.c
+++ b/sql/common/sql_list.c
@@ -256,6 +256,15 @@ list_remove_data(list *s, void *data)
 }
 
 void
+list_remove_list(list *l, list *data)
+{
+   node *n;
+
+   for (n=data->h; n; n = n->next)
+   list_remove_data(l, n->data);
+}
+
+void
 list_move_data(list *s, list *d, void *data)
 {
node *n;
diff --git a/sql/include/sql_list.h b/sql/include/sql_list.h
--- a/sql/include/sql_list.h
+++ b/sql/include/sql_list.h
@@ -47,6 +47,7 @@ extern list *list_prepend(list *l, void 
 
 extern node *list_remove_node(list *l, node *n);
 extern void list_remove_data(list *l, void *data);
+extern void list_remove_list(list *l, list *data);
 extern void list_move_data(list *l, list *d, void *data);
 
 
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
@@ -6701,7 +6701,7 @@ rel_split_outerjoin(int *changes, mvc *s
e = rel->exps->h->data;
nll->exps = exps_copy(sql->sa, e->l);
nlr->exps = exps_copy(sql->sa, e->r);
-   nl = rel_or( sql, nll, nlr, NULL, e->l, e->r);
+   nl = rel_or( sql, nll, nlr, NULL, NULL, NULL);
 
if (rel->op == op_full) {
l = rel_dup(l);
@@ -7928,6 +7928,7 @@ static sql_rel *
if (level <= 0)
rel = rewrite_topdown(sql, rel, _semijoin_use_fk, 
);
}
+
if (gp.cnt[op_left] || gp.cnt[op_right] || gp.cnt[op_full]) 
rel = rewrite_topdown(sql, rel, _split_outerjoin, );
 
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
@@ -1054,34 +1054,41 @@ rel_or(mvc *sql, sql_rel *l, sql_rel *r,
 {
sql_rel *rel, *ll = l->l, *rl = r->l;
 
-   if (l == r && is_outerjoin(l->op)) { /* merge both lists */
+   assert(!lexps || l == r);
+   if (l == r && lexps) { /* 

MonetDB: default - Merge with Jun2016 branch.

2016-08-08 Thread Sjoerd Mullender
Changeset: 19775df76ede for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=19775df76ede
Modified Files:
gdk/gdk_aggr.c
sql/server/rel_rel.c
sql/storage/store.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (73 lines):

diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c
--- a/gdk/gdk_aggr.c
+++ b/gdk/gdk_aggr.c
@@ -1542,7 +1542,7 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT 
n++;\
}   \
/* the sum fit, so now we can calculate the average */  \
-   *avg = (dbl) sum / n;   \
+   *avg = n > 0 ? (dbl) sum / n : dbl_nil; \
if (0) {\
  overflow##TYPE:   \
/* we get here if sum(x[0],...,x[i]) doesn't */ \
@@ -1551,6 +1551,9 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT 
/* the rest of the calculation is done */   \
/* according to the loop invariant described */ \
/* in the below loop */ \
+   /* note that n necessarily is > 0 (else no */   \
+   /* overflow possible) */\
+   assert(n > 0);  \
if (sum >= 0) { \
a = (TYPE) (sum / (lng_hge) n); /* this fits */ 
\
r = (BUN) (sum % (SBUN) n); \
@@ -1566,24 +1569,25 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT 
if (cand)   \
--cand; \
\
-   for (; i < end; i++) {  \
+   for (;;) {  \
/* loop invariant: */   \
/* a + r/n == average(x[0],...,x[n]); */ \
-   /* 0 <= r < n (if n > 0) */ \
-   /* or if n == 0: a == 0; r == 0 */  \
+   /* 0 <= r < n */\
if (cand) { \
-   if (i < *cand - b->hseqbase)\
-   continue;   \
-   assert(i == *cand - b->hseqbase); \
-   if (++cand == candend)  \
-   end = i + 1;\
+   if (cand == candend)\
+   break;  \
+   i = *cand++ - b->hseqbase;  \
+   } else {\
+   i = start++;\
}   \
+   if (i >= end)   \
+   break;  \
x = ((const TYPE *) src)[i];\
if (x == TYPE##_nil)\
continue;   \
AVERAGE_ITER(TYPE, x, a, r, n); \
}   \
-   *avg = n > 0 ? a + (dbl) r / n : dbl_nil;   \
+   *avg = a + (dbl) r / n; \
}   \
} while (0)
 
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
@@ -1074,6 +1074,12 @@ rel_or(mvc *sql, sql_rel *l, sql_rel *r,
rel_destroy(r);
append(nl, e);
l->exps = nl;
+   if (ll->op == l->op) {
+   list_merge(ll->exps,l->exps, (fdup)NULL);
+   l->l = NULL;
+   rel_destroy(l);
+   return ll;
+   }
return l;
}
l = rel_project(sql->sa, l, rel_projections(sql, l, NULL, 1, 1));
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-08-05 Thread Sjoerd Mullender
Changeset: b2acec955af0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b2acec955af0
Modified Files:
clients/odbc/driver/SQLGetFunctions.c
gdk/gdk_aggr.c
gdk/gdk_atoms.h
gdk/gdk_heap.c
gdk/gdk_unique.c
monetdb5/mal/mal_debugger.c
monetdb5/mal/mal_interpreter.c
monetdb5/mal/mal_runtime.c
monetdb5/modules/atoms/uuid.c
monetdb5/modules/mal/mkey.c
sql/common/sql_keyword.c
sql/common/sql_list.c
sql/server/sql_datetime.c
sql/server/sql_decimal.c
sql/test/pg_regress/Tests/interval.stable.err
sql/test/pg_regress/Tests/interval.stable.err.int128
sql/test/pg_regress/Tests/interval.stable.out
sql/test/pg_regress/Tests/interval.stable.out.int128
tools/merovingian/daemon/argvcmds.c
tools/merovingian/daemon/handlers.c
tools/merovingian/daemon/monetdbd.service.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 618 to 300 lines):

diff --git a/clients/odbc/driver/SQLGetFunctions.c 
b/clients/odbc/driver/SQLGetFunctions.c
--- a/clients/odbc/driver/SQLGetFunctions.c
+++ b/clients/odbc/driver/SQLGetFunctions.c
@@ -399,7 +399,7 @@ SQLGetFunctions(SQLHDBC ConnectionHandle
UWORD *p;
 
for (p = FuncImplemented; p < 
[NFUNCIMPLEMENTED]; p++)
-   FuncExistMap[*p >> 4] |= 1 << (*p & 0xF);
+   FuncExistMap[*p >> 4] |= (UWORD) 1 << (*p & 0xF);
}
 
if (FunctionId == SQL_API_ODBC3_ALL_FUNCTIONS) {
diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c
--- a/gdk/gdk_aggr.c
+++ b/gdk/gdk_aggr.c
@@ -235,8 +235,8 @@ BATgroupaggrinit(BAT *b, BAT *g, BAT *e,
}   \
} else {\
if (nil_if_empty && \
-   !(seen[gid >> 5] & (1 << 
(gid & 0x1F { \
-   seen[gid >> 5] |= 1 << 
(gid & 0x1F); \
+   !(seen[gid >> 5] & (1U << 
(gid & 0x1F { \
+   seen[gid >> 5] |= 1U << 
(gid & 0x1F); \
sums[gid] = 0;  \
}   \
if (sums[gid] != TYPE2##_nil) { 
\
@@ -275,8 +275,8 @@ BATgroupaggrinit(BAT *b, BAT *g, BAT *e,
}   \
} else {\
if (nil_if_empty && \
-   !(seen[gid >> 5] & (1 << 
(gid & 0x1F { \
-   seen[gid >> 5] |= 1 << 
(gid & 0x1F); \
+   !(seen[gid >> 5] & (1U << 
(gid & 0x1F { \
+   seen[gid >> 5] |= 1U << 
(gid & 0x1F); \
sums[gid] = 0;  \
}   \
if (sums[gid] != TYPE2##_nil) { 
\
@@ -679,8 +679,8 @@ BATsum(void *res, int tp, BAT *b, BAT *s
}   \
} else {\
if (nil_if_empty && \
-   !(seen[gid >> 5] & (1 << (gid & 
0x1F { \
-   seen[gid >> 5] |= 1 << (gid & 
0x1F); \
+   !(seen[gid >> 5] & (1U << (gid & 
0x1F { \
+   seen[gid >> 5] |= 1U << (gid & 
0x1F); \
prods[gid] = 1; \
}   \
if (prods[gid] != TYPE2##_nil) { \
@@ -724,8 +724,8 @@ BATsum(void *res, int tp, BAT *b, BAT *s
gid = (oid) i;  \
}   \
if (nil_if_empty && \
-   !(seen[gid >> 5] & (1 << (gid & 0x1F { \
-   seen[gid >> 5] |= 1 << (gid & 0x1F); \
+   !(seen[gid >> 5] & (1U << (gid & 0x1F { 
\
+   seen[gid >> 5] |= 1U << (gid & 0x1F); \
  

MonetDB: default - Merge with Jun2016 branch.

2016-08-01 Thread Sjoerd Mullender
Changeset: 3962b14fdee5 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3962b14fdee5
Modified Files:
NT/monetdb_config.h.in
clients/mapiclient/mclient.c
configure.ag
monetdb5/optimizer/opt_mergetable.c
sql/backends/monet5/sql_gencode.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (107 lines):

diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -187,6 +187,11 @@
 /* Define to 1 if you have the `getaddrinfo' function. */
 #define HAVE_GETADDRINFO 1
 
+/* Define to 1 if you have the `GetDynamicTimeZoneInformation' function. */
+#ifdef _MSC_VER
+#define HAVE_GETDYNAMICTIMEZONEINFORMATION 1
+#endif
+
 /* Define to 1 if you have the `getexecname' function. */
 /* #undef HAVE_GETEXECNAME */
 
@@ -205,11 +210,6 @@
 /* Define to 1 if you have the `gettimeofday' function. */
 /* #undef HAVE_GETTIMEOFDAY */
 
-/* Define to 1 if you have the `_get_timezone' function. */
-#ifdef _MSC_VER
-#define HAVE__GET_TIMEZONE 1
-#endif
-
 /* Define to 1 if you have the `getuid' function. */
 /* #undef HAVE_GETUID */
 
diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c
--- a/clients/mapiclient/mclient.c
+++ b/clients/mapiclient/mclient.c
@@ -2849,15 +2849,33 @@ set_timezone(Mapi mid)
MapiHdl hdl;
 
/* figure out our current timezone */
-#ifdef HAVE__GET_TIMEZONE
-   __time64_t ltime, lt, gt;
-   struct tm loctime;
+#if defined HAVE_GETDYNAMICTIMEZONEINFORMATION
+   DYNAMIC_TIME_ZONE_INFORMATION tzinf;
 
-   _time64();
-   _localtime64_s(, );
-   lt = _mktime64();
-   gt = _mkgmtime64();
-   tzone = (int) (lt - gt);
+   /* documentation says: UTC = localtime + Bias (in minutes),
+* but experimentation during DST period says, UTC = localtime
+* + Bias + DaylightBias, and presumably during non DST
+* period, UTC = localtime + Bias */
+   switch (GetDynamicTimeZoneInformation()) {
+   case TIME_ZONE_ID_STANDARD:
+   case TIME_ZONE_ID_UNKNOWN:
+   tzone = (int) tzinf.Bias * 60;
+   break;
+   case TIME_ZONE_ID_DAYLIGHT:
+   tzone = (int) (tzinf.Bias + tzinf.DaylightBias) * 60;
+   break;
+   default:
+   /* call failed, we don't know the time zone */
+   tzone = 0;
+   break;
+   }
+#elif defined HAVE_STRUCT_TM_TM_ZONE
+   time_t t;
+   struct tm *tmp;
+
+   t = time(NULL);
+   tmp = localtime();
+   tzone = (int) -tmp->tm_gmtoff;
 #else
time_t t, lt, gt;
struct tm *tmp;
diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -3193,6 +3193,8 @@ if test $mn_cv_have__sys_siglist = yes; 
AC_DEFINE(HAVE__SYS_SIGLIST, 1, [Define if you have _sys_siglist])
 fi
 
+AC_STRUCT_TIMEZONE
+
 dnl check dependencies (might need more than just SQL)
 if test x"$enable_sql" = xyes && test x"$enable_monetdb5" = x"no" ; then
AC_MSG_ERROR([MonetDB/SQL requires MonetDB5${disable_monetdb5:+ 
$disable_monetdb5}.])
diff --git a/monetdb5/optimizer/opt_mergetable.c 
b/monetdb5/optimizer/opt_mergetable.c
--- a/monetdb5/optimizer/opt_mergetable.c
+++ b/monetdb5/optimizer/opt_mergetable.c
@@ -713,7 +713,7 @@ mat_joinNxM(Client cntxt, MalBlkPtr mb, 
int mv1 = mats[0], i;
int mv2 = mats[args-1];
int split = subjoin_split(cntxt, p, args);
-   int nr_mv1 = split, nr_mv2 = nr_mats-split;
+   int nr_mv1 = split;
 
if (split < 0) {
GDKfree(mats);
@@ -729,8 +729,8 @@ mat_joinNxM(Client cntxt, MalBlkPtr mb, 
getArg(q,1) = newTmpVariable(mb, tpe);
for (i = 0; i < nr_mv1; i++ )
getArg(q,q->retc+i) = 
getArg(mat[mats[i]].mi,k);
-   for (i = 0; i < nr_mv2; i++ )
-   getArg(q,q->retc+split+i) = 
getArg(mat[mats[i]].mi,k);
+   for (; i < nr_mats; i++ )
+   getArg(q,q->retc+i) = 
getArg(mat[mats[i]].mi,j);
pushInstruction(mb,q);

propagatePartnr(ml, getArg(mat[mv1].mi, k), 
getArg(q,0), nr);
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-28 Thread Sjoerd Mullender
Changeset: 760c3214f0c5 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=760c3214f0c5
Modified Files:
monetdb5/mal/mal_profiler.c
tools/mserver/mserver5.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (62 lines):

diff --git a/monetdb5/mal/mal_profiler.c b/monetdb5/mal/mal_profiler.c
--- a/monetdb5/mal/mal_profiler.c
+++ b/monetdb5/mal/mal_profiler.c
@@ -693,24 +693,16 @@ TRACEcreate(const char *hnme, const char
char buf[BUFSIZ];
 
snprintf(buf, BUFSIZ, "trace_%s_%s", hnme, tnme);
-   b = BATdescriptor(BBPindex(buf));
-   if (b) {
-   BBPincref(b->batCacheid, TRUE);
-   return b;
-   }
 
-   b = COLnew(0, tt, 1 << 16, PERSISTENT);
+   b = COLnew(0, tt, 1 << 16, TRANSIENT);
if (b == NULL)
return NULL;
-
-   BATmode(b, PERSISTENT);
BBPrename(b->batCacheid, buf);
-   BATcommit(b);
return b;
 }
 
 
-#define CLEANUPprofile(X)  if (X) { BBPdecref((X)->batCacheid, TRUE); 
(X)->batPersistence = TRANSIENT; } (X) = NULL;
+#define CLEANUPprofile(X)  if (X) { BBPunfix((X)->batCacheid); } (X) = NULL;
 
 static void
 _cleanupProfiler(void)
@@ -786,19 +778,7 @@ clearTrace(void)
return; /* not initialized */
}
/* drop all trace tables */
-   BBPclear(TRACE_id_event->batCacheid);
-   BBPclear(TRACE_id_time->batCacheid);
-   BBPclear(TRACE_id_pc->batCacheid);
-   BBPclear(TRACE_id_thread->batCacheid);
-   BBPclear(TRACE_id_ticks->batCacheid);
-   BBPclear(TRACE_id_rssMB->batCacheid);
-   BBPclear(TRACE_id_tmpspace->batCacheid);
-   BBPclear(TRACE_id_inblock->batCacheid);
-   BBPclear(TRACE_id_oublock->batCacheid);
-   BBPclear(TRACE_id_minflt->batCacheid);
-   BBPclear(TRACE_id_majflt->batCacheid);
-   BBPclear(TRACE_id_nvcsw->batCacheid);
-   BBPclear(TRACE_id_stmt->batCacheid);
+   _cleanupProfiler();
TRACE_init = 0;
MT_lock_unset(_contextLock);
initTrace();
diff --git a/tools/mserver/mserver5.c b/tools/mserver/mserver5.c
--- a/tools/mserver/mserver5.c
+++ b/tools/mserver/mserver5.c
@@ -281,6 +281,7 @@ main(int argc, char **av)
_CrtSetReportMode(_CRT_ERROR, 0);
_CrtSetReportMode(_CRT_ASSERT, 0);
_set_invalid_parameter_handler(mserver_invalid_parameter_handler);
+   _set_output_format(_TWO_DIGIT_EXPONENT);
 #endif
if (setlocale(LC_CTYPE, "") == NULL) {
GDKfatal("cannot set locale\n");
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-27 Thread Sjoerd Mullender
Changeset: 9a2ff0ca8d49 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9a2ff0ca8d49
Modified Files:
clients/mapiclient/stethoscope.c
clients/mapiclient/tachograph.c
clients/mapiclient/tomograph.c
sql/test/emptydb/updatetests
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (54 lines):

diff --git a/clients/mapiclient/stethoscope.c b/clients/mapiclient/stethoscope.c
--- a/clients/mapiclient/stethoscope.c
+++ b/clients/mapiclient/stethoscope.c
@@ -339,6 +339,9 @@ main(int argc, char **argv)
}
conn = mapi_get_from(dbh);
while ((n = mnstr_read(conn, buffer + len, 1, buflen - len-1)) >= 0) {
+   if (n == 0 &&
+   (n = mnstr_read(conn, buffer + len, 1, buflen - len-1)) <= 
0)
+   break;
buffer[len + n] = 0;
response = buffer;
if( debug)
diff --git a/clients/mapiclient/tachograph.c b/clients/mapiclient/tachograph.c
--- a/clients/mapiclient/tachograph.c
+++ b/clients/mapiclient/tachograph.c
@@ -521,6 +521,9 @@ main(int argc, char **argv)
}
conn = mapi_get_from(dbh);
while ((n = mnstr_read(conn, buffer + len, 1, buflen - len-1)) >= 0) {
+   if (n == 0 &&
+   (n = mnstr_read(conn, buffer + len, 1, buflen - len-1)) <= 
0)
+   break;
buffer[len + n] = 0;
response = buffer;
while ((e = strchr(response, '\n')) != NULL) {
diff --git a/clients/mapiclient/tomograph.c b/clients/mapiclient/tomograph.c
--- a/clients/mapiclient/tomograph.c
+++ b/clients/mapiclient/tomograph.c
@@ -1877,7 +1877,8 @@ main(int argc, char **argv)
resetTomograph();
conn = mapi_get_from(dbh);
while ((m = mnstr_read(conn, buffer + len, 1, buflen - len-1)) 
>= 0) {
-   if (m == 0 && (m = mnstr_read(conn, buffer + len, 1, 
buflen - len-1)) <= 0)
+   if (m == 0 &&
+   (m = mnstr_read(conn, buffer + len, 1, buflen - 
len-1)) <= 0)
break;
buffer[len + m] = 0;
response = buffer;
diff --git a/sql/test/emptydb/updatetests b/sql/test/emptydb/updatetests
--- a/sql/test/emptydb/updatetests
+++ b/sql/test/emptydb/updatetests
@@ -11,7 +11,10 @@ 1)
 fi
 ;;
 0)
-if [ -f Tests/load.sql ] && [ -f Tests/check.SQL.py ]; then
+case $0 in
+*/*) cd ${0%/*};;
+esac
+if [ -f Tests/load.sql ] && [ -f Tests/check.SQL.py.src ]; then
:
 else
echo "bad directory"
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-26 Thread Sjoerd Mullender
Changeset: 04a33eb12363 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=04a33eb12363
Modified Files:
clients/mapiclient/tomograph.c
monetdb5/mal/mal_runtime.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (23 lines):

diff --git a/clients/mapiclient/tomograph.c b/clients/mapiclient/tomograph.c
--- a/clients/mapiclient/tomograph.c
+++ b/clients/mapiclient/tomograph.c
@@ -1877,6 +1877,8 @@ main(int argc, char **argv)
resetTomograph();
conn = mapi_get_from(dbh);
while ((m = mnstr_read(conn, buffer + len, 1, buflen - len-1)) 
>= 0) {
+   if (m == 0 && (m = mnstr_read(conn, buffer + len, 1, 
buflen - len-1)) <= 0)
+   break;
buffer[len + m] = 0;
response = buffer;
while ((e = strchr(response, '\n')) != NULL) {
diff --git a/monetdb5/mal/mal_runtime.c b/monetdb5/mal/mal_runtime.c
--- a/monetdb5/mal/mal_runtime.c
+++ b/monetdb5/mal/mal_runtime.c
@@ -120,6 +120,7 @@ runtimeProfileFinish(Client cntxt, MalBl
}
 
qtop = j;
+   QRYqueue[qtop].query = NULL; /* sentinel for SYSMONqueue() */
MT_lock_unset(_delayLock);
 }
 
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-25 Thread Sjoerd Mullender
Changeset: eba84239e9ff for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=eba84239e9ff
Modified Files:
gdk/gdk_join.c
gdk/gdk_select.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (63 lines):

diff --git a/gdk/gdk_join.c b/gdk/gdk_join.c
--- a/gdk/gdk_join.c
+++ b/gdk/gdk_join.c
@@ -474,6 +474,8 @@ nomatch(BAT *r1, BAT *r2, BAT *l, BAT *r
} else {
cnt = lend - lstart;
HEAPfree(>theap, 1);
+   r1->theap.storage = r1->theap.newstorage = STORE_MEM;
+   r1->theap.size = 0;
r1->ttype = TYPE_void;
r1->tvarsized = 1;
r1->twidth = 0;
@@ -486,6 +488,8 @@ nomatch(BAT *r1, BAT *r2, BAT *l, BAT *r
r1->tnorevsorted = !(r1->trevsorted = BATcount(r1) <= 1);
if (r2) {
HEAPfree(>theap, 1);
+   r2->theap.storage = r2->theap.newstorage = STORE_MEM;
+   r2->theap.size = 0;
r2->ttype = TYPE_void;
r2->tvarsized = 1;
r2->twidth = 0;
@@ -617,6 +621,9 @@ mergejoin_void(BAT *r1, BAT *r2, BAT *l,
 * the result is the other
 * range and thus dense */
HEAPfree(>theap, 1);
+   r1->theap.storage = STORE_MEM;
+   r1->theap.newstorage = STORE_MEM;
+   r1->theap.size = 0;
r1->ttype = TYPE_void;
r1->tvarsized = 1;
r1->twidth = 0;
@@ -646,6 +653,9 @@ mergejoin_void(BAT *r1, BAT *r2, BAT *l,
}
r1->tdense = 1;
HEAPfree(>theap, 1);
+   r1->theap.storage = STORE_MEM;
+   r1->theap.newstorage = STORE_MEM;
+   r1->theap.size = 0;
r1->ttype = TYPE_void;
r1->tvarsized = 1;
r1->twidth = 0;
@@ -690,6 +700,9 @@ mergejoin_void(BAT *r1, BAT *r2, BAT *l,
if (r2) {
r2->tdense = 1;
HEAPfree(>theap, 1);
+   r2->theap.storage = STORE_MEM;
+   r2->theap.newstorage = STORE_MEM;
+   r2->theap.size = 0;
r2->ttype = TYPE_void;
r2->tvarsized = 1;
r2->twidth = 0;
diff --git a/gdk/gdk_select.c b/gdk/gdk_select.c
--- a/gdk/gdk_select.c
+++ b/gdk/gdk_select.c
@@ -59,6 +59,8 @@ virtualize(BAT *bn)
bn->tseqbase = * (const oid *) Tloc(bn, 0);
bn->tdense = 1;
HEAPfree(>theap, 1);
+   bn->theap.storage = bn->theap.newstorage = STORE_MEM;
+   bn->theap.size = 0;
bn->ttype = TYPE_void;
bn->tvarsized = 1;
bn->twidth = 0;
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-20 Thread Sjoerd Mullender
Changeset: 238d6c0ea486 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=238d6c0ea486
Modified Files:
testing/MkillUsers.in
testing/Mtest.py.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (130 lines):

diff --git a/testing/MkillUsers.in b/testing/MkillUsers.in
--- a/testing/MkillUsers.in
+++ b/testing/MkillUsers.in
@@ -71,7 +71,7 @@ if [   "$TEMPLATE_BUILD" ] ; then BINPAT
 if ["$SQL_BUILD" ] ; then BINPATH="$BINPATH
$SQL_BUILD/src/tools$SQL_BUILD/src/tools/.libs" ; fi
 if [   "$GEOM_BUILD" ] ; then BINPATH="$BINPATH   
$GEOM_BUILD/src/tools   $GEOM_BUILD/src/tools/.libs" ; fi
 for b in $BINPATH ; do
-   files="$files `ls $b/* 2>/dev/null | egrep 
'/(lt-)?(mserver5|Mserver|mclient|mclient\.py|Mdiff|Mlog|Mtimeout|pf|actuator|sensor)$'`"
+   files="$files `ls $b/* 2>/dev/null | egrep 
'/(lt-)?(mserver5|mclient|mclient\.py|Mdiff|Mlog|Mtimeout)$'`"
 done
 
 if type -p fuser >/dev/null
diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -1528,7 +1528,7 @@ def returnCode(proc, f = None):
 def GetBitsAndModsAndThreads(env) :
 global setpgrp
 rtrn = 0
-cmd = splitcommand(env['exe']['Mserver'][1])
+cmd = splitcommand(env['exe']['mserver5'][1])
 cmd.append('--dbpath=%s' % os.path.join(env['GDK_DBFARM'], TSTPREF))
 if env.get('MULTIFARM'):
 cmd.append('--dbextra=%s' % os.path.join(env['GDK_DBFARM'], TSTPREF + 
'_transient'))
@@ -1627,7 +1627,7 @@ def GetBitsAndModsAndThreads(env) :
 rtrn = 1
 else:
 rtrn = 1
-ErrMsg("No output from Mserver/mserver5 when checking for Bits, 
Modules & Threads!?")
+ErrMsg("No output from mserver5 when checking for Bits, Modules & 
Threads!?")
 if qErr:
 STDERR.write(' '.join(cmd) + "\n\n")
 STDERR.write(qErr)
@@ -1905,10 +1905,10 @@ def RunTest(env, TST, BusyPorts, COND, o
 elif EXT == ".sql" and  not env['exe']['SQL_Dump'][0]:
 reason = "as %s is not available." % env['SQLDUMP'].split(None, 1)[0]
 elem = SkipTest(env, TST, EXT, reason, length)
-elif SERVER in ["MAL", "SQL"] and not env['exe']['Mserver'][0]:
+elif SERVER in ["MAL", "SQL"] and not env['exe']['mserver5'][0]:
 reason = "as %s is not available." % env['MSERVER'].split(None, 1)[0]
 elem = SkipTest(env, TST, EXT, reason, length)
-elif EXT == ".malS" and not env['exe']['Mserver'][0]:
+elif EXT == ".malS" and not env['exe']['mserver5'][0]:
 reason = "as %s is not available." % env['MSERVER'].split(None, 1)[0]
 elem = SkipTest(env, TST, EXT, reason, length)
 elif CALL == "python"  and  not env['exe']['python'][0]:
@@ -2467,7 +2467,7 @@ def CheckSocket2(env,SERVER) :  #,SrvrEr
 os.environ[SERVER+'PORT'] = env[SERVER+'PORT']
 op = 'port=%d' % port
 np = 'port=%s' % env[SERVER+'PORT']
-env['exe']['Mserver']   = env['exe']['Mserver'][0]   , 
env['exe']['Mserver'][1].replace(op, np)
+env['exe']['mserver5']  = env['exe']['mserver5'][0]  , 
env['exe']['mserver5'][1].replace(op, np)
 env['exe']['MAL_Client']= env['exe']['MAL_Client'][0], 
env['exe']['MAL_Client'][1].replace(op, np)
 env['exe']['SQL_Client']= env['exe']['SQL_Client'][0], 
env['exe']['SQL_Client'][1].replace(op, np)
 env['exe']['SQL_Dump']  = env['exe']['SQL_Dump'][0]  , 
env['exe']['SQL_Dump'][1].replace(op, np)
@@ -2496,7 +2496,7 @@ def CheckSocket3(env,SERVER,ErrFileName)
 res = F_SOCK
 Smsg = """
 ! Socket-Check failed for %sserver on <%s:%d> with #%d; '%s' !
-! %sPORT was not properly released by Mserver/mserver5 !
+! %sPORT was not properly released by mserver5 !
 """ % (SERVER, host, port, Serrno, Serrstr, SERVER)
 STDERR.write(Smsg)
 STDERR.flush()
@@ -2746,7 +2746,7 @@ def DoIt(env, SERVER, CALL, TST, EXT, PR
 if dbinit:
 DBINIT = ['--dbinit=%s' % dbinit]
 
-Srvr = splitcommand(exe['Mserver'][1]) + LOCAL_CONF
+Srvr = splitcommand(exe['mserver5'][1]) + LOCAL_CONF
 if nomito:
 try:
 Srvr.remove('--forcemito')
@@ -2849,7 +2849,7 @@ def DoIt(env, SERVER, CALL, TST, EXT, PR
 cmd = splitcommand(exe['python'][1]) + [TST + EXT, TST] + 
PRELUDE
 returncode = RunIt(cmd, "", ClntOut, ClntErr, CTIMEOUT)
 elif CALL in ["mal", "malXs"]:
-cmd = splitcommand(exe['Mserver'][1]) + LOCAL_CONF + PRELUDE
+cmd = splitcommand(exe['mserver5'][1]) + LOCAL_CONF + PRELUDE
 cmd.append('--dbpath=%s' % os.path.join(env['GDK_DBFARM'], 
TSTDB))
 if env.get('MULTIFARM'):
 cmd.append('--dbextra=%s' % 
os.path.join(env['GDK_DBFARM'], TSTDB + '_transient'))
@@ -2938,7 +2938,7 @@ def DoIt(env, SERVER, 

MonetDB: default - Merge with Jun2016 branch.

2016-07-20 Thread Sjoerd Mullender
Changeset: 40809a0d2615 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=40809a0d2615
Modified Files:
clients/Tests/exports.stable.out
common/stream/stream.h
gdk/gdk.h
monetdb5/mal/mal_session.c
tools/merovingian/daemon/argvcmds.c
tools/merovingian/daemon/controlrunner.c
tools/merovingian/daemon/discoveryrunner.c
tools/merovingian/daemon/merovingian.c
tools/merovingian/utils/utils.c
tools/merovingian/utils/utils.h
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (272 lines):

diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -2558,7 +2558,7 @@ char *buffer_get_buf(buffer *b);
 void buffer_init(buffer *b, char *buf, size_t size);
 stream *buffer_rastream(buffer *b, const char *name);
 stream *buffer_wastream(buffer *b, const char *name);
-stream *callback_stream(void *private, ssize_t( *read)(void *private, void 
*buf, size_t elmsize, size_t cnt), void( *close)(void *private), void( 
*destroy)(void *private), const char *name);
+stream *callback_stream(void *priv, ssize_t( *read)(void *priv, void *buf, 
size_t elmsize, size_t cnt), void( *close)(void *priv), void( *destroy)(void 
*priv), const char *name);
 void close_stream(stream *s);
 stream *file_rastream(FILE *fp, const char *name);
 stream *file_rstream(FILE *fp, const char *name);
diff --git a/common/stream/stream.h b/common/stream/stream.h
--- a/common/stream/stream.h
+++ b/common/stream/stream.h
@@ -252,10 +252,10 @@ typedef enum mnstr_errors {
  * private pointer is passed on to the callback functions when they
  * are invoked. */
 stream_export stream *callback_stream(
-   void *private,
-   ssize_t (*read) (void *private, void *buf, size_t elmsize, size_t cnt),
-   void (*close) (void *private),
-   void (*destroy) (void *private),
+   void *priv,
+   ssize_t (*read) (void *priv, void *buf, size_t elmsize, size_t cnt),
+   void (*close) (void *priv),
+   void (*destroy) (void *priv),
const char *name);
 
 stream_export stream* stream_blackhole_create(void);
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1247,7 +1247,7 @@ gdk_export bte ATOMelmshift(int sz);
 
 #define bunfastapp(b, t)   \
do {\
-   register BUN _p = BUNlast(b);   \
+   BUN _p = BUNlast(b);\
if (_p >= BATcapacity(b)) { \
if (_p == BUN_MAX || BATcount(b) == BUN_MAX) {  \
GDKerror("bunfastapp: too many elements to 
accomodate (" BUNFMT ")\n", BUN_MAX); \
@@ -2475,7 +2475,7 @@ gdk_export void *THRdata[THREADDATA];
 #ifndef GDK_NOLINK
 
 static inline bat
-BBPcheck(register bat x, register const char *y)
+BBPcheck(bat x, const char *y)
 {
if (x && x != bat_nil) {
assert(x > 0);
@@ -2490,9 +2490,9 @@ BBPcheck(register bat x, register const 
 }
 
 static inline BAT *
-BATdescriptor(register bat i)
+BATdescriptor(bat i)
 {
-   register BAT *b = NULL;
+   BAT *b = NULL;
 
if (BBPcheck(i, "BATdescriptor")) {
BBPfix(i);
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
@@ -446,7 +446,9 @@ MSserveClient(void *dummy)
} else {
do {
do {
-   runScenario(c);
+   msg = runScenario(c);
+   if (msg != MAL_SUCCEED && msg != M5OutOfMemory)
+   GDKfree(msg);
if (c->mode == FINISHCLIENT)
break;
resetScenario(c);
diff --git a/tools/merovingian/daemon/argvcmds.c 
b/tools/merovingian/daemon/argvcmds.c
--- a/tools/merovingian/daemon/argvcmds.c
+++ b/tools/merovingian/daemon/argvcmds.c
@@ -448,6 +448,8 @@ command_stop(confkeyval *ckv, int argc, 
FILE *pfile = NULL;
char buf[8];
pid_t daemon;
+   struct timeval tv;
+   int i;
 
if (argc != 2) {
command_help(2, [-1]);
@@ -499,5 +501,14 @@ command_stop(confkeyval *ckv, int argc, 
return(1);
}
 
+   /* wait up to 5 seconds for monetdbd to actually stop */
+   for (i = 0; i < 10; i++) {
+   tv.tv_sec = 0;
+   tv.tv_usec = 500;
+   select(0, NULL, NULL, NULL, );
+   if (kill(daemon, 0) == -1)
+   break;
+   }
+
return(0);
 }
diff --git a/tools/merovingian/daemon/controlrunner.c 

MonetDB: default - Merge with Jun2016 branch.

2016-07-19 Thread Stefan Manegold
Changeset: 14192af45225 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=14192af45225
Added Files:
sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.sql

sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.stable.err

sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.stable.out
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.sql
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.err

sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.err.int128
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out

sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out.int128
Modified Files:
java/tests/Test_CisValid.java
sql/jdbc/tests/Tests/Test_CisValid.stable.err
sql/test/BugTracker-2016/Tests/All
testing/Mtest.py.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 23166 to 300 lines):

diff --git a/java/tests/Test_CisValid.java b/java/tests/Test_CisValid.java
--- a/java/tests/Test_CisValid.java
+++ b/java/tests/Test_CisValid.java
@@ -18,15 +18,23 @@ public class Test_CisValid {
Connection conn = DriverManager.getConnection(args[0]);
Statement stmt = conn.createStatement();
 
-   conn.setAutoCommit(false); // start a transaction
try {
+   conn.setAutoCommit(false); // start a transaction
stmt.execute("SELECT COUNT(*) FROM doesnotexist;"); // 
let's trigger an error
} catch (SQLException e) {
-   e.printStackTrace();
-   System.out.println("Validating connection: 
conn.isValid? " + conn.isValid(30)); // Can we rollback on this connection?
-   conn.rollback();
+   // e.printStackTrace();
+   System.err.println("Expected error: " + e);
+
+   try {
+   // test calling conn.isValid()
+   System.out.println("Validating connection: 
conn.isValid? " + conn.isValid(30));
+   // Can we rollback on this connection without 
causing an error?
+   conn.rollback();
+   } catch (SQLException e2) {
+   System.err.println("UnExpected error: " + e2);
+   }
}
-   
+
stmt.close();
conn.close();
}
diff --git a/sql/jdbc/tests/Tests/Test_CisValid.stable.err 
b/sql/jdbc/tests/Tests/Test_CisValid.stable.err
--- a/sql/jdbc/tests/Tests/Test_CisValid.stable.err
+++ b/sql/jdbc/tests/Tests/Test_CisValid.stable.err
@@ -35,12 +35,7 @@ stderr of test 'Test_CisValid` in direct
 # 23:03:08 >  java Test_CisValid 
"jdbc:monetdb://toulouse:36086/mTests_sql_jdbc_tests?user=monetdb=monetdb"
 # 23:03:08 >  
 
-java.sql.SQLException: SELECT: no such table 'doesnotexist'
-   at 
nl.cwi.monetdb.jdbc.MonetConnection$ResponseList.executeQuery(MonetConnection.java:2602)
-   at 
nl.cwi.monetdb.jdbc.MonetConnection$ResponseList.processQuery(MonetConnection.java:2350)
-   at 
nl.cwi.monetdb.jdbc.MonetStatement.internalExecute(MonetStatement.java:507)
-   at nl.cwi.monetdb.jdbc.MonetStatement.execute(MonetStatement.java:345)
-   at Test_CisValid.main(Test_CisValid.java:23)
+Expected error: java.sql.SQLException: SELECT: no such table 'doesnotexist'
 
 # 23:03:08 >  
 # 23:03:08 >  "Done."
diff --git a/sql/test/BugTracker-2016/Tests/All 
b/sql/test/BugTracker-2016/Tests/All
--- a/sql/test/BugTracker-2016/Tests/All
+++ b/sql/test/BugTracker-2016/Tests/All
@@ -1,3 +1,5 @@
+convert-function-test.Bug-3460
+HAVE_HGE?convert-function-test-hge.Bug-3460
 HAVE_GEOM?storagemodel
 LEFT-JOIN_with_OR_conditions_triggers_assertion.Bug-3908
 incorrect_column_name_in_OR_condition_of_LEFT-JOIN_crashes_mserver.Bug-3909
diff --git 
a/sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.sql 
b/sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.sql
@@ -0,0 +1,97 @@
+-- test SQL functions: convert(fromType, toType) and cast(fromType as toType) 
for all SQL data types and data values
+-- See also https://www.monetdb.org/bugzilla/show_bug.cgi?id=3460
+
+-- HUGEINT  (for int128 only)
+CREATE TABLE T_hugeint (v hugeint);
+INSERT into T_hugeint VALUES (1), (0), (-1), (-127), (127), (-32767), (32767), 
(-2147483647), (2147483647);
+INSERT into T_hugeint VALUES (null);
+SELECT v FROM T_hugeint ORDER BY v;
+
+-- test convert()
+SELECT v, convert(v, boolean) from T_hugeint;
+SELECT v, convert(v, bit) from T_hugeint; -- BIT not valid data type
+SELECT v, convert(v, tinyint) from 

MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-07-13 Thread Sjoerd Mullender
Changeset: e813a65e083e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e813a65e083e
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files..

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-13 Thread Sjoerd Mullender
Changeset: c2d2a09e82e6 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c2d2a09e82e6
Modified Files:
.hgtags
MonetDB.spec
debian/changelog
java/ChangeLog-Archive
java/ChangeLog.Jun2016
java/Makefile.ag
java/build.properties
java/pom.xml
java/release.txt
libversions
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (247 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -629,3 +629,6 @@ 192e3168234a5f9f8a4d1c4ce17805f608f001c3
 b29fdfe9c590f674208212bf4ead617beef4b73c Jun2016_release
 4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_5
 4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_SP1_release
+c8b06c670a635978640d742643c317b82c5f4b8c Jun2016_7
+4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_SP1_release
+c8b06c670a635978640d742643c317b82c5f4b8c Jun2016_SP1_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -962,6 +962,44 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Wed Jul 13 2016 Sjoerd Mullender  - 11.23.7-20160713
+- Rebuilt.
+- BZ#4014: KILL signal
+- BZ#4021: Analyze query does not escape input [security]
+- BZ#4026: JDBC driver incorrectly converts TINYINT fields to String
+  instead of an integer type.
+- BZ#4028: inputs not the same size
+- BZ#4032: no decimal places after update. ODBC driver
+- BZ#4035: SQL Function call bug
+- BZ#4036: Possible sql_catalog corruption due to unclean backuped tail
+
+* Thu Jul  7 2016 Martin van Dinther  
- 11.23.7-20160713
+- java: Corrected PROCEDURE_TYPE output value of method 
DatabaseMetaData.getProcedures().
+  It used to return procedureReturnsResult. Now it returns procedureNoResult.
+  Corrected ORDINAL_POSITION output value of method 
DatabaseMetaData.getProcedureColumns().
+  It used to start with 0, but as procedures do not return a result value it 
now
+  starts with 1 for all the procedure arguments, as defined by the JDBC API.
+- java: Improved output of method DatabaseMetaData.getProcedures(). The REMARKS
+  column now contains the procedure definition as stored in sys.functions.func.
+  The SPECIFIC_NAME column now contains the procedure unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the specific
+  overloaded procedure which has the same name, but different arguments.
+  Also improved output of method DatabaseMetaData.getProcedureColumns().
+  The SPECIFIC_NAME column now contains the procedure unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the proper
+  arguments of the specific overloaded procedure by matching the SPECIFIC_NAME
+  value.
+- java: Improved output of method DatabaseMetaData.getFunctions(). The REMARKS
+  column now contains the function definition as stored in sys.functions.func.
+  The SPECIFIC_NAME column now contains the function unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the specific
+  overloaded function which has the same name, but different arguments.
+  Also improved output of method DatabaseMetaData.getFunctionColumns().
+  The SPECIFIC_NAME column now contains the function unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the proper
+  arguments of the specific overloaded function by matching the SPECIFIC_NAME
+  value.
+
 * Mon Jul 04 2016 Sjoerd Mullender  - 11.23.5-20160704
 - Rebuilt.
 - BZ#4031: mclient doesn't accept - argument to refer to stdin
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,47 @@
+monetdb (11.23.7) unstable; urgency=low
+
+  * Rebuilt.
+  * BZ#4014: KILL signal
+  * BZ#4021: Analyze query does not escape input [security]
+  * BZ#4026: JDBC driver incorrectly converts TINYINT fields to String
+instead of an integer type.
+  * BZ#4028: inputs not the same size
+  * BZ#4032: no decimal places after update. ODBC driver
+  * BZ#4035: SQL Function call bug
+  * BZ#4036: Possible sql_catalog corruption due to unclean backuped tail
+
+ -- Sjoerd Mullender   Wed, 13 Jul 2016 14:33:03 +0200
+
+monetdb (11.23.7) unstable; urgency=low
+
+  * java: Corrected PROCEDURE_TYPE output value of method 
DatabaseMetaData.getProcedures().
+It used to return procedureReturnsResult. Now it returns procedureNoResult.
+Corrected ORDINAL_POSITION output value of method 
DatabaseMetaData.getProcedureColumns().
+It used to start with 0, but as procedures do not return a result value it 
now
+starts with 1 for all the procedure arguments, as defined by the JDBC API.
+  * java: Improved output of method DatabaseMetaData.getProcedures(). The 
REMARKS
+column now contains the procedure definition as stored in 
sys.functions.func.
+The SPECIFIC_NAME column now contains the procedure 

MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-07-13 Thread Sjoerd Mullender
Changeset: ee9e0c2372f7 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ee9e0c2372f7
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files.

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-13 Thread Sjoerd Mullender
Changeset: 938cec0c246d for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=938cec0c246d
Modified Files:
sql/backends/monet5/sql_execute.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (20 lines):

diff --git a/sql/backends/monet5/sql_execute.c 
b/sql/backends/monet5/sql_execute.c
--- a/sql/backends/monet5/sql_execute.c
+++ b/sql/backends/monet5/sql_execute.c
@@ -415,13 +415,9 @@ SQLstatementIntern(Client c, str *expr, 
if (result) { /* return all results sets */
*result = m->results;
} else {
-   int i;
-   for (i = 0; i < m->results->nr_cols; i++) {
-   GDKfree(m->results->cols[i].tn);
-   GDKfree(m->results->cols[i].name);
-   }
-   GDKfree(m->results->cols);
-   GDKfree(m->results);
+   if (m->results == o->results)
+   o->results = NULL;
+   res_tables_destroy(m->results);
}
m->results = NULL;
}
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-12 Thread Sjoerd Mullender
Changeset: a152218822a0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a152218822a0
Modified Files:
monetdb5/modules/atoms/batxml.c
monetdb5/modules/atoms/blob.c
monetdb5/modules/atoms/blob.h
monetdb5/modules/atoms/color.h
monetdb5/modules/atoms/identifier.c
monetdb5/modules/atoms/inet.c
monetdb5/modules/atoms/json.h
monetdb5/modules/atoms/mcurl.c
monetdb5/modules/atoms/mtime.h
monetdb5/modules/atoms/str.h
monetdb5/modules/atoms/streams.h
monetdb5/modules/atoms/url.c
monetdb5/modules/atoms/url.h
monetdb5/modules/atoms/uuid.c
monetdb5/modules/atoms/xml.h
monetdb5/modules/kernel/aggr.c
monetdb5/modules/kernel/alarm.c
monetdb5/modules/kernel/algebra.h
monetdb5/modules/kernel/bat5.h
monetdb5/modules/kernel/batcolor.h
monetdb5/modules/kernel/batmmath.h
monetdb5/modules/kernel/batstr.c
monetdb5/modules/kernel/group.h
monetdb5/modules/kernel/logger.c
monetdb5/modules/kernel/microbenchmark.h
monetdb5/modules/kernel/mmath.h
monetdb5/modules/kernel/status.h
monetdb5/modules/mal/batExtensions.h
monetdb5/modules/mal/batcalc.c
monetdb5/modules/mal/bbp.h
monetdb5/modules/mal/calc.c
monetdb5/modules/mal/clients.h
monetdb5/modules/mal/factories.h
monetdb5/modules/mal/groupby.h
monetdb5/modules/mal/inspect.h
monetdb5/modules/mal/iterator.h
monetdb5/modules/mal/json_util.h
monetdb5/modules/mal/language.h
monetdb5/modules/mal/mal_io.h
monetdb5/modules/mal/mal_mapi.h
monetdb5/modules/mal/manifold.h
monetdb5/modules/mal/manual.h
monetdb5/modules/mal/mat.h
monetdb5/modules/mal/mdb.h
monetdb5/modules/mal/mkey.h
monetdb5/modules/mal/pcre.c
monetdb5/modules/mal/profiler.h
monetdb5/modules/mal/projectionpath.h
monetdb5/modules/mal/querylog.h
monetdb5/modules/mal/recycle.h
monetdb5/modules/mal/remote.h
monetdb5/modules/mal/sabaoth.h
monetdb5/modules/mal/sample.h
monetdb5/modules/mal/sysmon.h
monetdb5/modules/mal/tablet.h
monetdb5/modules/mal/tokenizer.h
monetdb5/modules/mal/transaction.c
monetdb5/modules/mal/txtsim.h
monetdb5/modules/mal/zorder.h
monetdb5/optimizer/opt_aliases.h
monetdb5/optimizer/opt_candidates.h
monetdb5/optimizer/opt_coercion.h
monetdb5/optimizer/opt_commonTerms.h
monetdb5/optimizer/opt_constants.h
monetdb5/optimizer/opt_costModel.h
monetdb5/optimizer/opt_dataflow.h
monetdb5/optimizer/opt_deadcode.h
monetdb5/optimizer/opt_evaluate.h
monetdb5/optimizer/opt_factorize.h
monetdb5/optimizer/opt_garbageCollector.h
monetdb5/optimizer/opt_generator.h
monetdb5/optimizer/opt_inline.h
monetdb5/optimizer/opt_json.h
monetdb5/optimizer/opt_macro.h
monetdb5/optimizer/opt_matpack.h
monetdb5/optimizer/opt_mergetable.h
monetdb5/optimizer/opt_mitosis.h
monetdb5/optimizer/opt_multiplex.h
monetdb5/optimizer/opt_pipes.h
monetdb5/optimizer/opt_prelude.h
monetdb5/optimizer/opt_profiler.h
monetdb5/optimizer/opt_projectionpath.h
monetdb5/optimizer/opt_pushselect.h
monetdb5/optimizer/opt_querylog.h
monetdb5/optimizer/opt_recycler.h
monetdb5/optimizer/opt_reduce.h
monetdb5/optimizer/opt_remap.h
monetdb5/optimizer/opt_remoteQueries.h
monetdb5/optimizer/opt_reorder.h
monetdb5/optimizer/opt_statistics.h
monetdb5/optimizer/opt_support.h
monetdb5/optimizer/opt_volcano.h
monetdb5/optimizer/opt_wrapper.c
monetdb5/optimizer/optimizer.h
monetdb5/scheduler/run_adder.h
monetdb5/scheduler/run_isolate.h
monetdb5/scheduler/run_memo.h
monetdb5/scheduler/run_pipeline.h
monetdb5/scheduler/srvpool.h
sql/backends/monet5/sql_execute.c
tools/merovingian/daemon/merovingian.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 6100 to 300 lines):

diff --git a/monetdb5/modules/atoms/batxml.c b/monetdb5/modules/atoms/batxml.c
--- a/monetdb5/modules/atoms/batxml.c
+++ b/monetdb5/modules/atoms/batxml.c
@@ -35,32 +35,26 @@
 #include "mal_function.h"
 #include "xml.h"
 
-#ifdef WIN32
-#define batxml_export extern __declspec(dllexport)
-#else
-#define batxml_export extern
-#endif
-
-batxml_export str BATXMLxml2str(bat *ret, const bat *bid);
-batxml_export str BATXMLxmltext(bat *ret, const bat *bid);
-batxml_export str BATXMLstr2xml(bat *ret, const bat *bid);
-batxml_export str BATXMLdocument(bat *ret, const bat *bid);
-batxml_export str BATXMLcontent(bat *ret, const bat *bid);
-batxml_export str BATXMLisdocument(bat *ret, 

MonetDB: default - Merge with Jun2016 branch.

2016-07-12 Thread Sjoerd Mullender
Changeset: a8b6cc1b2dda for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a8b6cc1b2dda
Modified Files:
testing/Mtest.py.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (133 lines):

diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -950,7 +950,7 @@ def CreateSrcIndex (env, TST, EXT) :
 tr = Element('tr', {},
  Element('th', {'class': 'header'},
  Text(TST)))
-for s in os.listdir(TSTSRCDIR):
+for s in listdir(TSTSRCDIR):
 if s.startswith(TST):
 slink = Text(s)
 if URLPREFIX:
@@ -1120,7 +1120,7 @@ def find_test_dirs(thisdir) :
 testdirs = []
 thisdir = os.path.realpath(thisdir)
 dirnme = os.path.basename(thisdir)
-dirlst = os.listdir(thisdir)
+dirlst = listdir(thisdir)
 if dirnme == TSTSUFF  and  "All" in dirlst  and  
os.path.isfile(os.path.join(thisdir,"All")):
 testdirs.append(os.path.dirname(thisdir))
 for d in dirlst:
@@ -1264,7 +1264,7 @@ def PerformDir(env, testdir, testlist, B
 elem = AddSubToHtmlIndex(env, TSTDIR, max(FdOut,FdErr))
 
 # remove extra files created by tests
-for f in os.listdir(TSTTRGDIR):
+for f in listdir(TSTTRGDIR):
 ff = os.path.join(TSTTRGDIR, f)
 if os.path.islink(ff):
 continue
@@ -1409,7 +1409,7 @@ def ApproveOutput (env, TST) :
 test = re.compile('^%s.*$' % re.escape(file))
 list = []
 if not NOPATCH:
-for f in os.listdir(dir or os.curdir):
+for f in listdir(dir or os.curdir):
 if f.endswith('.rej') or f.endswith('.orig') or 
f.endswith('~'):
 pass
 elif f != thefile and test.match(f):
@@ -1703,7 +1703,7 @@ def StableOutErr(env,par,TST,SYST,RELEAS
 dir,file = os.path.split(TST)
 outre = 
re.compile(r'^%s\.stable\.(?Pout|err)(\.(%s(%s)?|%s(%s)?))?(\.%s)?(\.%s)?%s%s%s$'
 % (re.escape(file), re.escape(SYST), re.escape(RELEASE), re.escape(DIST), 
re.escape(VERSION), BITS, OIDS, INT128, SINGLE, STATIC))
 bestout = besterr = ''
-for f in os.listdir(dir or os.curdir):
+for f in listdir(dir or os.curdir):
 res = outre.match(f)
 if res is not None:
 if res.group('tp') == 'out':
@@ -1953,7 +1953,7 @@ def RunTest(env, TST, BusyPorts, COND, o
 elem = SkipTest(env, TST, EXT, reason, length)
 else:
 test = re.compile("^"+TST+"((_[sp][0-9][0-9])?\..*)?$", re.MULTILINE)
-for f in os.listdir(RELSRCDIR):
+for f in listdir(RELSRCDIR):
 if test.match(f):
 try:
 SymlinkOrCopy(os.path.join(RELSRCDIR, f), f)
@@ -1992,7 +1992,7 @@ def RunTest(env, TST, BusyPorts, COND, o
 MAPIsockets[1].close()
 return TX,Failed,Failed,elem,reason,links
 test = re.compile("^"+TST+"((_[sp][0-9][0-9])?\..*)?\.src$", 
re.MULTILINE)
-for ff in os.listdir(TSTTRGDIR):
+for ff in listdir(TSTTRGDIR):
 if test.match(ff) and not os.path.isfile(ff[:-4]):
 f = open(ff,"r")
 TSTSRC = expandvars(path(f.readline().strip()), env)
@@ -2007,7 +2007,7 @@ def RunTest(env, TST, BusyPorts, COND, o
 else:
 Warn("source file '"+TSTSRC+"` is missing.")
 test = re.compile("^"+TST+"(_[sp][0-9][0-9])?\..*\.in$", re.MULTILINE)
-for ff in os.listdir(TSTTRGDIR):
+for ff in listdir(TSTTRGDIR):
 fff = ff[:-3]
 if test.match(ff) and not os.path.isfile(fff):
 f = open(fff,"w")
@@ -2048,7 +2048,7 @@ def RunTest(env, TST, BusyPorts, COND, o
 CTIMEOUT = CTIMEOUT + min(TIMEOUT, par['TIMEOUT'])
 elif CALL in ["malXs", "sqlXs"]:
 test = re.compile("^"+TST+"_s[0-9][0-9]"+EXT+"$", re.MULTILINE)
-d = os.listdir(os.getcwd())
+d = listdir(os.getcwd())
 for f in d:
 if test.match(f):
 CTIMEOUT = CTIMEOUT + TIMEOUT
@@ -2883,7 +2883,7 @@ def DoIt(env, SERVER, CALL, TST, EXT, PR
 else:
 X="_s[0-9][0-9]"
 test = re.compile("^"+TST+X+EXT+"$", re.MULTILINE)
-d = os.listdir(os.getcwd())
+d = listdir(os.getcwd())
 d.sort()
 for f in d:
 if test.match(f):
@@ -2898,7 +2898,7 @@ def DoIt(env, SERVER, CALL, TST, EXT, PR
 else:
 X="_s[0-9][0-9]"
 test = re.compile("^"+TST+X+EXT+"$", re.MULTILINE)
-d = os.listdir(os.getcwd())
+d = listdir(os.getcwd())
 d.sort()
 for f in d:
 if test.match(f):
@@ -2920,7 +2920,7 @@ 

MonetDB: default - Merge with Jun2016 branch.

2016-07-11 Thread Sjoerd Mullender
Changeset: 04f9b9224246 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=04f9b9224246
Added Files:
sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.sql

sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.err

sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.out
Modified Files:
monetdb5/mal/mal_resolve.c
sql/test/BugTracker-2016/Tests/All
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (135 lines):

diff --git a/monetdb5/mal/mal_resolve.c b/monetdb5/mal/mal_resolve.c
--- a/monetdb5/mal/mal_resolve.c
+++ b/monetdb5/mal/mal_resolve.c
@@ -586,7 +586,7 @@ typeChecker(stream *out, Module scope, M
 
p->typechk = TYPE_UNKNOWN;
olderrors = mb->errors;
-   if (p->fcn && p->token >= FCNcall && p->token <= PATcall) {
+   if ((p->fcn || p->blk) && p->token >= FCNcall && p->token <= PATcall) {
p->token = ASSIGNsymbol;
p->fcn = NULL;
p->blk = NULL;
diff --git a/sql/test/BugTracker-2016/Tests/All 
b/sql/test/BugTracker-2016/Tests/All
--- a/sql/test/BugTracker-2016/Tests/All
+++ b/sql/test/BugTracker-2016/Tests/All
@@ -36,3 +36,4 @@ RELEASE_SAVEPOINT_after_ALTER_TABLE_cras
 RELEASE_SAVEPOINT_after_UPDATE_crash.Bug-4010
 analyze-quotes-incorrectly.Bug-4021
 boolean-evaluation.Bug-4025
+HAVE_GEOM?nested-mal-with-multiplex.Bug-4035
diff --git 
a/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.sql 
b/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.sql
@@ -0,0 +1,15 @@
+CREATE FUNCTION geographic_to_cartesian(lat FLOAT, lon FLOAT) RETURNS POINT /* 
convert geographic coordinates to Cartesian while creating a point */
+BEGIN
+DECLARE deg_to_rad FLOAT, lat_rad FLOAT, lon_rad FLOAT, aux1 FLOAT, aux2 
FLOAT;
+SET deg_to_rad = pi() / 180;
+SET lat_rad = lat * deg_to_rad;
+SET lon_rad = lon * deg_to_rad;
+SET aux1 = sys.cos(lat_rad);
+SET aux2 = 6371 * aux1;
+RETURN sys.st_makepoint(aux2 * sys.cos(lon_rad), aux2 * sys.sin(lon_rad), 
6371 * sys.sin(lat_rad));
+END;
+CREATE TABLE test_table (lat FLOAT, lon FLOAT);
+SELECT geographic_to_cartesian(lat, lon) AS calc_point FROM test_table;
+
+DROP TABLE test_table;
+DROP FUNCTION geographic_to_cartesian;
diff --git 
a/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.err 
b/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.err
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.err
@@ -0,0 +1,35 @@
+stderr of test 'nested-mal-with-multiplex.Bug-4035` in directory 
'sql/test/BugTracker-2016` itself:
+
+
+# 15:47:42 >  
+# 15:47:42 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=33295" "--set" 
"mapi_usock=/var/tmp/mtest-30631/.s.monetdb.33295" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/ufs/sjoerd/Monet-candidate/var/MonetDB/mTests_sql_test_BugTracker-2016"
 "--set" "embedded_r=yes"
+# 15:47:42 >  
+
+# builtin opt  gdk_dbpath = 
/ufs/sjoerd/Monet-candidate/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 = 33295
+# cmdline opt  mapi_usock = /var/tmp/mtest-30631/.s.monetdb.33295
+# cmdline opt  monet_prompt = 
+# cmdline opt  gdk_dbpath = 
/ufs/sjoerd/Monet-candidate/var/MonetDB/mTests_sql_test_BugTracker-2016
+# cmdline opt  embedded_r = yes
+# cmdline opt  gdk_debug = 536870922
+
+# 15:47:43 >  
+# 15:47:43 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-30631" "--port=33295"
+# 15:47:43 >  
+
+
+# 15:47:43 >  
+# 15:47:43 >  "Done."
+# 15:47:43 >  
+
diff --git 
a/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.out 
b/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.out
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2016/Tests/nested-mal-with-multiplex.Bug-4035.stable.out
@@ -0,0 +1,50 @@
+stdout of test 'nested-mal-with-multiplex.Bug-4035` in directory 
'sql/test/BugTracker-2016` itself:
+
+
+# 15:47:42 >  
+# 15:47:42 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=33295" "--set" 
"mapi_usock=/var/tmp/mtest-30631/.s.monetdb.33295" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/ufs/sjoerd/Monet-candidate/var/MonetDB/mTests_sql_test_BugTracker-2016"
 "--set" "embedded_r=yes"
+# 15:47:42 >  
+
+# MonetDB 5 server v11.23.6 (hg 

MonetDB: default - Merge with Jun2016 branch.

2016-07-08 Thread Sjoerd Mullender
Changeset: 9c7ae15b57cc for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9c7ae15b57cc
Modified Files:
NT/Makefile
NT/monetdb_config.h.in
gdk/gdk_bbp.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (86 lines):

diff --git a/NT/Makefile b/NT/Makefile
--- a/NT/Makefile
+++ b/NT/Makefile
@@ -16,7 +16,7 @@ all: _all
 
 !INCLUDE "$(TOPDIR)\..\NT\rules.msc"
 
-_all: update_winconfig_conds_py "$(srcdir)\Makefile.msc" monetdb_config.h 
unistd.h inttypes.h .monetdb
+_all: update_winconfig_conds_py "$(srcdir)\Makefile.msc" monetdb_config.h 
unistd.h .monetdb
$(MAKE) /nologo /f "$(srcdir)\Makefile.msc" "prefix=$(prefix)" 
"bits=$(bits)" all
 
 install: targetdirs all
@@ -46,14 +46,6 @@ unistd.h:
$(ECHO) #endif >> unistd.h
$(ECHO) #endif >> unistd.h
 
-inttypes.h:
-   $(ECHO) typedef signed char int8_t; > inttypes.h
-   $(ECHO) typedef unsigned char uint8_t; >> inttypes.h
-   $(ECHO) typedef short int16_t; >> inttypes.h
-   $(ECHO) typedef unsigned short uint16_t; >> inttypes.h
-   $(ECHO) typedef int int32_t; >> inttypes.h
-   $(ECHO) typedef unsigned int uint32_t; >> inttypes.h
-
 .monetdb:
$(ECHO) user=monetdb> .monetdb
$(ECHO) password=monetdb>> .monetdb
diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -148,7 +148,7 @@
 /* #undef HAVE_FDATASYNC */
 
 /* Define to 1 if you have the  header file. */
-#if !defined(_MSC_VER) || _MSC_VER > 1600
+#if !defined(_MSC_VER) || _MSC_VER >= 1800
 #define HAVE_FENV_H 1
 #endif
 
@@ -234,7 +234,9 @@
 /* #undef HAVE_IEEEFP_H */
 
 /* Define to 1 if you have the  header file. */
-#define HAVE_INTTYPES_H 1  /* generated by the Makefile */
+#if !defined(_MSC_VER) || _MSC_VER >= 1800
+#define HAVE_INTTYPES_H 1
+#endif
 
 /* Define to 1 if you have the  header file. */
 #define HAVE_IO_H 1
@@ -526,13 +528,15 @@
 #define HAVE_SQLGETPRIVATEPROFILESTRING 1
 
 /* Define to 1 if stdbool.h conforms to C99. */
-/* #undef HAVE_STDBOOL_H */
+#if !defined(_MSC_VER) || _MSC_VER >= 1800
+#define HAVE_STDBOOL_H 1
+#endif
 
 /* Define to 1 if you have the  header file. */
 #define HAVE_STDDEF_H 1
 
 /* Define to 1 if you have the  header file. */
-#if !defined(_MSC_VER) || _MSC_VER > 1600
+#if !defined(_MSC_VER) || _MSC_VER >= 1600
 #define HAVE_STDINT_H 1
 #endif
 
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -76,6 +76,14 @@
 #include "gdk_private.h"
 #include "gdk_storage.h"
 #include "mutils.h"
+
+#ifndef F_OK
+#define F_OK 0
+#endif
+#ifdef _MSC_VER
+#define access(f, m)   _access(f, m)
+#endif
+
 /*
  * The BBP has a fixed address, so re-allocation due to a growing BBP
  * caused by one thread does not disturb reads to the old entries by
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-08 Thread Sjoerd Mullender
Changeset: e208196ce716 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e208196ce716
Modified Files:
gdk/gdk_bbp.c
gdk/gdk_logger.c
java/ChangeLog.Jun2016
java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 484 to 300 lines):

diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -3653,6 +3653,18 @@ BBPsync(int cnt, bat *subcommit)
if (BBP_status(i) & BBPEXISTING) {
if (b != NULL && BBPbackup(b, subcommit != 
NULL) != GDK_SUCCEED)
break;
+   } else if (subcommit && (b = BBP_desc(i)) && 
BBP_status(i) & BBPDELETED) {
+   char o[10];
+   char *f;
+   snprintf(o, sizeof(o), "%o", b->batCacheid);
+   f = GDKfilepath(b->theap.farmid, BAKDIR, o, 
"tail");
+   if (access(f, F_OK) == 0)
+   file_move(b->theap.farmid, BAKDIR, 
SUBDIR, o, "tail");
+   GDKfree(f);
+   f = GDKfilepath(b->theap.farmid, BAKDIR, o, 
"theap");
+   if (access(f, F_OK) == 0)
+   file_move(b->theap.farmid, BAKDIR, 
SUBDIR, o, "theap");
+   GDKfree(f);
}
}
if (idx < cnt)
diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1250,7 +1250,6 @@ bm_subcommit(logger *lg, BAT *list_bid, 
n[i++] = catalog_bid->batCacheid;
n[i++] = catalog_nme->batCacheid;
n[i++] = dcatalog->batCacheid;
-   assert((BUN) i <= nn);
if (BATcount(dcatalog) > (BATcount(catalog_nme)/2) && catalog_bid == 
list_bid && catalog_nme == list_nme && lg->catalog_bid == catalog_bid) {
BAT *bids, *nmes, *tids = bm_tids(catalog_bid, dcatalog), *b;
 
@@ -1276,6 +1275,7 @@ bm_subcommit(logger *lg, BAT *list_bid, 
lg->catalog_bid = catalog_bid = bids;
lg->catalog_nme = catalog_nme = nmes;
}
+   assert((BUN) i <= nn);
BATcommit(catalog_bid);
BATcommit(catalog_nme);
BATcommit(dcatalog);
diff --git a/java/ChangeLog.Jun2016 b/java/ChangeLog.Jun2016
--- a/java/ChangeLog.Jun2016
+++ b/java/ChangeLog.Jun2016
@@ -1,3 +1,30 @@
 # ChangeLog file for java
 # This file is updated with Maddlog
 
+* Thu Jul  7 2016 Martin van Dinther 
+- Corrected PROCEDURE_TYPE output value of method 
DatabaseMetaData.getProcedures().
+  It used to return procedureReturnsResult. Now it returns procedureNoResult.
+  Corrected ORDINAL_POSITION output value of method 
DatabaseMetaData.getProcedureColumns().
+  It used to start with 0, but as procedures do not return a result value it 
now
+  starts with 1 for all the procedure arguments, as defined by the JDBC API.
+- Improved output of method DatabaseMetaData.getProcedures(). The REMARKS
+  column now contains the procedure definition as stored in sys.functions.func.
+  The SPECIFIC_NAME column now contains the procedure unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the specific
+  overloaded procedure which has the same name, but different arguments.
+  Also improved output of method DatabaseMetaData.getProcedureColumns().
+  The SPECIFIC_NAME column now contains the procedure unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the proper
+  arguments of the specific overloaded procedure by matching the SPECIFIC_NAME
+  value.
+- Improved output of method DatabaseMetaData.getFunctions(). The REMARKS
+  column now contains the function definition as stored in sys.functions.func.
+  The SPECIFIC_NAME column now contains the function unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the specific
+  overloaded function which has the same name, but different arguments.
+  Also improved output of method DatabaseMetaData.getFunctionColumns().
+  The SPECIFIC_NAME column now contains the function unique identifier as
+  stored in sys.functions.id. This allows the caller to retrieve the proper
+  arguments of the specific overloaded function by matching the SPECIFIC_NAME
+  value.
+
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -21,7 +21,6 @@ import java.util.ArrayList;
 
 /**
  * A DatabaseMetaData object suitable for the MonetDB database.
- * 
  *
  * 

MonetDB: default - Merge with Jun2016 branch.

2016-07-06 Thread Sjoerd Mullender
Changeset: 99e2352a098e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=99e2352a098e
Modified Files:
gdk/gdk_batop.c
gdk/gdk_firstn.c
sql/test/leaks/Tests/check1.stable.out
sql/test/leaks/Tests/check2.stable.out
sql/test/leaks/Tests/check3.stable.out
sql/test/leaks/Tests/check4.stable.out
sql/test/leaks/Tests/check5.stable.out
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (125 lines):

diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -792,8 +792,7 @@ BATslice(BAT *b, BUN l, BUN h)
 /* Return whether the BAT is ordered or not.  If we don't know, invest
  * in a scan and record the results in the bat descriptor.  If during
  * the scan we happen to find evidence that the BAT is not reverse
- * sorted, we record the location.
- */
+ * sorted, we record the location.  */
 int
 BATordered(BAT *b)
 {
diff --git a/gdk/gdk_firstn.c b/gdk/gdk_firstn.c
--- a/gdk/gdk_firstn.c
+++ b/gdk/gdk_firstn.c
@@ -153,7 +153,7 @@ BATfirstn_unique(BAT *b, BAT *s, BUN n, 
BATtseqbase(bn, start + b->hseqbase);
return bn;
}
-   /* note, we want to do bot calls */
+   /* note, we want to do both calls */
if (BATordered(b) | BATordered_rev(b)) {
/* trivial: b is sorted so we just need to return the
 * initial or final part of it (or of the candidate
diff --git a/sql/test/leaks/Tests/check1.stable.out 
b/sql/test/leaks/Tests/check1.stable.out
--- a/sql/test/leaks/Tests/check1.stable.out
+++ b/sql/test/leaks/Tests/check1.stable.out
@@ -101,11 +101,11 @@ Ready.
 [ "int",   34  ]
 [ "int",   34  ]
 [ "int",   34  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
 [ "int",   56  ]
 [ "int",   56  ]
 [ "int",   253 ]
diff --git a/sql/test/leaks/Tests/check2.stable.out 
b/sql/test/leaks/Tests/check2.stable.out
--- a/sql/test/leaks/Tests/check2.stable.out
+++ b/sql/test/leaks/Tests/check2.stable.out
@@ -101,11 +101,11 @@ Ready.
 [ "int",   34  ]
 [ "int",   34  ]
 [ "int",   34  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
 [ "int",   56  ]
 [ "int",   56  ]
 [ "int",   253 ]
diff --git a/sql/test/leaks/Tests/check3.stable.out 
b/sql/test/leaks/Tests/check3.stable.out
--- a/sql/test/leaks/Tests/check3.stable.out
+++ b/sql/test/leaks/Tests/check3.stable.out
@@ -101,11 +101,11 @@ Ready.
 [ "int",   34  ]
 [ "int",   34  ]
 [ "int",   34  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
 [ "int",   57  ]
 [ "int",   57  ]
 [ "int",   256 ]
diff --git a/sql/test/leaks/Tests/check4.stable.out 
b/sql/test/leaks/Tests/check4.stable.out
--- a/sql/test/leaks/Tests/check4.stable.out
+++ b/sql/test/leaks/Tests/check4.stable.out
@@ -101,11 +101,11 @@ Ready.
 [ "int",   34  ]
 [ "int",   34  ]
 [ "int",   34  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
 [ "int",   58  ]
 [ "int",   58  ]
 [ "int",   259 ]
diff --git a/sql/test/leaks/Tests/check5.stable.out 
b/sql/test/leaks/Tests/check5.stable.out
--- a/sql/test/leaks/Tests/check5.stable.out
+++ b/sql/test/leaks/Tests/check5.stable.out
@@ -101,11 +101,11 @@ Ready.
 [ "int",   34  ]
 [ "int",   34  ]
 [ "int",   34  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
-[ "int",   46  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
+[ "int",   47  ]
 [ "int",   58  ]
 [ "int",   58  ]
 [ "int",   259 ]
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-07-04 Thread Sjoerd Mullender
Changeset: bd9b7e14808c for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=bd9b7e14808c
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files..

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-04 Thread Sjoerd Mullender
Changeset: 0bb0900cc340 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0bb0900cc340
Added Files:
ChangeLog-Archive
Modified Files:
.hgtags
ChangeLog.Jun2016
MonetDB.spec
debian/changelog
java/Makefile.ag
java/build.properties
java/pom.xml
java/release.txt
libversions
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (144 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -627,3 +627,5 @@ 192e3168234a5f9f8a4d1c4ce17805f608f001c3
 b29fdfe9c590f674208212bf4ead617beef4b73c Jun2016_3
 192e3168234a5f9f8a4d1c4ce17805f608f001c3 Jun2016_release
 b29fdfe9c590f674208212bf4ead617beef4b73c Jun2016_release
+4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_5
+4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_SP1_release
diff --git a/ChangeLog-Archive b/ChangeLog-Archive
new file mode 100644
--- /dev/null
+++ b/ChangeLog-Archive
@@ -0,0 +1,6 @@
+# DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY
+# This file contains past ChangeLog entries
+
+* Fri Jul  1 2016 Sjoerd Mullender  - 11.23.5-20160704
+- Lots of memory leaks have been plugged across the whole system.
+
diff --git a/ChangeLog.Jun2016 b/ChangeLog.Jun2016
--- a/ChangeLog.Jun2016
+++ b/ChangeLog.Jun2016
@@ -1,6 +1,3 @@
 # ChangeLog file for candidate
 # This file is updated with Maddlog
 
-* Fri Jul  1 2016 Sjoerd Mullender 
-- Lots of memory leaks have been plugged across the whole system.
-
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -119,7 +119,7 @@ Vendor: MonetDB BV 
 Group: Applications/Databases
 License: MPLv2.0
 URL: http://www.monetdb.org/
-Source: 
http://dev.monetdb.org/downloads/sources/Jun2016/%{name}-%{version}.tar.bz2
+Source: 
http://dev.monetdb.org/downloads/sources/Jun2016-SP1/%{name}-%{version}.tar.bz2
 
 # we need systemd for the _unitdir macro to exist
 %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
@@ -962,6 +962,13 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Mon Jul 04 2016 Sjoerd Mullender  - 11.23.5-20160704
+- Rebuilt.
+- BZ#4031: mclient doesn't accept - argument to refer to stdin
+
+* Fri Jul  1 2016 Sjoerd Mullender  - 11.23.5-20160704
+- MonetDB: Lots of memory leaks have been plugged across the whole system.
+
 * Fri Jun 10 2016 Sjoerd Mullender  - 11.23.3-20160610
 - Rebuilt.
 - BZ#4015: Daemon crashes on database release command
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,16 @@
+monetdb (11.23.5) unstable; urgency=low
+
+  * Rebuilt.
+  * BZ#4031: mclient doesn't accept - argument to refer to stdin
+
+ -- Sjoerd Mullender   Mon, 04 Jul 2016 12:57:25 +0200
+
+monetdb (11.23.5) unstable; urgency=low
+
+  * MonetDB: Lots of memory leaks have been plugged across the whole system.
+
+ -- Sjoerd Mullender   Fri, 1 Jul 2016 12:57:25 +0200
+
 monetdb (11.23.3) unstable; urgency=low
 
   * Rebuilt.
diff --git a/java/Makefile.ag b/java/Makefile.ag
--- a/java/Makefile.ag
+++ b/java/Makefile.ag
@@ -16,7 +16,7 @@ JAVA_HOME = @JAVA_HOME@
 ant_distjdbc = {
COND = HAVE_JAVAJDBC
DIR = datadir/monetdb/lib
-   FILES = monetdb-mcl-1.13.jar monetdb-jdbc-2.21.jar jdbcclient.jar
+   FILES = monetdb-mcl-1.13.jar monetdb-jdbc-2.22.jar jdbcclient.jar
 }
 
 ant_distmerocontrol = {
diff --git a/java/build.properties b/java/build.properties
--- a/java/build.properties
+++ b/java/build.properties
@@ -19,7 +19,7 @@ MCL_MINOR=13
 # major release number
 JDBC_MAJOR=2
 # minor release number
-JDBC_MINOR=21
+JDBC_MINOR=22
 # an additional identifying string
 JDBC_VER_SUFFIX=Liberica
 # the default port to connect on, if no port given when using SQL
diff --git a/java/pom.xml b/java/pom.xml
--- a/java/pom.xml
+++ b/java/pom.xml
@@ -6,7 +6,7 @@
 
monetdb
monetdb-jdbc
-   2.21
+   2.22
${project.groupId}:${project.artifactId}
MonetDB JDBC driver
https://www.monetdb.org
diff --git a/java/release.txt b/java/release.txt
--- a/java/release.txt
+++ b/java/release.txt
@@ -1,6 +1,6 @@
 RELEASE NOTES
-MonetDB JDBC driver version 2.21 (Liberica/MCL-1.13)
-Release date: 2016-06-10
+MonetDB JDBC driver version 2.22 (Liberica/MCL-1.13)
+Release date: 2016-07-04
 
 This JDBC driver is designed for use with MonetDB, a main-memory
 database.  For more information see https://www.monetdb.org/.
diff --git a/libversions b/libversions
--- a/libversions
+++ b/libversions
@@ -36,13 +36,13 @@
 
 # version of the GDK library (subdirectory gdk; also includes
 # common/options and common/utils)
-GDK_VERSION=13:1:0
+GDK_VERSION=13:2:0
 
 # version of the MAPI library (subdirectory clients/mapilib)
 MAPI_VERSION=8:0:0
 
 # version of the MONETDB5 library (subdirectory monetdb5, not including extras)
-MONETDB5_VERSION=21:1:0

MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-07-04 Thread Sjoerd Mullender
Changeset: 509756a2262a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=509756a2262a
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files.

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-04 Thread Sjoerd Mullender
Changeset: fd9b6f755a1f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=fd9b6f755a1f
Modified Files:
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.oid32
sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 28119 to 300 lines):

diff --git a/sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32 
b/sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32
--- a/sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32
+++ b/sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32
@@ -22,9666 +22,10 @@ stdout of test 'upgrade` in directory 's
 # MonetDB/R   module loaded
 
 Ready.
-Running database upgrade commands:
-set schema "sys";
-delete from sys.dependencies where id < 2000;
-delete from sys.types where id < 2000;
-insert into sys.types values (0, 'void', 'any', 0, 0, 0, 0, 2000);
-insert into sys.types values (1, 'bat', 'table', 0, 0, 0, 1, 2000);
-insert into sys.types values (2, 'ptr', 'ptr', 0, 0, 0, 1, 2000);
-insert into sys.types values (3, 'bit', 'boolean', 1, 0, 2, 2, 2000);
-insert into sys.types values (4, 'str', 'char', 0, 0, 0, 3, 2000);
-insert into sys.types values (5, 'str', 'varchar', 0, 0, 0, 4, 2000);
-insert into sys.types values (6, 'str', 'clob', 0, 0, 0, 4, 2000);
-insert into sys.types values (7, 'oid', 'oid', 31, 0, 2, 6, 2000);
-insert into sys.types values (8, 'bte', 'tinyint', 8, 1, 2, 7, 2000);
-insert into sys.types values (9, 'sht', 'smallint', 16, 1, 2, 7, 2000);
-insert into sys.types values (10, 'int', 'int', 32, 1, 2, 7, 2000);
-insert into sys.types values (11, 'lng', 'bigint', 64, 1, 2, 7, 2000);
-insert into sys.types values (12, 'lng', 'wrd', 64, 1, 2, 7, 2000);
-insert into sys.types values (13, 'hge', 'hugeint', 128, 1, 2, 7, 2000);
-insert into sys.types values (14, 'bte', 'decimal', 2, 1, 10, 10, 2000);
-insert into sys.types values (15, 'sht', 'decimal', 4, 1, 10, 10, 2000);
-insert into sys.types values (16, 'int', 'decimal', 9, 1, 10, 10, 2000);
-insert into sys.types values (17, 'lng', 'decimal', 18, 1, 10, 10, 2000);
-insert into sys.types values (18, 'hge', 'decimal', 39, 1, 10, 10, 2000);
-insert into sys.types values (19, 'flt', 'real', 24, 2, 2, 11, 2000);
-insert into sys.types values (20, 'dbl', 'double', 53, 2, 2, 11, 2000);
-insert into sys.types values (21, 'int', 'month_interval', 32, 0, 2, 8, 2000);
-insert into sys.types values (22, 'lng', 'sec_interval', 13, 1, 10, 9, 2000);
-insert into sys.types values (23, 'daytime', 'time', 7, 0, 0, 12, 2000);
-insert into sys.types values (24, 'daytime', 'timetz', 7, 1, 0, 12, 2000);
-insert into sys.types values (25, 'date', 'date', 0, 0, 0, 13, 2000);
-insert into sys.types values (26, 'timestamp', 'timestamp', 7, 0, 0, 14, 2000);
-insert into sys.types values (27, 'timestamp', 'timestamptz', 7, 1, 0, 14, 
2000);
-insert into sys.types values (28, 'sqlblob', 'blob', 0, 0, 0, 5, 2000);
-insert into sys.types values (29, 'wkb', 'geometry', 0, 0, 0, 15, 2000);
-insert into sys.types values (30, 'wkba', 'geometrya', 0, 0, 0, 16, 2000);
-insert into sys.types values (31, 'mbr', 'mbr', 0, 0, 0, 16, 2000);
-delete from sys.functions where id < 2000;
-delete from sys.args where func_id not in (select id from sys.functions);
-insert into sys.functions values (32, 'mbr_overlap', 'mbrOverlaps', 'geom', 0, 
1, false, false, false, 2000);
-insert into sys.args values (7700, 32, 'res_0', 'boolean', 1, 0, 0, 0);
-insert into sys.args values (7701, 32, 'arg_1', 'geometry', 0, 0, 1, 1);
-insert into sys.args values (7702, 32, 'arg_2', 'geometry', 0, 0, 1, 2);
-insert into sys.functions values (33, 'mbr_overlap', 'mbrOverlaps', 'geom', 0, 
1, false, false, false, 2000);
-insert into sys.args values (7703, 33, 'res_0', 'boolean', 1, 0, 0, 0);
-insert into sys.args values (7704, 33, 'arg_1', 'mbr', 0, 0, 1, 1);
-insert into sys.args values (7705, 33, 'arg_2', 'mbr', 0, 0, 1, 2);
-insert into sys.functions values (34, 'mbr_above', 'mbrAbove', 'geom', 0, 1, 
false, false, false, 2000);
-insert into sys.args values (7706, 34, 'res_0', 'boolean', 1, 0, 0, 0);
-insert into sys.args values (7707, 34, 'arg_1', 'geometry', 0, 0, 1, 1);
-insert into sys.args values (7708, 34, 'arg_2', 'geometry', 0, 0, 1, 2);
-insert into sys.functions values (35, 'mbr_above', 'mbrAbove', 'geom', 0, 1, 
false, false, false, 2000);
-insert into sys.args values (7709, 35, 'res_0', 'boolean', 1, 0, 0, 0);
-insert into sys.args values (7710, 35, 'arg_1', 'mbr', 0, 0, 1, 1);
-insert into sys.args values (7711, 35, 'arg_2', 'mbr', 0, 0, 1, 2);
-insert into sys.functions values (36, 'mbr_below', 'mbrBelow', 'geom', 0, 1, 
false, false, false, 2000);
-insert into sys.args values (7712, 36, 'res_0', 'boolean', 1, 0, 0, 0);
-insert into sys.args values (7713, 

MonetDB: default - Merge with Jun2016 branch.

2016-07-01 Thread Sjoerd Mullender
Changeset: ebea0d523b73 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ebea0d523b73
Added Files:
ChangeLog.Jun2016
Modified Files:
monetdb5/mal/mal_module.c
monetdb5/mal/mal_parser.c
monetdb5/modules/mal/pcre.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (77 lines):

diff --git a/ChangeLog.Jun2016 b/ChangeLog.Jun2016
new file mode 100644
--- /dev/null
+++ b/ChangeLog.Jun2016
@@ -0,0 +1,6 @@
+# ChangeLog file for candidate
+# This file is updated with Maddlog
+
+* Fri Jul  1 2016 Sjoerd Mullender 
+- Lots of memory leaks have been plugged across the whole system.
+
diff --git a/monetdb5/mal/mal_module.c b/monetdb5/mal/mal_module.c
--- a/monetdb5/mal/mal_module.c
+++ b/monetdb5/mal/mal_module.c
@@ -24,8 +24,7 @@ Module mal_scope;/* the root of the 
 Module scopeJump[256][256];  /* to speedup access to correct scope */
 
 static void newSubScope(Module scope){
-   int len = (MAXSCOPE)*sizeof(Module);
-   scope->subscope = (Symbol *) GDKzalloc(len);
+   scope->subscope = (Symbol *) GDKzalloc(MAXSCOPE * sizeof(Symbol));
 }
 
 void
diff --git a/monetdb5/mal/mal_parser.c b/monetdb5/mal/mal_parser.c
--- a/monetdb5/mal/mal_parser.c
+++ b/monetdb5/mal/mal_parser.c
@@ -1149,6 +1149,11 @@ fcnHeader(Client cntxt, int kind)
curInstr = getInstrPtr(curBlk, 0);
 
if (currChar(cntxt) != '('){
+   if (cntxt->backup) {
+   freeSymbol(cntxt->curprg);
+   cntxt->curprg = cntxt->backup;
+   cntxt->backup = 0;
+   }
parseError(cntxt, "function header '(' expected\n");
skipToEnd(cntxt);
return curBlk;
@@ -1160,6 +1165,7 @@ fcnHeader(Client cntxt, int kind)
 
if (isModuleDefined(cntxt->nspace, getModuleId(curInstr)) == FALSE) {
if (cntxt->backup) {
+   freeSymbol(cntxt->curprg);
cntxt->curprg = cntxt->backup;
cntxt->backup = 0;
}
@@ -1181,6 +1187,7 @@ fcnHeader(Client cntxt, int kind)
if (ch == ')')
break;
if (cntxt->backup) {
+   freeSymbol(cntxt->curprg);
cntxt->curprg = cntxt->backup;
cntxt->backup = 0;
}
@@ -1262,6 +1269,7 @@ fcnHeader(Client cntxt, int kind)
if (currChar(cntxt) != ')') {
freeInstruction(curInstr);
if (cntxt->backup) {
+   freeSymbol(cntxt->curprg);
cntxt->curprg = cntxt->backup;
cntxt->backup = 0;
}
diff --git a/monetdb5/modules/mal/pcre.c b/monetdb5/modules/mal/pcre.c
--- a/monetdb5/modules/mal/pcre.c
+++ b/monetdb5/modules/mal/pcre.c
@@ -33,6 +33,10 @@
 
 #include 
 
+#if PCRE_MAJOR < 8 || (PCRE_MAJOR == 8 && PCRE_MINOR < 13)
+#define pcre_free_study my_pcre_free
+#endif
+
 pcre_export str PCREquote(str *r, const str *v);
 pcre_export str PCREmatch(bit *ret, const str *val, const str *pat);
 pcre_export str PCREimatch(bit *ret, const str *val, const str *pat);
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-07-01 Thread Sjoerd Mullender
Changeset: 869218e72161 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=869218e72161
Modified Files:
clients/mapiclient/mclient.c
common/stream/stream.c
java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (221 lines):

diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c
--- a/clients/mapiclient/mclient.c
+++ b/clients/mapiclient/mclient.c
@@ -1995,6 +1995,8 @@ doFileBulk(Mapi mid, stream *fp)
buf = malloc(bufsize + 1);
if (!buf) {
fprintf(stderr, "cannot allocate memory for send buffer\n");
+   if (fp)
+   close_stream(fp);
return 1;
}
 
@@ -2067,6 +2069,8 @@ doFileBulk(Mapi mid, stream *fp)
 
free(buf);
mnstr_flush(toConsole);
+   if (fp)
+   close_stream(fp);
return errseen;
 }
 
@@ -2637,11 +2641,12 @@ doFile(Mapi mid, stream *fp, int useinse
 * convert filename from UTF-8
 * to locale */
if ((s = open_rastream(line)) == NULL ||
-   mnstr_errnr(s))
+   mnstr_errnr(s)) {
+   if (s)
+   close_stream(s);
fprintf(stderr, "%s: cannot 
open\n", line);
-   else
+   } else
doFile(mid, s, 0, 0, 0);
-   close_stream(s);
continue;
}
case '>':
@@ -2832,6 +2837,7 @@ doFile(Mapi mid, stream *fp, int useinse
if (prompt)
deinit_readline();
 #endif
+   close_stream(fp);
return errseen;
 }
 
@@ -3381,7 +3387,9 @@ main(int argc, char **argv)
stream *s;
 
if (fp == NULL &&
-   (fp = fopen(argv[optind], "r")) == NULL) {
+   (fp = (strcmp(argv[optind], "-") == 0 ?
+  stdin :
+  fopen(argv[optind], "r"))) == NULL) {
fprintf(stderr, "%s: cannot open\n", 
argv[optind]);
c |= 1;
} else if ((s = file_rastream(fp, argv[optind])) == 
NULL) {
@@ -3389,7 +3397,6 @@ main(int argc, char **argv)
c |= 1;
} else {
c |= doFile(mid, s, useinserts, interactive, 
save_history);
-   close_stream(s);
}
fp = NULL;
optind++;
@@ -3400,7 +3407,6 @@ main(int argc, char **argv)
if (!has_fileargs && command == NULL) {
stream *s = file_rastream(stdin, "");
c = doFile(mid, s, useinserts, interactive, save_history);
-   mnstr_destroy(s);
}
 
mapi_destroy(mid);
diff --git a/common/stream/stream.c b/common/stream/stream.c
--- a/common/stream/stream.c
+++ b/common/stream/stream.c
@@ -4575,6 +4575,8 @@ cb_destroy(stream *s)
 
if (cb->destroy)
(*cb->destroy)(cb->private);
+   free(cb);
+   s->stream_data.p = NULL;
destroy(s);
 }
 
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -1190,7 +1190,7 @@ public class MonetDatabaseMetaData exten
 */
@Override
public boolean supportsStoredProcedures() {
-   return false;
+   return true;
}
 
/**
@@ -2476,7 +2476,7 @@ public class MonetDatabaseMetaData exten
if (table != null) {
query.append(" AND \"tables\".\"name\" 
").append(composeMatchPart(table));
}
-   if (scope != DatabaseMetaData.bestRowSession) {
+   if (scope != DatabaseMetaData.bestRowSession && scope != 
DatabaseMetaData.bestRowTransaction && scope != 
DatabaseMetaData.bestRowTemporary) {
query.append(" AND 1 = 0");
}
if (!nullable) {
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
--- 

MonetDB: default - Merge with Jun2016 branch.

2016-06-30 Thread Sjoerd Mullender
Changeset: 7fe98a9c9a99 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7fe98a9c9a99
Added Files:
java/tests/Test_PSgetObject.java
sql/jdbc/tests/Tests/Test_PSgetObject.SQL.bat
sql/jdbc/tests/Tests/Test_PSgetObject.SQL.sh
sql/jdbc/tests/Tests/Test_PSgetObject.stable.err
sql/jdbc/tests/Tests/Test_PSgetObject.stable.out
Modified Files:
java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
sql/jdbc/tests/Tests/All
sql/test/pg_regress/Tests/point.sql
sql/test/pg_regress/Tests/point.stable.err
sql/test/pg_regress/Tests/point.stable.out
testing/Mtest.py.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 517 to 300 lines):

diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
@@ -1737,25 +1737,34 @@ public class MonetResultSet extends Mone
public Object getObject(int i, Map map)
throws SQLException
{
-   Class type;
-
-   if (tlp.values[i - 1] == null) {
-   lastColumnRead = i - 1;
-   return null;
+   String MonetDBtype = null;
+   try {
+   MonetDBtype = types[i - 1];
+   if (tlp.values[i - 1] == null) {
+   lastColumnRead = i - 1;
+   return null;
+   }
+   } catch (IndexOutOfBoundsException e) {
+   throw new SQLException("No such column " + i, "M1M05");
}
 
-   if (map.containsKey(types[i - 1])) {
-   type = map.get(types[i - 1]);
-   } else {
-   type = getClassForType(getJavaType(types[i - 1]));
+   Class type = null;
+   if (map != null && map.containsKey(MonetDBtype)) {
+   type = map.get(MonetDBtype);
}
-
-   if (type == String.class) {
+   if (type == null) {
+   // fallback to the standard Class mappings
+   type = getClassForType(getJavaType(MonetDBtype));
+   }
+
+   if (type == null || type == String.class) {
return getString(i);
} else if (type == BigDecimal.class) {
return getBigDecimal(i);
} else if (type == Boolean.class) {
return Boolean.valueOf(getBoolean(i));
+   } else if (type == Short.class) {
+   return Short.valueOf(getShort(i));
} else if (type == Integer.class) {
return Integer.valueOf(getInt(i));
} else if (type == Long.class) {
@@ -1931,7 +1940,7 @@ public class MonetResultSet extends Mone
return getRowId(colnum);
}
};
-   x.readSQL(input, types[i - 1]);
+   x.readSQL(input, MonetDBtype);
return x;
} else {
return getString(i);
diff --git a/java/tests/Test_PSgetObject.java b/java/tests/Test_PSgetObject.java
new file mode 100644
--- /dev/null
+++ b/java/tests/Test_PSgetObject.java
@@ -0,0 +1,105 @@
+/*
+ * 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 - 2016 MonetDB B.V.
+ */
+
+import java.sql.*;
+
+public class Test_PSgetObject {
+   public static void main(String[] args) throws Exception {
+   Class.forName("nl.cwi.monetdb.jdbc.MonetDriver");
+   final Connection con = DriverManager.getConnection(args[0]);
+   con.setAutoCommit(false);
+   // >> false: auto commit was just switched off
+   System.out.println("0. false\t" + con.getAutoCommit());
+
+   final Statement stmt = con.createStatement();
+   try {
+   System.out.print("1. creating test table...");
+   stmt.executeUpdate("CREATE TABLE table_Test_PSgetObject 
(ti tinyint, si smallint, i int, bi bigint)");
+   stmt.close();
+   System.out.println(" passed :)");
+   } catch (SQLException e) {
+   System.out.println(e);
+   System.out.println("Creation of test table failed! :(");
+   System.out.println("ABORTING TEST!!!");
+   

MonetDB: default - Merge with Jun2016 branch.

2016-06-28 Thread Sjoerd Mullender
Changeset: fcf8cce94fb2 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=fcf8cce94fb2
Modified Files:
configure.ag
testing/Makefile.ag
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (36 lines):

diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -2729,16 +2729,16 @@ AC_SUBST(GEOS_INCS)
 AC_SUBST(GEOS_LIBS)
 
 # fits, only used by sql
-org_have_cfitsio=no
-have_cfitsio=$org_have_cfitsio
+org_have_fits=no
+have_fits=$org_have_fits
 if test "x$enable_fits" != xno; then
PKG_CHECK_MODULES([cfitsio], [cfitsio],
-   [have_cfitsio=yes; AC_DEFINE(HAVE_FITS, 1, [Define if the fits 
module is to be enabled])],
-   [have_cfitsio=no; why_have_cfitsio="(cfitsio library not found)"
+   [have_fits="yes"; AC_DEFINE(HAVE_FITS, 1, [Define if the fits 
module is to be enabled])],
+   [have_fits="no"; why_have_fits="(cfitsio library not found)"
 if test "x$enable_fits" = xyes; then AC_MSG_ERROR([cfitsio 
library required for FITS support]); fi;
 enable_fits=no; disable_fits="(cfitsio library not found)"])
 fi
-AM_CONDITIONAL(HAVE_FITS, test x"$have_cfitsio" != xno)
+AM_CONDITIONAL(HAVE_FITS, test x"$have_fits" != xno)
 
 # netcdf, only used by sql
 org_have_netcdf=no
diff --git a/testing/Makefile.ag b/testing/Makefile.ag
--- a/testing/Makefile.ag
+++ b/testing/Makefile.ag
@@ -14,6 +14,7 @@ bin_Mdiff = {
 bin_Mtimeout = {
SOURCES = Mtimeout.c
COND = NOT_WIN32
+   LIBS = $(PTHREAD_LIBS)
 }
 
 bin_Mapprove.py = bin_Mtest.py
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-06-23 Thread Sjoerd Mullender
Changeset: 1d2f778ed0f8 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1d2f778ed0f8
Modified Files:
sql/backends/monet5/sql_gencode.c
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
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.int128
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out
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/dump.stable.out
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out
sql/test/testdb-upgrade/Tests/dump.stable.out
sql/test/testdb-upgrade/Tests/dump.stable.out.Windows
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:

Merge with Jun2016 branch.


diffs (truncated from 111668 to 300 lines):

diff --git a/sql/backends/monet5/sql_gencode.c 
b/sql/backends/monet5/sql_gencode.c
--- a/sql/backends/monet5/sql_gencode.c
+++ b/sql/backends/monet5/sql_gencode.c
@@ -3146,8 +3146,10 @@ backend_create_sql_func(backend *be, sql
int varid = 0;
char *buf = GDKmalloc(MAXIDENTLEN);
 
-   if (buf == NULL)
+   if (buf == NULL) {
+   sa_destroy(sa);
return -1;
+   }
if (a->name)
(void) snprintf(buf, MAXIDENTLEN, "A%s", 
a->name);
else
@@ -3160,8 +3162,10 @@ backend_create_sql_func(backend *be, sql
}
/* announce the transaction mode */
 
-   if (backend_dumpstmt(be, curBlk, s, 0, 1) < 0)
+   if (backend_dumpstmt(be, curBlk, s, 0, 1) < 0) {
+   sa_destroy(sa);
return -1;
+   }
/* selectively make functions available for inlineing */
/* for the time being we only inline scalar functions */
/* and only if we see a single return value */
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
@@ -26,9476 +26,6 @@ stdout of test 'upgrade` in directory 's
 Ready.
 Running database upgrade commands:
 set schema "sys";
-delete from sys.dependencies where id < 2000;
-delete from sys.types where id < 2000;
-insert into sys.types values (0, 'void', 'any', 0, 0, 0, 0, 2000);
-insert into sys.types values (1, 'bat', 'table', 0, 0, 0, 1, 2000);
-insert into sys.types values (2, 'ptr', 'ptr', 0, 0, 0, 1, 2000);
-insert into sys.types values (3, 'bit', 'boolean', 1, 0, 2, 2, 2000);
-insert into sys.types values (4, 'str', 'char', 0, 0, 0, 3, 2000);
-insert into sys.types values (5, 'str', 'varchar', 0, 0, 0, 4, 2000);
-insert into sys.types values (6, 'str', 'clob', 0, 0, 0, 4, 2000);
-insert into sys.types values (7, 'oid', 'oid', 63, 0, 2, 6, 2000);
-insert into sys.types values (8, 'bte', 'tinyint', 8, 1, 2, 7, 2000);
-insert into sys.types values (9, 'sht', 'smallint', 16, 1, 2, 7, 2000);
-insert into sys.types values (10, 'int', 'int', 32, 1, 2, 7, 2000);
-insert into sys.types values (11, 'lng', 'bigint', 64, 1, 2, 7, 2000);
-insert into sys.types values (12, 'lng', 'wrd', 64, 1, 2, 7, 2000);
-insert into sys.types values (13, 'hge', 'hugeint', 128, 1, 2, 7, 2000);
-insert into sys.types values (14, 'bte', 'decimal', 2, 1, 10, 10, 2000);
-insert into sys.types values (15, 'sht', 'decimal', 4, 1, 10, 10, 2000);
-insert into sys.types values (16, 'int', 'decimal', 9, 1, 10, 10, 2000);
-insert into sys.types values (17, 'lng', 'decimal', 18, 1, 10, 10, 2000);
-insert into sys.types values (18, 'hge', 'decimal', 39, 1, 10, 10, 2000);
-insert into sys.types values (19, 'flt', 'real', 24, 2, 2, 11, 2000);
-insert into sys.types values (20, 'dbl', 'double', 53, 2, 2, 11, 2000);
-insert into sys.types values (21, 'int', 'month_interval', 32, 0, 2, 8, 2000);
-insert into sys.types values (22, 'lng', 'sec_interval', 13, 1, 10, 9, 2000);
-insert into sys.types values (23, 'daytime', 'time', 7, 0, 0, 12, 2000);
-insert into sys.types values (24, 'daytime', 'timetz', 7, 1, 0, 12, 2000);
-insert into sys.types values (25, 'date', 'date', 0, 0, 0, 13, 2000);
-insert into sys.types values (26, 'timestamp', 'timestamp', 7, 0, 0, 14, 2000);
-insert 

MonetDB: default - Merge with Jun2016 branch.

2016-06-22 Thread Sjoerd Mullender
Changeset: e038b4f1dd2b for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e038b4f1dd2b
Modified Files:
gdk/gdk.h
monetdb5/mal/mal_factory.c
monetdb5/mal/mal_instruction.c
monetdb5/mal/mal_interpreter.c
sql/server/sql_mvc.c
sql/test/leaks/Tests/check1.stable.out
sql/test/leaks/Tests/check1.stable.out.int128
sql/test/leaks/Tests/check2.stable.out
sql/test/leaks/Tests/check2.stable.out.int128
sql/test/leaks/Tests/check3.stable.out
sql/test/leaks/Tests/check3.stable.out.int128
sql/test/leaks/Tests/check4.stable.out
sql/test/leaks/Tests/check4.stable.out.int128
sql/test/leaks/Tests/check5.stable.out
sql/test/leaks/Tests/check5.stable.out.int128
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 345 to 300 lines):

diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1293,7 +1293,6 @@ gdk_export bte ATOMelmshift(int sz);
 #define Treplacevalue(b, p, v) HTreplacevalue(b, p, v, T)
 #define HTfastins_nocheck(b, p, v, s, HT)  \
do {\
-   assert((b)->HT->width == (s));  \
(b)->HT->heap.free += (s);  \
(b)->HT->heap.dirty |= (s) != 0;\
HTputvalue((b), HT##loc((b), (p)), (v), 0, HT); \
diff --git a/monetdb5/mal/mal_factory.c b/monetdb5/mal/mal_factory.c
--- a/monetdb5/mal/mal_factory.c
+++ b/monetdb5/mal/mal_factory.c
@@ -382,13 +382,12 @@ void mal_factory_reset(void)
/* MSresetVariables(mb, pl->stk, 0);*/
/* freeStack(pl->stk); there may be a reference?*/
/* we are inside the body of the factory and about to 
return */
-   pl->factory = 0;
-   if (pl->stk)
+   if (pl->stk) {
pl->stk->keepAlive = FALSE;
-   if ( pl->stk) {
-   //garbageCollector(cntxt, mb, pl->stk,TRUE);
+   garbageCollector(NULL, pl->factory, 
pl->stk,TRUE);
GDKfree(pl->stk);
}
+   pl->factory = 0;
pl->stk=0;
pl->pc = 0;
pl->inuse = 0;
diff --git a/monetdb5/mal/mal_interpreter.c b/monetdb5/mal/mal_interpreter.c
--- a/monetdb5/mal/mal_interpreter.c
+++ b/monetdb5/mal/mal_interpreter.c
@@ -724,11 +724,13 @@ str runMALsequence(Client cntxt, MalBlkP
nstk->up = stk;
if (nstk->calldepth > 256) {
ret= createException(MAL, 
"mal.interpreter", MAL_CALLDEPTH_FAIL);
+   GDKfree(nstk);
break;
}
if ((unsigned)nstk->stkdepth > 
THREAD_STACK_SIZE / sizeof(mb->var[0]) / 4 && THRhighwater()){
/* we are running low on stack 
space */
ret= createException(MAL, 
"mal.interpreter", MAL_STACK_FAIL);
+   GDKfree(nstk);
break;
}
 
@@ -1424,8 +1426,10 @@ void garbageCollector(Client cntxt, MalB
ValPtr v;
 
 #ifdef STACKTRACE
-   mnstr_printf(cntxt->fdout, "#--->stack before garbage collector\n");
-   printStack(cntxt->fdout, mb, stk, 0);
+   if (cntxt) {
+   mnstr_printf(cntxt->fdout, "#--->stack before garbage 
collector\n");
+   printStack(cntxt->fdout, mb, stk, 0);
+   }
 #endif
for (k = 0; k < mb->vtop; k++) {
if (isVarCleanup(mb, k) && (flag || isTmpVar(mb, k))) {
@@ -1435,8 +1439,10 @@ void garbageCollector(Client cntxt, MalB
}
}
 #ifdef STACKTRACE
-   mnstr_printf(cntxt->fdout, "#-->stack after garbage collector\n");
-   printStack(cntxt->fdout, mb, stk, 0);
+   if (cntxt) {
+   mnstr_printf(cntxt->fdout, "#-->stack after garbage 
collector\n");
+   printStack(cntxt->fdout, mb, stk, 0);
+   }
 #else
(void)cntxt;
 #endif
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
@@ -64,6 +64,7 @@ mvc_init(int debug, store_type store, in
if (first || catalog_version) {
sql_schema *s;
sql_table *t;
+   sqlid tid = 0, ntid, cid = 0, ncid;
mvc *m = mvc_create(0, stk, 0, NULL, NULL);
 
m->sa = sa_create();
@@ -80,12 

MonetDB: default - Merge with Jun2016 branch.

2016-06-21 Thread Sjoerd Mullender
Changeset: e7ebd125b103 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e7ebd125b103
Modified Files:
clients/mapiclient/mclient.c
monetdb5/mal/mal_profiler.c
monetdb5/mal/mal_recycle.c
monetdb5/modules/mal/pcre.c
monetdb5/optimizer/opt_mergetable.c
monetdb5/optimizer/opt_pipes.c
monetdb5/optimizer/optimizer.c
monetdb5/optimizer/optimizer_private.h
sql/server/rel_semantic.c
sql/storage/bat/bat_storage.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 623 to 300 lines):

diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c
--- a/clients/mapiclient/mclient.c
+++ b/clients/mapiclient/mclient.c
@@ -3322,6 +3322,7 @@ main(int argc, char **argv)
if (command != NULL) {
 #ifdef HAVE_ICONV
iconv_t cd_in;
+   int free_command = 0;
 
if (encoding != NULL &&
(cd_in = iconv_open("utf-8", encoding)) != (iconv_t) -1) {
@@ -3331,6 +3332,7 @@ main(int argc, char **argv)
int factor = 4;
size_t tolen = factor * fromlen + 1;
char *to = malloc(tolen);
+   free_command = 1;
 
  try_again:
command = to;
@@ -3367,6 +3369,10 @@ main(int argc, char **argv)
timerStart();
c = doRequest(mid, command);
timerEnd();
+#ifdef HAVE_ICONV
+   if (free_command)
+   free(command);
+#endif
}
 
if (optind < argc) {
diff --git a/monetdb5/mal/mal_profiler.c b/monetdb5/mal/mal_profiler.c
--- a/monetdb5/mal/mal_profiler.c
+++ b/monetdb5/mal/mal_profiler.c
@@ -626,9 +626,11 @@ static BAT *TRACE_id_stmt = 0;
 int
 TRACEtable(BAT **r)
 {
-   if (TRACE_init == 0)
+   MT_lock_set(_profileLock);
+   if (TRACE_init == 0) {
+   MT_lock_unset(_profileLock);
return -1;   /* not initialized */
-   MT_lock_set(_profileLock);
+   }
r[0] = COLcopy(TRACE_id_event, TRACE_id_event->ttype, 0, TRANSIENT);
r[1] = COLcopy(TRACE_id_time, TRACE_id_time->ttype, 0, TRANSIENT);
r[2] = COLcopy(TRACE_id_pc, TRACE_id_pc->ttype, 0, TRANSIENT);
@@ -649,35 +651,39 @@ TRACEtable(BAT **r)
 BAT *
 getTrace(const char *nme)
 {
-   if (TRACE_init == 0)
-   return NULL;
-   if (strcmp(nme, "event") == 0)
-   return COLcopy(TRACE_id_event, TRACE_id_event->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "time") == 0)
-   return COLcopy(TRACE_id_time, TRACE_id_time->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "pc") == 0)
-   return COLcopy(TRACE_id_pc, TRACE_id_pc->ttype, 0, TRANSIENT);
-   if (strcmp(nme, "thread") == 0)
-   return COLcopy(TRACE_id_thread, TRACE_id_thread->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "usec") == 0)
-   return COLcopy(TRACE_id_ticks, TRACE_id_ticks->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "rssMB") == 0)
-   return COLcopy(TRACE_id_rssMB, TRACE_id_rssMB->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "tmpspace") == 0)
-   return COLcopy(TRACE_id_tmpspace, TRACE_id_tmpspace->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "reads") == 0)
-   return COLcopy(TRACE_id_inblock, TRACE_id_inblock->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "writes") == 0)
-   return COLcopy(TRACE_id_oublock, TRACE_id_oublock->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "minflt") == 0)
-   return COLcopy(TRACE_id_minflt, TRACE_id_minflt->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "majflt") == 0)
-   return COLcopy(TRACE_id_majflt, TRACE_id_majflt->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "nvcsw") == 0)
-   return COLcopy(TRACE_id_nvcsw, TRACE_id_nvcsw->ttype, 0, 
TRANSIENT);
-   if (strcmp(nme, "stmt") == 0)
-   return COLcopy(TRACE_id_stmt, TRACE_id_stmt->ttype, 0, 
TRANSIENT);
-   return NULL;
+   BAT *bn = NULL;
+
+   MT_lock_set(_profileLock);
+   if (TRACE_init) {
+   if (strcmp(nme, "event") == 0)
+   bn = COLcopy(TRACE_id_event, TRACE_id_event->ttype, 0, 
TRANSIENT);
+   else if (strcmp(nme, "time") == 0)
+   bn = COLcopy(TRACE_id_time, TRACE_id_time->ttype, 0, 
TRANSIENT);
+   else if (strcmp(nme, "pc") == 0)
+   bn = COLcopy(TRACE_id_pc, TRACE_id_pc->ttype, 0, 
TRANSIENT);
+   else if (strcmp(nme, "thread") == 0)
+   bn = COLcopy(TRACE_id_thread, TRACE_id_thread->ttype, 
0, TRANSIENT);
+   else if (strcmp(nme, "usec") == 0)
+   bn = COLcopy(TRACE_id_ticks, TRACE_id_ticks->ttype, 0, 
TRANSIENT);
+   else if (strcmp(nme, "rssMB") == 0)
+   bn = 

MonetDB: default - Merge with Jun2016 branch.

2016-06-17 Thread Sjoerd Mullender
Changeset: 5b181bcebe8f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5b181bcebe8f
Modified Files:
clients/mapiclient/msqldump.c
monetdb5/mal/mal_dataflow.c
monetdb5/mal/mal_instruction.c
monetdb5/mal/mal_parser.c
monetdb5/modules/atoms/url.c
monetdb5/modules/mal/groupby.c
monetdb5/modules/mal/sysmon.c
monetdb5/modules/mal/tablet.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_cast.c
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/sql_user.c
sql/backends/monet5/vaults/bam/bam_lib.c
sql/server/sql_atom.c

sql/test/BugDay_2005-11-09_2.9.3/Tests/hang_on_copy_into.SF-1100504.stable.err
sql/test/BugTracker-2011/Tests/All
sql/test/BugTracker-2016/Tests/malformed-copy-int.Bug-3987.stable.err
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 336 to 300 lines):

diff --git a/clients/mapiclient/msqldump.c b/clients/mapiclient/msqldump.c
--- a/clients/mapiclient/msqldump.c
+++ b/clients/mapiclient/msqldump.c
@@ -222,12 +222,12 @@ main(int argc, char **argv)
c = dump_database(mid, out, describe, useinserts);
mnstr_flush(out);
 
-   mapi_disconnect(mid);
+   mapi_destroy(mid);
if (mnstr_errnr(out)) {
fprintf(stderr, "%s: %s", argv[0], mnstr_error(out));
return 1;
}
 
+   mnstr_destroy(out);
return c;
-
 }
diff --git a/monetdb5/mal/mal_dataflow.c b/monetdb5/mal/mal_dataflow.c
--- a/monetdb5/mal/mal_dataflow.c
+++ b/monetdb5/mal/mal_dataflow.c
@@ -417,6 +417,8 @@ DFLOWworker(void *T)
/* only collect one error (from one thread, needed for 
stable testing) */
if (!flow->error)
flow->error = error;
+   else
+   GDKfree(error);
MT_lock_unset(>flowlock);
/* after an error we skip the rest of the block */
q_enqueue(flow->done, fe);
diff --git a/monetdb5/mal/mal_instruction.c b/monetdb5/mal/mal_instruction.c
--- a/monetdb5/mal/mal_instruction.c
+++ b/monetdb5/mal/mal_instruction.c
@@ -617,6 +617,7 @@ getVarName(MalBlkPtr mb, int i)
nme = mb->var[i]->name;
 
if (nme == 0 || *nme =='_') {
+   GDKfree(nme);
snprintf(buf, IDLENGTH, "%c_%d", refMarker(mb,i), 
mb->var[i]->tmpindex);
nme = mb->var[i]->name = GDKstrdup(buf);
}
@@ -1509,7 +1510,7 @@ pushArgument(MalBlkPtr mb, InstrPtr p, i
freeInstruction(p);
return NULL;
}
-   memcpy((char *) pn, (char *) p, space);
+   memcpy(pn, p, space);
GDKfree(p);
pn->maxarg += MAXARG;
/* we have to keep track on the maximal arguments/block
diff --git a/monetdb5/mal/mal_parser.c b/monetdb5/mal/mal_parser.c
--- a/monetdb5/mal/mal_parser.c
+++ b/monetdb5/mal/mal_parser.c
@@ -795,6 +795,7 @@ helpInfo(Client cntxt, str *help)
if (MALkeyword(cntxt, "comment", 7)) {
skipSpace(cntxt);
if ((l = stringLength(cntxt))) {
+   GDKfree(*help);
*help = strCopy(cntxt, l);
if (*help)
advance(cntxt, l - 1);
diff --git a/monetdb5/modules/atoms/url.c b/monetdb5/modules/atoms/url.c
--- a/monetdb5/modules/atoms/url.c
+++ b/monetdb5/modules/atoms/url.c
@@ -416,6 +416,7 @@ URLgetContent(str *retval, url *Str1)
(void)memcpy(retbuf + rlen, buf, len);
rlen += len;
}
+   mnstr_destroy(f);
if (len < 0) {
GDKfree(retbuf);
throw(MAL, "url.getContent", "read error");
diff --git a/monetdb5/modules/mal/groupby.c b/monetdb5/modules/mal/groupby.c
--- a/monetdb5/modules/mal/groupby.c
+++ b/monetdb5/modules/mal/groupby.c
@@ -145,6 +145,7 @@ GROUPdelete(AGGRtask *a){
for(a->last--; a->last>=0; a->last--){
BBPunfix(a->cols[a->last]->batCacheid);
}
+   GDKfree(a->bid);
GDKfree(a->cols);
GDKfree(a->unique);
GDKfree(a);
diff --git a/monetdb5/modules/mal/sysmon.c b/monetdb5/modules/mal/sysmon.c
--- a/monetdb5/modules/mal/sysmon.c
+++ b/monetdb5/modules/mal/sysmon.c
@@ -95,6 +95,7 @@ SYSMONqueue(Client cntxt, MalBlkPtr mb, 
goto bailout;
 
BUNappend(user, usr, FALSE);
+   GDKfree(usr);
BUNappend(query, QRYqueue[i].query, FALSE);
BUNappend(activity, QRYqueue[i].status, FALSE);
 
diff --git a/monetdb5/modules/mal/tablet.c b/monetdb5/modules/mal/tablet.c
--- a/monetdb5/modules/mal/tablet.c
+++ b/monetdb5/modules/mal/tablet.c
@@ -711,7 +711,7 @@ typedef struct {
 } READERtask;
 
 static void

MonetDB: default - Merge with Jun2016 branch.

2016-06-15 Thread Sjoerd Mullender
Changeset: c949ca2c95bd for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c949ca2c95bd
Modified Files:
geom/lib/libgeom.c
geom/monetdb5/geom.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 3423 to 300 lines):

diff --git a/geom/lib/libgeom.c b/geom/lib/libgeom.c
--- a/geom/lib/libgeom.c
+++ b/geom/lib/libgeom.c
@@ -113,10 +113,10 @@ wkb2geos(wkb *geomWKB)
if (wkb_isnil(geomWKB))
return NULL;
 
-   geosGeometry = GEOSGeomFromWKB_buf((unsigned char *) ((geomWKB)->data), 
(geomWKB)->len);
+   geosGeometry = GEOSGeomFromWKB_buf((unsigned char *) geomWKB->data, 
geomWKB->len);
 
if (geosGeometry != NULL)
-   GEOSSetSRID(geosGeometry, (geomWKB)->srid);
+   GEOSSetSRID(geosGeometry, geomWKB->srid);
 
return geosGeometry;
 }
diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c
--- a/geom/monetdb5/geom.c
+++ b/geom/monetdb5/geom.c
@@ -47,18 +47,18 @@ wkbNULLcopy(void)
 static void
 degrees2radians(double *x, double *y, double *z)
 {
-   (*x) *= M_PI / 180.0;
-   (*y) *= M_PI / 180.0;
-   (*z) *= M_PI / 180.0;
+   *x *= M_PI / 180.0;
+   *y *= M_PI / 180.0;
+   *z *= M_PI / 180.0;
 }
 
 /** convert radians to degrees */
 static void
 radians2degrees(double *x, double *y, double *z)
 {
-   (*x) *= 180.0 / M_PI;
-   (*y) *= 180.0 / M_PI;
-   (*z) *= 180.0 / M_PI;
+   *x *= 180.0 / M_PI;
+   *y *= 180.0 / M_PI;
+   *z *= 180.0 / M_PI;
 }
 
 static str
@@ -67,11 +67,10 @@ transformCoordSeq(int idx, int coordinat
double x = 0, y = 0, z = 0;
int *errorNum = 0;
 
-   GEOSCoordSeq_getX(gcs_old, idx, );
-   GEOSCoordSeq_getY(gcs_old, idx, );
-
-   if (coordinatesNum > 2)
-   GEOSCoordSeq_getZ(gcs_old, idx, );
+   if (!GEOSCoordSeq_getX(gcs_old, idx, ) ||
+   !GEOSCoordSeq_getY(gcs_old, idx, ) ||
+   (coordinatesNum > 2 && !GEOSCoordSeq_getZ(gcs_old, idx, )))
+   throw(MAL, "geom.Transform", "Couldn't get coordinates");
 
/* check if the passed reference system is geographic (proj=latlong)
 * and change the degrees to radians because pj_transform works with 
radians*/
@@ -83,9 +82,9 @@ transformCoordSeq(int idx, int coordinat
errorNum = pj_get_errno_ref();
if (*errorNum != 0) {
if (coordinatesNum > 2)
-   throw(MAL, "geom.wkbTransform", "Couldn't transform 
point (%f %f %f): %s\n", x, y, z, pj_strerrno(*errorNum));
+   throw(MAL, "geom.Transform", "Couldn't transform point 
(%f %f %f): %s\n", x, y, z, pj_strerrno(*errorNum));
else
-   throw(MAL, "geom.wkbTransform", "Couldn't transform 
point (%f %f): %s\n", x, y, pj_strerrno(*errorNum));
+   throw(MAL, "geom.Transform", "Couldn't transform point 
(%f %f): %s\n", x, y, pj_strerrno(*errorNum));
}
 
/* check if the destination reference system is geographic and change
@@ -93,11 +92,10 @@ transformCoordSeq(int idx, int coordinat
if (pj_is_latlong(proj4_dst))
radians2degrees(, , );
 
-   GEOSCoordSeq_setX(gcs_new, idx, x);
-   GEOSCoordSeq_setY(gcs_new, idx, y);
-
-   if (coordinatesNum > 2)
-   GEOSCoordSeq_setZ(gcs_new, idx, z);
+   if (!GEOSCoordSeq_setX(gcs_new, idx, x) ||
+   !GEOSCoordSeq_setY(gcs_new, idx, y) ||
+   (coordinatesNum > 2 && !GEOSCoordSeq_setZ(gcs_new, idx, z)))
+   throw(MAL, "geom.Transform", "Couldn't set coordinates");
 
return MAL_SUCCEED;
 }
@@ -118,12 +116,12 @@ transformPoint(GEOSGeometry **transforme
gcs_old = GEOSGeom_getCoordSeq(geosGeometry);
 
if (gcs_old == NULL)
-   throw(MAL, "geom.wkbTransform", "GEOSGeom_getCoordSeq failed");
+   throw(MAL, "geom.Transform", "GEOSGeom_getCoordSeq failed");
 
/* create the coordinates sequence for the transformed geometry */
gcs_new = GEOSCoordSeq_create(1, coordinatesNum);
if (gcs_new == NULL)
-   throw(MAL, "geom.wkbTransform", "GEOSGeom_getCoordSeq failed");
+   throw(MAL, "geom.Transform", "GEOSGeom_getCoordSeq failed");
 
/* create the transformed coordinates */
ret = transformCoordSeq(0, coordinatesNum, proj4_src, proj4_dst, 
gcs_old, gcs_new);
@@ -136,7 +134,7 @@ transformPoint(GEOSGeometry **transforme
*transformedGeometry = GEOSGeom_createPoint(gcs_new);
if (*transformedGeometry == NULL) {
GEOSCoordSeq_destroy(gcs_new);
-   throw(MAL, "geom.wkbTransform", "GEOSGeom_getCoordSeq failed");
+   throw(MAL, "geom.Transform", "GEOSGeom_getCoordSeq failed");
}
 
return MAL_SUCCEED;
@@ -156,15 +154,16 @@ transformLine(GEOSCoordSeq *gcs_new, con
gcs_old = GEOSGeom_getCoordSeq(geosGeometry);
 
if (gcs_old == NULL)
-  

MonetDB: default - Merge with Jun2016 branch.

2016-06-13 Thread Sjoerd Mullender
Changeset: afa68e3be37f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=afa68e3be37f
Removed Files:
monetdb5/tests/BugReports/Tests/no.146.stable.out
Modified Files:
clients/Makefile.ag
clients/Tests/SQL-dump.stable.out
clients/Tests/SQL-dump.stable.out.int128
geom/sql/Makefile.ag
sql/backends/monet5/UDF/README
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (55 lines):

diff --git a/clients/Makefile.ag b/clients/Makefile.ag
--- a/clients/Makefile.ag
+++ b/clients/Makefile.ag
@@ -6,4 +6,4 @@
 
 SUBDIRS = HAVE_MAPI?mapilib HAVE_MAPI?mapiclient HAVE_ODBC?odbc HAVE_PERL?perl 
php examples NATIVE_WIN32?NT
 
-EXTRA_DIST_DIR = Tests ruby
+EXTRA_DIST_DIR = Tests ruby R
diff --git a/clients/Tests/SQL-dump.stable.out 
b/clients/Tests/SQL-dump.stable.out
--- a/clients/Tests/SQL-dump.stable.out
+++ b/clients/Tests/SQL-dump.stable.out
@@ -7179,6 +7179,7 @@ drop function pcre_replace(string, strin
 [ 12,  "SEQUENCE"  ]
 [ 13,  "PROCEDURE" ]
 [ 14,  "BE_DROPPED"]
+[ 15,  "TYPE"  ]
 #drop function pcre_replace(string, string, string, string);
 
 # 13:32:07 >  
diff --git a/clients/Tests/SQL-dump.stable.out.int128 
b/clients/Tests/SQL-dump.stable.out.int128
--- a/clients/Tests/SQL-dump.stable.out.int128
+++ b/clients/Tests/SQL-dump.stable.out.int128
@@ -7728,6 +7728,7 @@ drop function pcre_replace(string, strin
 [ 12,  "SEQUENCE"  ]
 [ 13,  "PROCEDURE" ]
 [ 14,  "BE_DROPPED"]
+[ 15,  "TYPE"  ]
 #drop function pcre_replace(string, string, string, string);
 
 # 15:15:20 >  
diff --git a/geom/sql/Makefile.ag b/geom/sql/Makefile.ag
--- a/geom/sql/Makefile.ag
+++ b/geom/sql/Makefile.ag
@@ -10,4 +10,4 @@ headers_sql = {
SOURCES = 40_geom.sql
 }
 
-EXTRA_DIST_DIR = Tests
+EXTRA_DIST_DIR = Tests conformance functions pg_regression
diff --git a/monetdb5/tests/BugReports/Tests/no.146.stable.out 
b/monetdb5/tests/BugReports/Tests/no.146.stable.out
deleted file mode 100644
diff --git a/sql/backends/monet5/UDF/README b/sql/backends/monet5/UDF/README
--- a/sql/backends/monet5/UDF/README
+++ b/sql/backends/monet5/UDF/README
@@ -1,3 +1,7 @@
-This directory is a template for extending SQL with a new scalar type.
-For further documentation, see the MonetDB website at
+This directory is a template for extending SQL with a new user-defined
+function (UDF).  For further documentation, see the MonetDB website at
 http://www.monetdb.org/Documentation/Cookbooks/SQLrecipes/UserDefinedFunction
+as well as the Mercurial repository at
+http://dev.monetdb.org/hg/MonetDB-extend
+and especially the file reverse/README.rst in there, which contains a
+lot of hands-on information for creating a UDF.
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-06-10 Thread Sjoerd Mullender
Changeset: 401aa484fac1 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=401aa484fac1
Modified Files:
.hgtags
MonetDB.spec
debian/changelog
java/Makefile.ag
java/build.properties
java/pom.xml
java/release.txt
libversions
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (105 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -624,3 +624,6 @@ 51322027cb7e7c27f03fc7c3cab4db4fd4cd4446
 51322027cb7e7c27f03fc7c3cab4db4fd4cd4446 Jul2015_SP4_release
 192e3168234a5f9f8a4d1c4ce17805f608f001c3 Jun2016_1
 192e3168234a5f9f8a4d1c4ce17805f608f001c3 Jun2016_release
+b29fdfe9c590f674208212bf4ead617beef4b73c Jun2016_3
+192e3168234a5f9f8a4d1c4ce17805f608f001c3 Jun2016_release
+b29fdfe9c590f674208212bf4ead617beef4b73c Jun2016_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -1012,6 +1012,10 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Fri Jun 10 2016 Sjoerd Mullender  - 11.23.3-20160610
+- Rebuilt.
+- BZ#4015: Daemon crashes on database release command
+
 * Wed Jun 01 2016 Sjoerd Mullender  - 11.23.1-20160601
 - Rebuilt.
 - BZ#2407: Merovingian: allow binds to given ip/interface
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+monetdb (11.23.3) unstable; urgency=low
+
+  * Rebuilt.
+  * BZ#4015: Daemon crashes on database release command
+
+ -- Sjoerd Mullender   Fri, 10 Jun 2016 13:23:50 +0200
+
 monetdb (11.23.1) unstable; urgency=low
 
   * Rebuilt.
diff --git a/java/Makefile.ag b/java/Makefile.ag
--- a/java/Makefile.ag
+++ b/java/Makefile.ag
@@ -16,7 +16,7 @@ JAVA_HOME = @JAVA_HOME@
 ant_distjdbc = {
COND = HAVE_JAVAJDBC
DIR = datadir/monetdb/lib
-   FILES = monetdb-mcl-1.13.jar monetdb-jdbc-2.20.jar jdbcclient.jar
+   FILES = monetdb-mcl-1.13.jar monetdb-jdbc-2.21.jar jdbcclient.jar
 }
 
 ant_distmerocontrol = {
diff --git a/java/build.properties b/java/build.properties
--- a/java/build.properties
+++ b/java/build.properties
@@ -19,7 +19,7 @@ MCL_MINOR=13
 # major release number
 JDBC_MAJOR=2
 # minor release number
-JDBC_MINOR=20
+JDBC_MINOR=21
 # an additional identifying string
 JDBC_VER_SUFFIX=Liberica
 # the default port to connect on, if no port given when using SQL
diff --git a/java/pom.xml b/java/pom.xml
--- a/java/pom.xml
+++ b/java/pom.xml
@@ -6,7 +6,7 @@
 
monetdb
monetdb-jdbc
-   2.20
+   2.21
${project.groupId}:${project.artifactId}
MonetDB JDBC driver
https://www.monetdb.org
diff --git a/java/release.txt b/java/release.txt
--- a/java/release.txt
+++ b/java/release.txt
@@ -1,6 +1,6 @@
 RELEASE NOTES
-MonetDB JDBC driver version 2.20 (Liberica/MCL-1.13)
-Release date: 2016-06-01
+MonetDB JDBC driver version 2.21 (Liberica/MCL-1.13)
+Release date: 2016-06-10
 
 This JDBC driver is designed for use with MonetDB, a main-memory
 database.  For more information see https://www.monetdb.org/.
diff --git a/libversions b/libversions
--- a/libversions
+++ b/libversions
@@ -36,13 +36,13 @@
 
 # version of the GDK library (subdirectory gdk; also includes
 # common/options and common/utils)
-GDK_VERSION=13:0:0
+GDK_VERSION=13:1:0
 
 # version of the MAPI library (subdirectory clients/mapilib)
 MAPI_VERSION=8:0:0
 
 # version of the MONETDB5 library (subdirectory monetdb5, not including extras)
-MONETDB5_VERSION=21:0:0
+MONETDB5_VERSION=21:1:0
 
 # version of the STREAM library (subdirectory common/stream)
 STREAM_VERSION=8:0:0
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-06-10 Thread Sjoerd Mullender
Changeset: 7999f1e71260 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7999f1e71260
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
clients/python2/setup.py
clients/python3/setup.py
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files..

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-06-10 Thread Sjoerd Mullender
Changeset: f0c0f3da92ef for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f0c0f3da92ef
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
clients/python2/setup.py
clients/python3/setup.py
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files.

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-06-10 Thread Sjoerd Mullender
Changeset: a14ff350c496 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a14ff350c496
Modified Files:
debian/control
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (21 lines):

diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -5,8 +5,6 @@ Maintainer: MonetDB BV = 5), autotools-dev, bison, libatomic-ops-dev,
  libbam-dev, libbz2-dev, libcurl4-gnutls-dev, libgeos-dev (>= 3.4.0),
  libgsl0-dev, libpcre3-dev, libreadline-dev, liblzma-dev,
@@ -136,8 +134,6 @@ Description: MonetDB ODBC driver
 
 Package: php5-monetdb-client
 Architecture: all
-# wheezy, jessie, precise, trusty, wily: php5-common
-# xenial: php-common
 Depends: ${shlibs:Depends}, ${misc:Depends}, php-common
 Description: MonetDB php5 client module
  MonetDB is a database management system that is developed from a
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-06-10 Thread Sjoerd Mullender
Changeset: 6da88eafadbd for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6da88eafadbd
Modified Files:
MonetDB.spec
debian/changelog
debian/control
debian/fix-deb.sh
java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
java/src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java
java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
monetdb5/ChangeLog-Archive
sql/backends/monet5/sql_round_impl.h
sql/backends/monet5/sql_upgrades.c
sql/scripts/51_sys_schema_extension.sql
sql/server/rel_dump.c
sql/server/rel_prop.c
sql/server/rel_psm.c
sql/storage/bat/bat_logger.c
sql/test/emptydb-upgrade-chain-hge/Tests/check.stable.out.int128
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/check.stable.out
sql/test/emptydb-upgrade-chain/Tests/check.stable.out.int128
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade-hge/Tests/check.stable.out.int128
sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
sql/test/emptydb-upgrade/Tests/check.stable.out
sql/test/emptydb-upgrade/Tests/check.stable.out.int128
sql/test/emptydb-upgrade/Tests/upgrade.stable.out
sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
sql/test/emptydb/Tests/check.stable.out
sql/test/emptydb/Tests/check.stable.out.int128
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32
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
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.oid32
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:

Merge with Jun2016 branch.


diffs (truncated from 1262 to 300 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -9,7 +9,7 @@
 %define bits 32
 %else
 %define bits 64
-%define with_int128=1
+%define with_int128 1
 %endif
 
 # only add .oidXX suffix if oid size differs from bit size
@@ -695,7 +695,7 @@ fi
 %if %{bits} == 64
 %package -n MonetDB5-server-hugeint
 Summary: MonetDB - 128-bit integer support for MonetDB5-server
-Group: Application/Databases
+Group: Applications/Databases
 Requires: MonetDB5-server%{?_isa}
 
 %description -n MonetDB5-server-hugeint
@@ -910,7 +910,6 @@ Group: Applications/Databases
 Requires: %{name}-testing = %{version}-%{release}
 Requires: %{name}-client-tests = %{version}-%{release}
 Requires: python
-BuildArch: noarch
 
 %description testing-python
 MonetDB is a database management system that is developed from a
@@ -1276,7 +1275,7 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 - gdk: Removed all versions of the SORTloop macro.
 
 * Tue Apr  5 2016 Sjoerd Mullender  - 11.23.1-20160601
-- monetdb5: Removed algerbra.like with a BAT argument.  Use 
algebra.likesubselect
+- monetdb5: Removed algebra.like with a BAT argument.  Use 
algebra.likesubselect
   instead.
 
 * Tue Apr  5 2016 Sjoerd Mullender  - 11.23.1-20160601
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -382,7 +382,7 @@ monetdb (11.23.1) unstable; urgency=low
 
 monetdb (11.23.1) unstable; urgency=low
 
-  * monetdb5: Removed algerbra.like with a BAT argument.  Use 
algebra.likesubselect
+  * monetdb5: Removed algebra.like with a BAT argument.  Use 
algebra.likesubselect
 instead.
 
  -- Sjoerd Mullender   Tue, 5 Apr 2016 16:10:50 +0200
diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -19,6 +19,7 @@ X-Python3-Version: >= 3.0
 Package: libmonetdb13
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
+Conflicts: libmonetdb5-server-geom (< ${source:Version})
 Description: MonetDB core library
  MonetDB is a database management system that is developed from a
  main-memory perspective with use of a fully decomposed storage model,
@@ -58,7 +59,8 @@ Description: MonetDB stream library
 
 Package: libmonetdb-stream-dev
 Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, libmonetdb-stream8
+Depends: ${shlibs:Depends}, ${misc:Depends},
+ libmonetdb-stream8 (= ${source:Version})
 Description: MonetDB stream library development files
  MonetDB is a database management system that is developed from a
  main-memory perspective with use of a fully decomposed 

MonetDB: default - Merge with Jun2016 branch.

2016-06-07 Thread Sjoerd Mullender
Changeset: 94d47d41e081 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=94d47d41e081
Modified Files:
debian/fix-deb.sh
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (63 lines):

diff --git a/debian/fix-deb.sh b/debian/fix-deb.sh
--- a/debian/fix-deb.sh
+++ b/debian/fix-deb.sh
@@ -1,16 +1,41 @@
 #!/bin/bash
-if [ -f /etc/lsb-release ]; then
-source /etc/lsb-release
-ID=${DISTRIB_ID,,}
-VERSION_ID=$DISTRIB_RELEASE
-elif [ -f /etc/os-release ]; then
-source /etc/os-release
-else
-echo "don't know what distro this is"
-exit 1
-fi
+case $# in
+0)
+# figure out which distribution this is
+if [ -f /etc/lsb-release ]; then
+   source /etc/lsb-release
+   SUITE=$DISTRIB_CODENAME
+elif [ -f /etc/os-release ]; then
+   source /etc/os-release
+   if [[ $ID == debian ]]; then
+   SUITE="${VERSION#*(}"
+   SUITE="${SUITE%)*}"
+   else
+   case $VERSION in
+   *\(*\)*)
+   SUITE="${VERSION#*(}"
+   SUITE="${SUITE% *)*}"
+   ;;
+   *)
+   SUITE="${VERSION#*, }"
+   SUITE="${SUITE% *)*}"
+   ;;
+   esac
+   SUITE=${SUITE,,}
+   fi
+else
+   echo "don't know what distro this is"
+   exit 1
+fi
+;;
+1)
+# we're passed the name of the distribution
+SUITE=$1
+;;
+esac
 
-if [[ ( $ID == debian && $VERSION_ID -lt 8 ) || ( $ID == ubuntu && $VERSION_ID 
< 15.10 ) ]]; then
+case $SUITE in
+wheezy | precise | trusty)
 # fix control file because these systems don't have liblas and a
 # too old version of libgeos
 sed -i 's/, libgeos-dev[^,]*//;s/, liblas-c-dev[^,]*//' debian/control
@@ -18,4 +43,5 @@ if [[ ( $ID == debian && $VERSION_ID -lt
 sed -i '/^Package:.*geom/,/^$/d' debian/control
 rm debian/libmonetdb5-server-lidar.install 
debian/libmonetdb5-server-geom.install
 sed -i 
'/geo[ms]=yes/s/yes/no/;/gdal=yes/s/yes/no/;/lidar=yes/s/yes/no/;/liblas=yes/s/yes/no/'
 debian/rules
-fi
+;;
+esac
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-06-06 Thread Sjoerd Mullender
Changeset: 6191486e55aa for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6191486e55aa
Added Files:
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.oid32
Modified Files:
configure.ag
gdk/gdk_bbp.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 19998 to 300 lines):

diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -162,7 +162,7 @@ AC_ARG_ENABLE(netcdf,
[enable support for netcdf (default=auto)]),
enable_netcdf=$enableval,
enable_netcdf=$dft_netcdf)
-   
+
 dft_lidar=auto
 AC_ARG_ENABLE(lidar,
AS_HELP_STRING([--enable-lidar],
@@ -299,6 +299,13 @@ AC_ARG_ENABLE(developer,
enable_developer=$enableval,
enable_developer=$dft_developer)
 
+dft_sanitizer=no
+AC_ARG_ENABLE(sanitizer,
+   AS_HELP_STRING([--enable-sanitizer],
+   [enable support for the GCC address sanitizer (default=no)]),
+   enable_sanitizer=$enableval,
+   enable_sanitizer=$dft_sanitizer)
+
 dnl The console is a direct client hooked onto the kernel with full
 dnl administrative privileges, bypassing any security checks.  It is
 dnl handy only during development.
@@ -521,7 +528,7 @@ case "$host_os" in
LINUX_DIST=`source /etc/os-release; echo ${ID}:${VERSION_ID}`
elif test -s /etc/fedora-release ; then
LINUX_DIST="`cat /etc/fedora-release | head -n1 \
-   | sed 's|^.*\(Fedora\).* release \([[0-9]][[^ \n]]*\)\( 
.*\)*$|\1:\2|'`" 
+   | sed 's|^.*\(Fedora\).* release \([[0-9]][[^ \n]]*\)\( 
.*\)*$|\1:\2|'`"
elif test -s /etc/centos-release ; then
LINUX_DIST="`cat /etc/centos-release | head -n1 \
| sed 's|^\(CentOS\).* release \([[0-9]][[^ \n]]*\)\( 
.*\)*$|\1:\2|'`"
@@ -533,7 +540,7 @@ case "$host_os" in
| sed 's|^.*\(Red\) \(Hat\).* Linux *\([[A-Z]]*\) 
release \([[0-9]][[^ \n]]*\)\( .*\)*$|\1\2:\4\3|' \
| sed 's|^Red Hat Enterprise Linux \([[AW]]S\) release 
\([[0-9]][[^ \n]]*\)\( .*\)*$|RHEL:\2\1|' \
| sed 's|^\(CentOS\).* release \([[0-9]][[^ \n]]*\)\( 
.*\)*$|\1:\2|' \
-   | sed 's|^\(Scientific\) Linux.* release \([[0-9]][[^ 
\n]]*\)\( .*\)*$|\1:\2|'`" 
+   | sed 's|^\(Scientific\) Linux.* release \([[0-9]][[^ 
\n]]*\)\( .*\)*$|\1:\2|'`"
elif test -s /etc/SuSE-release ; then
LINUX_DIST="`cat /etc/SuSE-release   | head -n1 \
| sed 's|^.*\(S[[Uu]]SE\) LINUX Enterprise 
\([[SD]]\)[[ervsktop]]* \([[0-9]][[^ \n]]*\)\( .*\)*$|\1:\3E\2|' \
@@ -542,7 +549,7 @@ case "$host_os" in
| sed 's|^open\(S[[Uu]]SE\) \([[0-9]][[^ \n]]*\)\( 
.*\)*$|\1:\2|'`"
elif test -s /etc/gentoo-release ; then
LINUX_DIST="`cat /etc/gentoo-release | head -n1 \
-   | sed 's|^.*\(Gentoo\) Base System.* 
[[versionrelease]]* \([[0-9]][[^ \n]]*\)\( .*\)*$|\1:\2|'`" 
+   | sed 's|^.*\(Gentoo\) Base System.* 
[[versionrelease]]* \([[0-9]][[^ \n]]*\)\( .*\)*$|\1:\2|'`"
elif test -s /etc/lsb-release ; then
LINUX_DIST="`grep '^DISTRIB_ID=' /etc/lsb-release | cut -d'=' 
-f2`:`grep '^DISTRIB_RELEASE=' /etc/lsb-release | cut -d'=' -f2`"
elif test -s /etc/debian_version ; then
@@ -604,7 +611,7 @@ dnl  Set compiler switches.
 dnl  The idea/goal is to be as strict as possible, i.e., enable preferably
 dnl  *all* warnings and make them errors. This should help keep the code
 dnl  as clean and portable as possible.
-dnl  It turned out, though, that this, especially turning all warnings into 
+dnl  It turned out, though, that this, especially turning all warnings into
 dnl  errors, is a bit too ambitious for configure/autoconf. Hence, we set
 dnl  all flags that enable specific warnings and those that make the
 dnl  compiler die on them (-Werror) in X_CFLAGS, which are added to the
@@ -753,11 +760,31 @@ yes-*-*)
dnl  # 193: zero used for undefined preprocessing identifier
dnl  #1357: optimization disabled due to excessive resource 
requirements; contact Intel Premier Support for assistance
dnl  #1572: floating-point equality and inequality comparisons are 
unreliable
-   dnl  #1599: declaration hides variable 
+   dnl  #1599: declaration hides variable
dnl  #2259: non-pointer conversion from "." to "." may lose significant 
bits
;;
 esac
 fi
+if test "x$enable_sanitizer" != xno; then
+case "$GCC" in
+yes)
+   # if no specific sanitizer was specified, use address sanitizer
+   if test "x$enable_sanitizer" = xyes; then
+   MCHECK_ADD_FLAG([-fsanitize=address])
+   else
+   MCHECK_ADD_FLAG([-fsanitize=$enable_sanitizer])
+   if test 

MonetDB: default - Merge with Jun2016 branch.

2016-06-03 Thread Sjoerd Mullender
Changeset: c04decc5762a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c04decc5762a
Modified Files:
monetdb5/mal/mal.c
monetdb5/modules/mal/mdb.c
sql/server/rel_partition.c
sql/server/rel_partition.h
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (47 lines):

diff --git a/monetdb5/mal/mal.c b/monetdb5/mal/mal.c
--- a/monetdb5/mal/mal.c
+++ b/monetdb5/mal/mal.c
@@ -3,7 +3,7 @@
  * 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 2008-2015 MonetDB B.V.
+ * Copyright 1997 - July 2008 CWI, August 2008 - 2016 MonetDB B.V.
  */
 
 /* (author) M. Kersten */
diff --git a/monetdb5/modules/mal/mdb.c b/monetdb5/modules/mal/mdb.c
--- a/monetdb5/modules/mal/mdb.c
+++ b/monetdb5/modules/mal/mdb.c
@@ -296,6 +296,7 @@ MDBgetFrame(BAT *b, BAT*bn, Client cntxt
BUNappend(b, getVarName(mb, i), FALSE);
BUNappend(bn, buf, FALSE);
GDKfree(buf);
+   buf = NULL;
}
return MAL_SUCCEED;
 }
diff --git a/sql/server/rel_partition.c b/sql/server/rel_partition.c
--- a/sql/server/rel_partition.c
+++ b/sql/server/rel_partition.c
@@ -3,7 +3,7 @@
  * 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 2008-2015 MonetDB B.V.
+ * Copyright 1997 - July 2008 CWI, August 2008 - 2016 MonetDB B.V.
  */
 
 /*#define DEBUG*/
diff --git a/sql/server/rel_partition.h b/sql/server/rel_partition.h
--- a/sql/server/rel_partition.h
+++ b/sql/server/rel_partition.h
@@ -3,7 +3,7 @@
  * 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 2008-2015 MonetDB B.V.
+ * Copyright 1997 - July 2008 CWI, August 2008 - 2016 MonetDB B.V.
  */
 
 #ifndef _REL_PARTITION_H_
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-06-03 Thread Sjoerd Mullender
Changeset: 3524ecb9c715 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3524ecb9c715
Modified Files:
buildtools/doc/windowsbuild.rst
common/utils/msabaoth.c
gdk/gdk_logger.c
java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
java/src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java
monetdb5/mal/mal_interpreter.c
monetdb5/modules/atoms/json.c
monetdb5/modules/mal/groupby.c
monetdb5/modules/mal/mdb.c
monetdb5/tools/libmonetdb5.rc
sql/jdbc/tests/Tests/Test_PSmetadata.stable.out
sql/test/pg_regress/Tests/All
tools/mserver/monet_version.c.in
tools/mserver/mserver5.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 971 to 300 lines):

diff --git a/buildtools/doc/windowsbuild.rst b/buildtools/doc/windowsbuild.rst
--- a/buildtools/doc/windowsbuild.rst
+++ b/buildtools/doc/windowsbuild.rst
@@ -727,14 +727,15 @@ Java
 
 
 If you want to build the java component of the MonetDB suite, you need
-Java__.  Get Java from http://java.sun.com/, but make sure you do
-*not* get the latest version.  Get the Java Development Kit 1.5.  Our
-current JDBC driver is not compatible with Java 1.6 yet.
+JDK__.  Get the Java Development Kit from
+http://www.oracle.com/technetwork/java/.
+We currently compile for target Java 7, so we do not yet support
+JDBC methods/features introduced in Java 8 (or higher).
 
 In addition to the Java Development Kit, you will also need `Apache Ant`_
 which is responsible for the actual building of the driver.
 
-__ http://java.sun.com/
+__ http://www.oracle.com/technetwork/java/
 
 Apache Ant
 --
@@ -840,8 +841,8 @@ is an example: version numbers may diffe
  rem Bison (and Diff)
  set Path=%ProgramFiles%\GnuWin32\bin;%Path%
  rem Java is optional, set JAVA_HOME for convenience
- set JAVA_HOME=%ProgramFiles%\Java\jdk1.5.0_16
- set Path=%JAVA_HOME%\bin;%ProgramFiles%\Java\jre1.5.0_16\bin;%Path%
+ set JAVA_HOME=%ProgramFiles%\Java\jdk1.8.0_92
+ set Path=%JAVA_HOME%\bin;%ProgramFiles%\Java\jre1.8.0_92\bin;%Path%
  rem Apache Ant is optional, but required for Java compilation
  set Path=%ProgramFiles%\apache-ant-1.7.1\bin;%Path%
 
diff --git a/common/utils/msabaoth.c b/common/utils/msabaoth.c
--- a/common/utils/msabaoth.c
+++ b/common/utils/msabaoth.c
@@ -849,7 +849,7 @@ msab_getUplogInfo(sabuplog *ret, const s
int c;
start = stop = up = 0;
p = data;
-   while ((c = (char)fgetc(f)) != EOF) {
+   while ((c = getc(f)) != EOF) {
*p = (char)c;
switch (*p) {
case '\t':
diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1106,9 +1106,11 @@ logger_readlogs(logger *lg, FILE *fp, ch
if (lid < lg->id) {
lg->id = lid;
}
-   /* if this is a shared logger, write the id in
-* the shared file */
-   logger_update_catalog_file(lg, lg->local_dir, 
LOGFILE_SHARED, lg->local_dbfarm_role);
+   if (lg->shared) {
+   /* if this is a shared logger, write the id in
+* the shared file */
+   logger_update_catalog_file(lg, lg->local_dir, 
LOGFILE_SHARED, lg->local_dbfarm_role);
+   }
}
}
return res;
@@ -1862,6 +1864,7 @@ logger_new(int debug, const char *fn, co
 
lg->debug = debug;
lg->shared = shared;
+   lg->local_dbfarm_role = 0; /* only used if lg->shared */
 
lg->changes = 0;
lg->version = version;
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -439,7 +439,7 @@ public class MonetDatabaseMetaData exten
try {
st = con.createStatement();
rs = st.executeQuery(query);
-   // Fetch the first column output and concatenate the 
values into a StringBuffer separated by comma's
+   // Fetch the first column output and concatenate the 
values into a StringBuilder separated by comma's
boolean isfirst = true;
while (rs.next()) {
String value = rs.getString(1);
@@ -496,12 +496,23 @@ public class MonetDatabaseMetaData exten
public String getSystemFunctions() {
String wherePart =
"WHERE \"id\" NOT IN (SELECT \"func_id\" FROM 
\"sys\".\"args\" 

MonetDB: default - Merge with Jun2016 branch.

2016-06-01 Thread Sjoerd Mullender
Changeset: abdcbeeebb4a for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=abdcbeeebb4a
Added Files:
debian/libmonetdb-client8.install
debian/libmonetdb-stream8.install
debian/libmonetdb13.install
Removed Files:
buildtools/ChangeLog.Jul2015
clients/ChangeLog.Jul2015
clients/mapilib/ChangeLog.Jul2015
clients/python2/ChangeLog.Jul2015
clients/python3/ChangeLog.Jul2015
common/stream/ChangeLog.Jul2015
debian/libmonetdb-client7.install
debian/libmonetdb-stream7.install
debian/libmonetdb12.install
gdk/ChangeLog.Jul2015
geom/ChangeLog.Jul2015
java/ChangeLog.Jul2015
monetdb5/ChangeLog.Jul2015
sql/ChangeLog.Jul2015
testing/ChangeLog.Jul2015
tools/merovingian/ChangeLog.Jul2015
Modified Files:
.hgtags
MonetDB.spec
buildtools/ChangeLog-Archive
buildtools/ChangeLog.Jun2016
clients/ChangeLog-Archive
clients/ChangeLog.Jun2016
debian/changelog
debian/control
gdk/ChangeLog-Archive
gdk/ChangeLog.Jun2016
geom/ChangeLog-Archive
geom/ChangeLog.Jun2016
java/ChangeLog-Archive
java/ChangeLog.Jun2016
java/Makefile.ag
java/build.properties
java/pom.xml
java/release.txt
libversions
monetdb5/ChangeLog-Archive
monetdb5/ChangeLog.Jun2016
sql/ChangeLog-Archive
sql/ChangeLog.Jun2016
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 1812 to 300 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -622,3 +622,5 @@ ee54e50fccb17db48bbfd983882e8491a869131c
 ee54e50fccb17db48bbfd983882e8491a869131c Jul2015_SP3_release
 51322027cb7e7c27f03fc7c3cab4db4fd4cd4446 Jul2015_19
 51322027cb7e7c27f03fc7c3cab4db4fd4cd4446 Jul2015_SP4_release
+192e3168234a5f9f8a4d1c4ce17805f608f001c3 Jun2016_1
+192e3168234a5f9f8a4d1c4ce17805f608f001c3 Jun2016_release
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -110,7 +110,7 @@ Vendor: MonetDB BV 
 Group: Applications/Databases
 License: MPLv2.0
 URL: http://www.monetdb.org/
-Source: 
http://dev.monetdb.org/downloads/sources/Jul2015-SP4/%{name}-%{version}.tar.bz2
+Source: 
http://dev.monetdb.org/downloads/sources/Jun2016/%{name}-%{version}.tar.bz2
 
 # we need systemd for the _unitdir macro to exist
 %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
@@ -1013,6 +1013,337 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Wed Jun 01 2016 Sjoerd Mullender  - 11.23.1-20160601
+- Rebuilt.
+- BZ#2407: Merovingian: allow binds to given ip/interface
+- BZ#2815: No SRID support
+- BZ#3460: incomplete implementation of JDBC driver supportsConvert(),
+  supportsConvert(int fromType, int toType) methods in
+  MonetDatabaseMetaData.java
+- BZ#3711: JDBC connection using jdbcclient.jar is very slow
+- BZ#3877: MonetDBLite should allow close then re-open databases?
+  without restarting R
+- BZ#3911: Invalid connect() call in 'redirect' mode
+- BZ#3920: query with DISTINCT and correlated scalar subquery in SELECT
+  list causes Assertion failure and crash of mserver5
+- BZ#3927: COUNT( distinct my_clob ) , QUANTILE( my_double , number )
+  fails in dev build
+- BZ#3956: MonetDBLite unable to execute LIMIT 1 statement
+- BZ#3972: Drastic Memory leak of 600GBs while generating plan for Query
+  with 25 joins
+- BZ#3974: Prepared statement rel_bin.c:2378: rel2bin_project: Assertion
+  `0' failed.
+- BZ#3975: Suspicious code in store_manager() on exit path
+- BZ#3978: SQL returns TypeException 'aggr.subcorr' undefined for
+  sys.corr function
+- BZ#3980: JOIN with references on both sides crashes mserver
+- BZ#3981: Incorrect LEFT JOIN when FROM clause contains nested subqueries
+- BZ#3983: Creation of a Foreign Key which partially maps to a primary
+  key is accepted without a warning
+- BZ#3984: Multiple paths in the .profile
+- BZ#3985: ruby-monetdb-sql gem fails for negative timezone offset
+  (USA, etc.)
+- BZ#3987: Segfault on malformed csv import
+- BZ#3991: MonetDBLite feature request: default monetdb.sequential to
+  FALSE on windows
+- BZ#3994: MonetDBLite dbDisconnect with shutdown=TRUE freezes the
+  console on windows
+- BZ#3995: NullPointerException when calling getObject()
+- BZ#3997: calling scalar functions sys.isaUUID(str) or sys.isaUUID(uuid)
+  fail
+- BZ#3999: length() returns wrong length for strings which have spaces
+  at the end of the string
+- BZ#4010: RELEASE SAVEPOINT after ALTER TABLE crashes mserver5
+- BZ#4011: sys.sessions.user column always shows 'monetdb'
+- BZ#4013: GDKextendf does not free up memory when it fails due to
+  insufficient resources
+
+* Thu May 26 2016 Martin van Dinther  
- 11.23.1-20160601
+- java: Fixed problem in DatabaseMetaData.getUDTs() when it was 

MonetDB: default - Merge with Jun2016 branch, not changing any f...

2016-06-01 Thread Sjoerd Mullender
Changeset: da201a02d759 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=da201a02d759
Modified Files:
MonetDB.spec
NT/installer32/MonetDB-ODBC-Installer.vdproj
NT/installer32/MonetDB5-Geom-Module.vdproj
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB-ODBC-Installer.vdproj
NT/installer64/MonetDB5-Geom-Module.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
NT/monetdb_config.h.in
NT/rules.msc
clients/mapilib/mapi.rc
clients/odbc/driver/driver.rc
clients/odbc/winsetup/setup.rc
clients/python2/setup.py
clients/python3/setup.py
configure.ag
gdk/libbat.rc
monetdb5/tools/libmonetdb5.rc
vertoo.data
Branch: default
Log Message:

Merge with Jun2016 branch, not changing any files.

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-06-01 Thread Sjoerd Mullender
Changeset: e35bf57e40f3 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e35bf57e40f3
Modified Files:
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (246 lines):

diff --git a/NT/installer32/MonetDB5-SQL-Installer.vdproj 
b/NT/installer32/MonetDB5-SQL-Installer.vdproj
--- a/NT/installer32/MonetDB5-SQL-Installer.vdproj
+++ b/NT/installer32/MonetDB5-SQL-Installer.vdproj
@@ -111,12 +111,6 @@
 }
 "Entry"
 {
-"MsmKey" = "8:_1BC0095AF28F4FA89B8C63C9A1E6E4CA"
-"OwnerKey" = "8:_UNDEFINED"
-"MsmSig" = "8:_UNDEFINED"
-}
-"Entry"
-{
 "MsmKey" = "8:_1EB34EF8EFB84BAF952F92AD02EEB00C"
 "OwnerKey" = "8:_UNDEFINED"
 "MsmSig" = "8:_UNDEFINED"
@@ -687,12 +681,6 @@
 }
 "Entry"
 {
-"MsmKey" = "8:_AE686CBAB379451B9E7E836DFC1E2E8B"
-"OwnerKey" = "8:_UNDEFINED"
-"MsmSig" = "8:_UNDEFINED"
-}
-"Entry"
-{
 "MsmKey" = "8:_B04121FE9B884D19BE4D330CA83E9ED8"
 "OwnerKey" = "8:_UNDEFINED"
 "MsmSig" = "8:_UNDEFINED"
@@ -861,12 +849,6 @@
 }
 "Entry"
 {
-"MsmKey" = "8:_DE24FFC57F274EE2B69A2727A960003E"
-"OwnerKey" = "8:_UNDEFINED"
-"MsmSig" = "8:_UNDEFINED"
-}
-"Entry"
-{
 "MsmKey" = "8:_E0896DBB80744539988DDE841F630AAE"
 "OwnerKey" = "8:_UNDEFINED"
 "MsmSig" = "8:_UNDEFINED"
@@ -1388,26 +1370,6 @@
 "IsDependency" = "11:FALSE"
 "IsolateTo" = "8:"
 }
-
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1BC0095AF28F4FA89B8C63C9A1E6E4CA"
-{
-"SourcePath" = "8:lib\\monetdb5\\lib_rapi.dll"
-"TargetName" = "8:lib_rapi.dll"
-"Tag" = "8:"
-"Folder" = "8:_B593DAA0787744D6A44D17884E0C3951"
-"Condition" = "8:"
-"Transitive" = "11:FALSE"
-"Vital" = "11:TRUE"
-"ReadOnly" = "11:FALSE"
-"Hidden" = "11:FALSE"
-"System" = "11:FALSE"
-"Permanent" = "11:FALSE"
-"SharedLegacy" = "11:FALSE"
-"PackageAs" = "3:1"
-"Register" = "3:1"
-"Exclude" = "11:FALSE"
-"IsDependency" = "11:FALSE"
-"IsolateTo" = "8:"
-}
 
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1EB34EF8EFB84BAF952F92AD02EEB00C"
 {
 "SourcePath" = "8:lib\\monetdb5\\clients.mal"
@@ -3288,26 +3250,6 @@
 "IsDependency" = "11:FALSE"
 "IsolateTo" = "8:"
 }
-
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_AE686CBAB379451B9E7E836DFC1E2E8B"
-{
-"SourcePath" = "8:lib\\monetdb5\\autoload\\50_rapi.mal"
-"TargetName" = "8:50_rapi.mal"
-"Tag" = "8:"
-"Folder" = "8:_A4A821D237B943CFACE8D54F3F3971E3"
-"Condition" = "8:"
-"Transitive" = "11:FALSE"
-"Vital" = "11:TRUE"
-"ReadOnly" = "11:FALSE"
-"Hidden" = "11:FALSE"
-"System" = "11:FALSE"
-"Permanent" = "11:FALSE"
-"SharedLegacy" = "11:FALSE"
-"PackageAs" = "3:1"
-"Register" = "3:1"
-"Exclude" = "11:FALSE"
-"IsDependency" = "11:FALSE"
-"IsolateTo" = "8:"
-}
 
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B04121FE9B884D19BE4D330CA83E9ED8"
 {
 "SourcePath" = "8:lib\\monetdb5\\status.mal"
@@ -3868,26 +3810,6 @@
 "IsDependency" = "11:FALSE"
 "IsolateTo" = "8:"
 }
-
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_DE24FFC57F274EE2B69A2727A960003E"
-{
-"SourcePath" = "8:lib\\monetdb5\\rapi.mal"
-"TargetName" = "8:rapi.mal"
-"Tag" = "8:"
-"Folder" = "8:_B593DAA0787744D6A44D17884E0C3951"
-"Condition" = "8:"
-"Transitive" = "11:FALSE"
-"Vital" = "11:TRUE"
-"ReadOnly" = "11:FALSE"
-"Hidden" = "11:FALSE"
-"System" = "11:FALSE"
-"Permanent" = "11:FALSE"
-"SharedLegacy" = "11:FALSE"
-"PackageAs" = "3:1"
-"Register" = "3:1"
-"Exclude" = "11:FALSE"
-"IsDependency" = "11:FALSE"
-"IsolateTo" = "8:"
-}
 
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_E0896DBB80744539988DDE841F630AAE"
 {
 "SourcePath" = "8:lib\\monetdb5\\identifier.mal"
diff --git a/NT/installer64/MonetDB5-SQL-Installer.vdproj 
b/NT/installer64/MonetDB5-SQL-Installer.vdproj
--- a/NT/installer64/MonetDB5-SQL-Installer.vdproj
+++ b/NT/installer64/MonetDB5-SQL-Installer.vdproj
@@ -111,12 +111,6 @@
 }
 

MonetDB: default - Merge with Jun2016 branch.

2016-06-01 Thread Sjoerd Mullender
Changeset: 322e01f32648 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=322e01f32648
Modified Files:
clients/R/Tests/dbi.R
clients/R/Tests/dbi.stable.out
configure.ag
gdk/gdk_utils.c
monetdb5/extras/rapi/rapi.R
monetdb5/extras/rapi/rapi.c
monetdb5/optimizer/opt_pipes.c
sql/backends/monet5/Tests/All
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 2216 to 300 lines):

diff --git a/clients/R/Tests/dbi.R b/clients/R/Tests/dbi.R
--- a/clients/R/Tests/dbi.R
+++ b/clients/R/Tests/dbi.R
@@ -152,7 +152,6 @@ dbWriteTable(conn,tname,mtcars,append=T,
 stopifnot(identical(as.integer(2*nrow(mtcars)),tsize(conn,tname)))
 dbRemoveTable(conn,tname)
 
-dbRemoveTable(conn,tname)
 dbWriteTable(conn,tname,mtcars,append=F,overwrite=F,insert=T)
 dbRemoveTable(conn,tname)
 
diff --git a/clients/R/Tests/dbi.stable.out b/clients/R/Tests/dbi.stable.out
--- a/clients/R/Tests/dbi.stable.out
+++ b/clients/R/Tests/dbi.stable.out
@@ -62,7 +62,6 @@ Ready.
 [1] TRUE
 [1] TRUE
 [1] TRUE
-[1] FALSE
 [1] TRUE
 [1] TRUE
 [1] TRUE
diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -3393,6 +3393,9 @@ AC_SUBST(Erundir)
 Qlibdir="$libdir"
 Xlibdir="`$translatepath "$libdir"`"
 QXlibdir="`echo "$Xlibdir" | sed 's///g'`"
+Elibdir="`echo "$Xlibdir" | sed 's/{exec_prefix}/{prefix}/'`"
+eval "Elibdir=${Elibdir}"
+QElibdir="`echo "$Elibdir" | sed 's///g'`"
 AC_SUBST(Qlibdir)
 AC_SUBST(Xlibdir)
 AC_SUBST(QXlibdir)
@@ -3469,6 +3472,7 @@ AC_SUBST(QXSOURCE)
 AC_DEFINE_UNQUOTED(LOCALSTATEDIR,"$QElocalstatedir",[modifiable single-machine 
data])
 AC_DEFINE_UNQUOTED(DATA_DIR,"$QEdatadir",[read-only architecture-independent 
data])
 AC_DEFINE_UNQUOTED(BINDIR,"$QEbindir",[location where binaries are installed])
+AC_DEFINE_UNQUOTED(LIBDIR,"$QElibdir",[location where libraries are installed])
 
 dnl  On Solaris, libxml2 enables threading only when _REENTRANT, __MT__
 dnl  or _POSIX_C_SOURCE >= 199506L is defined.  The latter is only
diff --git a/gdk/gdk_utils.c b/gdk/gdk_utils.c
--- a/gdk/gdk_utils.c
+++ b/gdk/gdk_utils.c
@@ -421,6 +421,1056 @@ MT_init(void)
 #endif
 }
 
+/*
+ * @+ Session Initialization
+ * The interface code to the operating system is highly dependent on
+ * the processing environment. It can be filtered away with
+ * compile-time flags.  Suicide is necessary due to some system
+ * implementation errors.
+ *
+ * The kernel requires file descriptors for I/O with the user.  They
+ * are thread specific and should be obtained by a function.
+ *
+ * The arguments relevant for the kernel are extracted from the list.
+ * Their value is turned into a blanc space.
+ */
+
+#define CATNAP 50  /* time to sleep in ms for catnaps */
+
+static MT_Id GDKvmtrim_id;
+
+static void
+GDKvmtrim(void *limit)
+{
+   int highload = 0;
+   ssize_t prevmem = 0, prevrss = 0;
+
+   (void) limit;
+
+   do {
+   int t;
+   size_t rss;
+   ssize_t rssdiff, memdiff;
+   size_t cursize;
+
+   /* sleep using catnaps so we can exit in a timely fashion */
+   for (t = highload ? 500 : 5000; t > 0; t -= CATNAP) {
+   MT_sleep_ms(CATNAP);
+   if (GDKexiting())
+   return;
+   }
+   rss = MT_getrss();
+   rssdiff = (ssize_t) rss - (ssize_t) prevrss;
+   cursize = GDKvm_cursize();
+   memdiff = (ssize_t) cursize - (ssize_t) prevmem;
+   MEMDEBUG fprintf(stderr, "alloc = " SZFMT " %+zd rss = " SZFMT 
" %+zd\n", cursize, memdiff, rss, rssdiff);
+   prevmem = cursize;
+   prevrss = rss;
+   if (memdiff >= 0 && rssdiff < -32 * (ssize_t) MT_pagesize()) {
+   BBPtrim(rss);
+   highload = 1;
+   } else {
+   highload = 0;
+   }
+   } while (!GDKexiting());
+}
+
+static void THRinit(void);
+static void GDKlockHome(void);
+
+int
+GDKinit(opt *set, int setlen)
+{
+   char *dbpath = mo_find_option(set, setlen, "gdk_dbpath");
+   char *p;
+   opt *n;
+   int i, nlen = 0;
+   char buf[16];
+
+   /* some sanity checks (should also find if symbols are not defined) */
+   assert(sizeof(char) == SIZEOF_CHAR);
+   assert(sizeof(short) == SIZEOF_SHORT);
+   assert(sizeof(int) == SIZEOF_INT);
+   assert(sizeof(long) == SIZEOF_LONG);
+   assert(sizeof(lng) == SIZEOF_LNG);
+#ifdef HAVE_HGE
+   assert(sizeof(hge) == SIZEOF_HGE);
+#endif
+   assert(sizeof(oid) == SIZEOF_OID);
+   assert(sizeof(void *) == SIZEOF_VOID_P);
+   assert(sizeof(size_t) == SIZEOF_SIZE_T);
+   assert(sizeof(ptrdiff_t) == SIZEOF_PTRDIFF_T);
+   assert(SIZEOF_OID == SIZEOF_INT || SIZEOF_OID == SIZEOF_LNG);
+
+#ifdef NEED_MT_LOCK_INIT
+ 

MonetDB: default - Merge with Jun2016 branch.

2016-06-01 Thread Sjoerd Mullender
Changeset: 54f4523dc7df for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=54f4523dc7df
Modified Files:
gdk/gdk_storage.c
monetdb5/mal/mal_dataflow.c
monetdb5/optimizer/opt_reorder.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (112 lines):

diff --git a/gdk/gdk_storage.c b/gdk/gdk_storage.c
--- a/gdk/gdk_storage.c
+++ b/gdk/gdk_storage.c
@@ -353,7 +353,8 @@ GDKextendf(int fd, size_t size, const ch
/* extending failed, try to reduce file size
 * back to original */
int err = errno;
-   (void) ftruncate(fd, stb.st_size);
+   if (ftruncate(fd, stb.st_size))
+   perror("ftruncate");
errno = err; /* restore for error message */
GDKsyserror("GDKextendf: could not extend file\n");
}
diff --git a/monetdb5/mal/mal_dataflow.c b/monetdb5/mal/mal_dataflow.c
--- a/monetdb5/mal/mal_dataflow.c
+++ b/monetdb5/mal/mal_dataflow.c
@@ -97,8 +97,12 @@ mal_dataflow_reset(void)
 {
stopMALdataflow();
memset((char*) workers, 0,  sizeof(workers));
-   if( todo)
+   if( todo) {
+   GDKfree(todo->data);
+   MT_lock_destroy(>l);
+   MT_sema_destroy(>s);
GDKfree(todo);
+   }
todo = 0;   /* pending instructions */
exiting = 0;
 }
diff --git a/monetdb5/optimizer/opt_reorder.c b/monetdb5/optimizer/opt_reorder.c
--- a/monetdb5/optimizer/opt_reorder.c
+++ b/monetdb5/optimizer/opt_reorder.c
@@ -59,6 +59,17 @@ typedef struct{
int stmt[FLEXIBLE_ARRAY_MEMBER];
 } *Node, NodeRecord;
 
+static void
+OPTremoveDep(Node *list, int lim)
+{
+   int i;
+
+   for (i=0; i< lim; i++)
+   if (list[i])
+   GDKfree(list[i]);
+   GDKfree(list);
+}
+
 static Node *
 OPTdependencies(Client cntxt, MalBlkPtr mb, int **Ulist)
 {
@@ -81,9 +92,7 @@ OPTdependencies(Client cntxt, MalBlkPtr 
block |= p->barrier != 0;
list[i]= (Node) GDKzalloc(offsetof(NodeRecord, stmt) + 
sizeof(int) * p->argc);
if (list[i] == NULL){
-   for (i--; i>=0; i--)
-   GDKfree(list[i]);
-   GDKfree(list);
+   OPTremoveDep(list, i);
GDKfree(var);
return 0;
}
@@ -97,9 +106,7 @@ OPTdependencies(Client cntxt, MalBlkPtr 
if ( var[ getArg(p,j)] ) {
//list[i]->stmt[j] = var [getArg(p,j)];
// escape we should avoid reused variables.
-   for (i--; i>=0; i--)
-   GDKfree(list[i]);
-   GDKfree(list);
+   OPTremoveDep(list, i + 1);
GDKfree(var);
return 0;
}
@@ -148,10 +155,8 @@ OPTdependencies(Client cntxt, MalBlkPtr 
 */
 
if ( block ){
-   for (i--; i>=0; i--)
-   GDKfree(list[i]);
+   OPTremoveDep(list, mb->stop);
GDKfree(uselist);
-   GDKfree(list);
GDKfree(var);
return NULL;
}
@@ -160,17 +165,6 @@ OPTdependencies(Client cntxt, MalBlkPtr 
return list;
 }
 
-static void
-OPTremoveDep(Node *list, int lim)
-{
-   int i;
-
-   for (i=0; i< lim; i++)
-   if (list[i])
-   GDKfree(list[i]);
-   GDKfree(list);
-}
-
 static int
 OPTbreadthfirst(Client cntxt, MalBlkPtr mb, int pc, int max, InstrPtr old[], 
Node dep[], int *uselist)
 {
@@ -279,7 +273,7 @@ OPTreorderImplementation(Client cntxt, M
old = mb->stmt;
if ( newMalBlkStmt(mb, mb->ssize) < 0) {
GDKfree(uselist);
-   GDKfree(dep);
+   OPTremoveDep(dep, limit);
return 0;
}

___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-05-31 Thread Sjoerd Mullender
Changeset: 52f3618ebba3 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=52f3618ebba3
Modified Files:
MonetDB.spec
configure.ag
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (103 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -9,10 +9,8 @@
 %define bits 32
 %else
 %define bits 64
-%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
 %define with_int128=1
 %endif
-%endif
 
 # only add .oidXX suffix if oid size differs from bit size
 %if %{bits} == 64 && %{?oid32:1}%{!?oid32:0}
@@ -594,7 +592,7 @@ Requires: %{name}-client%{?_isa} = %{ver
 Obsoletes: MonetDB5-server-rdf
 %if (0%{?fedora} >= 22)
 Recommends: %{name}-SQL-server5%{?_isa} = %{version}-%{release}
-%if %{?with_int128:1}%{!?with_int128:0}
+%if %{bits} == 64
 Recommends: MonetDB5-server-hugeint%{?_isa} = %{version}-%{release}
 %endif
 Suggests: %{name}-client%{?_isa} = %{version}-%{release}
@@ -655,7 +653,7 @@ fi
 %exclude %{_libdir}/monetdb5/rapi.mal
 %endif
 %exclude %{_libdir}/monetdb5/sql*.mal
-%if %{?with_int128:1}%{!?with_int128:0}
+%if %{bits} == 64
 %exclude %{_libdir}/monetdb5/*_hge.mal
 %exclude %{_libdir}/monetdb5/autoload/*_hge.mal
 %endif
@@ -694,7 +692,7 @@ fi
 %docdir %{_datadir}/doc/MonetDB
 %{_datadir}/doc/MonetDB/*
 
-%if %{?with_int128:1}%{!?with_int128:0}
+%if %{bits} == 64
 %package -n MonetDB5-server-hugeint
 Summary: MonetDB - 128-bit integer support for MonetDB5-server
 Group: Application/Databases
@@ -749,7 +747,7 @@ Requires: %{_bindir}/systemd-tmpfiles
 Obsoletes: MonetDB-SQL-devel
 Obsoletes: %{name}-SQL
 %if (0%{?fedora} >= 22)
-%if %{?with_int128:1}%{!?with_int128:0}
+%if %{bits} == 64
 Recommends: %{name}-SQL-server5-hugeint%{?_isa} = %{version}-%{release}
 %endif
 Suggests: %{name}-client%{?_isa} = %{version}-%{release}
@@ -802,7 +800,7 @@ systemd-tmpfiles --create %{_sysconfdir}
 %endif
 %{_libdir}/monetdb5/createdb/*.sql
 %{_libdir}/monetdb5/sql*.mal
-%if %{?with_int128:1}%{!?with_int128:0}
+%if %{bits} == 64
 %exclude %{_libdir}/monetdb5/createdb/*_hge.sql
 %exclude %{_libdir}/monetdb5/sql*_hge.mal
 %endif
@@ -812,7 +810,7 @@ systemd-tmpfiles --create %{_sysconfdir}
 %docdir %{_datadir}/doc/MonetDB-SQL
 %{_datadir}/doc/MonetDB-SQL/*
 
-%if %{?with_int128:1}%{!?with_int128:0}
+%if %{bits} == 64
 %package SQL-server5-hugeint
 Summary: MonetDB5 128 bit integer (hugeint) support for SQL
 Group: Applications/Databases
diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -2842,14 +2842,14 @@ if test "x$have_gdal" != xno && test "x$
LIBS=""
found_gdal_h=yes
AC_CHECK_HEADER(gdal.h,,
-   AC_CHECK_HEADER(gdal/gdal.h,
+   [AC_CHECK_HEADER(gdal/gdal.h,
[if test "x$GDAL_CFLAGS" = x; then
GDAL_CFLAGS="-I/usr/include/gdal"
else
GDAL_CFLAGS="$GDAL_CFLAGS/gdal"
fi
CPPFLAGS="$save_CPPFLAGS $GDAL_CFLAGS"],
-   [found_gdal_h=no]))
+   [found_gdal_h=no])])
if test "x$found_gdal_h" = xyes; then
AC_CHECK_LIB(gdal, GDALAllRegister,
[AC_DEFINE(HAVE_GDAL, 1, [Define if you have the gdal 
library])
@@ -3116,8 +3116,12 @@ case "$enable_int128" in
 yes|auto)
have_hge=no
why_have_hge='(no 128-bit integer type found)'
-   AC_CHECK_TYPES([__int128, __int128_t, __uint128_t], [have_hge=yes; 
why_have_hge=''],
-   [if test x$enable_int128 = xyes; then AC_MSG_ERROR([128-bit 
integers not supported by platform]); fi])
+   AC_CHECK_TYPES([__int128, __int128_t, __uint128_t], [have_hge=yes; 
why_have_hge=''])
+   if test $have_hge = no; then
+   if test x$enable_int128 = xyes; then
+   AC_MSG_ERROR([128-bit integers not supported by 
platform])
+   fi
+   fi
;;
 no)
have_hge=no
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: default - Merge with Jun2016 branch.

2016-05-31 Thread Sjoerd Mullender
Changeset: 91827c387520 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=91827c387520
Removed Files:
monetdb5/optimizer/opt_qep.c
monetdb5/optimizer/opt_qep.h
Modified Files:
MonetDB.spec
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
clients/Tests/malcheck.sh
gdk/gdk_system.c
monetdb5/extras/rapi/rapi.c
monetdb5/mal/mal_builder.c
monetdb5/mal/mal_client.c
monetdb5/mal/mal_import.c
monetdb5/mal/mal_listing.c
monetdb5/mal/mal_profiler.c
monetdb5/mal/mal_recycle.c
monetdb5/mal/mal_resolve.c
monetdb5/mal/mal_resource.c
monetdb5/mal/mal_resource.h
monetdb5/mal/mal_runtime.c
monetdb5/modules/atoms/json.c
monetdb5/modules/atoms/str.c
monetdb5/modules/kernel/batstr.c
monetdb5/modules/mal/batExtensions.c
monetdb5/modules/mal/batExtensions.h
monetdb5/modules/mal/inspect.c
monetdb5/modules/mal/mal_io.c
monetdb5/modules/mal/sysmon.c
monetdb5/modules/mal/tablet.c
monetdb5/modules/mal/tokenizer.c
monetdb5/optimizer/Makefile.ag
monetdb5/optimizer/opt_mergetable.c
monetdb5/optimizer/opt_pushselect.c
monetdb5/optimizer/opt_wrapper.c
monetdb5/optimizer/optimizer.mal
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 1707 to 300 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -9,8 +9,10 @@
 %define bits 32
 %else
 %define bits 64
+%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
 %define with_int128=1
 %endif
+%endif
 
 # only add .oidXX suffix if oid size differs from bit size
 %if %{bits} == 64 && %{?oid32:1}%{!?oid32:0}
@@ -592,7 +594,7 @@ Requires: %{name}-client%{?_isa} = %{ver
 Obsoletes: MonetDB5-server-rdf
 %if (0%{?fedora} >= 22)
 Recommends: %{name}-SQL-server5%{?_isa} = %{version}-%{release}
-%if %{bits} == 64
+%if %{?with_int128:1}%{!?with_int128:0}
 Recommends: MonetDB5-server-hugeint%{?_isa} = %{version}-%{release}
 %endif
 Suggests: %{name}-client%{?_isa} = %{version}-%{release}
@@ -653,7 +655,7 @@ fi
 %exclude %{_libdir}/monetdb5/rapi.mal
 %endif
 %exclude %{_libdir}/monetdb5/sql*.mal
-%if %{bits} == 64
+%if %{?with_int128:1}%{!?with_int128:0}
 %exclude %{_libdir}/monetdb5/*_hge.mal
 %exclude %{_libdir}/monetdb5/autoload/*_hge.mal
 %endif
@@ -692,7 +694,7 @@ fi
 %docdir %{_datadir}/doc/MonetDB
 %{_datadir}/doc/MonetDB/*
 
-%if %{bits} == 64
+%if %{?with_int128:1}%{!?with_int128:0}
 %package -n MonetDB5-server-hugeint
 Summary: MonetDB - 128-bit integer support for MonetDB5-server
 Group: Application/Databases
@@ -747,7 +749,7 @@ Requires: %{_bindir}/systemd-tmpfiles
 Obsoletes: MonetDB-SQL-devel
 Obsoletes: %{name}-SQL
 %if (0%{?fedora} >= 22)
-%if %{bits} == 64
+%if %{?with_int128:1}%{!?with_int128:0}
 Recommends: %{name}-SQL-server5-hugeint%{?_isa} = %{version}-%{release}
 %endif
 Suggests: %{name}-client%{?_isa} = %{version}-%{release}
@@ -800,7 +802,7 @@ systemd-tmpfiles --create %{_sysconfdir}
 %endif
 %{_libdir}/monetdb5/createdb/*.sql
 %{_libdir}/monetdb5/sql*.mal
-%if %{bits} == 64
+%if %{?with_int128:1}%{!?with_int128:0}
 %exclude %{_libdir}/monetdb5/createdb/*_hge.sql
 %exclude %{_libdir}/monetdb5/sql*_hge.mal
 %endif
@@ -810,7 +812,7 @@ systemd-tmpfiles --create %{_sysconfdir}
 %docdir %{_datadir}/doc/MonetDB-SQL
 %{_datadir}/doc/MonetDB-SQL/*
 
-%if %{bits} == 64
+%if %{?with_int128:1}%{!?with_int128:0}
 %package SQL-server5-hugeint
 Summary: MonetDB5 128 bit integer (hugeint) support for SQL
 Group: Applications/Databases
@@ -966,7 +968,7 @@ developer, but if you do want to test, t
--with-ant=no \
--with-bz2=yes \
--with-curl=yes \
-   --with-gdal=yes \
+   --with-gdal=%{?with_lidar:yes}%{!?with_lidar:no} \
--with-geos=%{?with_geos:yes}%{!?with_geos:no} \
--with-java=no \
--with-liblas=%{?with_lidar:yes}%{!?with_lidar:no} \
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
@@ -31335,12 +31335,6 @@ comment Handle simple type coercions
 
 pattern optimizer.coercions():str 
 address OPTwrapper;
-pattern optimizer.dumpQEP(mod:str,fcn:str):str 
-address OPTwrapper;
-comment Produce an indented tree visualisation
-
-pattern optimizer.dumpQEP():void 
-address OPTwrapper;
 pattern optimizer.derivePath(mod:str,fcn:str):str 
 address OPTwrapper;
 comment Join path constructor
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
@@ -40756,12 +40756,6 @@ comment Handle simple type coercions
 
 pattern optimizer.coercions():str 
 

MonetDB: default - Merge with Jun2016 branch.

2016-05-30 Thread Sjoerd Mullender
Changeset: 38d729b48779 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=38d729b48779
Modified Files:
MonetDB.spec
NT/installer32/MonetDB5-SQL-Installer.vdproj
NT/installer64/MonetDB5-SQL-Installer.vdproj
clients/odbc/driver/ODBCConvert.c
debian/control
debian/fix-deb.sh
debian/monetdb-r.install
debian/monetdb5-sql.install
debian/rules
gdk/gdk_posix.c
gdk/gdk_storage.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (230 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -9,6 +9,7 @@
 %define bits 32
 %else
 %define bits 64
+%define with_int128=1
 %endif
 
 # only add .oidXX suffix if oid size differs from bit size
@@ -134,6 +135,7 @@ BuildRequires: liblas >= 1.8.0
 %endif
 BuildRequires: libatomic_ops-devel
 BuildRequires: libcurl-devel
+BuildRequires: xz-devel
 # BuildRequires: libmicrohttpd-devel
 # BuildRequires: libsphinxclient-devel
 BuildRequires: libuuid-devel
@@ -937,31 +939,43 @@ developer, but if you do want to test, t
--enable-console=yes \
--enable-debug=no \
--enable-developer=no \
+   --enable-embedded=no \
+   --enable-embedded-r=no \
--enable-fits=%{?with_fits:yes}%{!?with_fits:no} \
--enable-gdk=yes \
--enable-geom=%{?with_geos:yes}%{!?with_geos:no} \
--enable-gsl=yes \
--enable-instrument=no \
+   --enable-int128=%{?with_int128:yes}%{!?with_int128:no} \
--enable-jdbc=no \
--enable-lidar=%{?with_lidar:yes}%{!?with_lidar:no} \
+   --enable-mapi=yes \
--enable-merocontrol=no \
--enable-microhttpd=no \
--enable-monetdb5=yes \
+   --enable-netcdf=no \
--enable-odbc=yes \
--enable-oid32=%{?oid32:yes}%{!?oid32:no} \
--enable-optimize=yes \
--enable-profile=no \

--enable-rintegration=%{?with_rintegration:yes}%{!?with_rintegration:no} \
+   --enable-shp=no \
--enable-sql=yes \
--enable-strict=no \
--enable-testing=yes \
--with-ant=no \
--with-bz2=yes \
+   --with-curl=yes \
+   --with-gdal=yes \
--with-geos=%{?with_geos:yes}%{!?with_geos:no} \
--with-java=no \
--with-liblas=%{?with_lidar:yes}%{!?with_lidar:no} \
+   --with-libxml2=yes \
+   --with-lzma=yes \
+   --with-openssl=yes \
--with-perl=yes \
--with-perl-libdir=lib/perl5 \
+   --with-proj=no \
--with-pthread=yes \
--with-python2=yes \
--with-python3=%{?rhel:no}%{!?rhel:yes} \
@@ -969,6 +983,7 @@ developer, but if you do want to test, t
--with-samtools=%{?with_samtools:yes}%{!?with_samtools:no} \
--with-sphinxclient=no \
--with-unixodbc=yes \
+   --with-uuid=yes \
--with-valgrind=no \
%{?comp_cc:CC="%{comp_cc}"}
 
diff --git a/clients/odbc/driver/ODBCConvert.c 
b/clients/odbc/driver/ODBCConvert.c
--- a/clients/odbc/driver/ODBCConvert.c
+++ b/clients/odbc/driver/ODBCConvert.c
@@ -1344,7 +1344,8 @@ ODBCFetch(ODBCStmt *stmt,
case SQL_INTEGER:
case SQL_BIGINT:
case SQL_BIT: {
-   int f, n;
+   SQLUBIGINT f;
+   int n;
 
data = (char *) ptr;
 
diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -9,7 +9,7 @@ Vcs-Hg: http://dev.monetdb.org/hg/MonetD
 # http://www.debian.org/doc/debian-policy/ch-relationships.html
 Build-Depends: debhelper (>= 5), autotools-dev, bison, libatomic-ops-dev,
  libbam-dev, libbz2-dev, libcurl4-gnutls-dev, libgeos-dev (>= 3.4.0),
- libgsl0-dev, libpcre3-dev, libreadline-dev,
+ libgsl0-dev, libpcre3-dev, libreadline-dev, liblzma-dev,
  libssl-dev, libxml2-dev, perl, pkg-config, python, python3,
  unixodbc-dev, uuid-dev, zlib1g-dev, liblas-c-dev (>= 1.8.0), r-base
 Standards-Version: 3.8.0
diff --git a/debian/fix-deb.sh b/debian/fix-deb.sh
--- a/debian/fix-deb.sh
+++ b/debian/fix-deb.sh
@@ -17,5 +17,5 @@ if [[ ( $ID == debian && $VERSION_ID -lt
 sed -i '/^Package:.*lidar/,/^$/d' debian/control
 sed -i '/^Package:.*geom/,/^$/d' debian/control
 rm debian/libmonetdb5-server-lidar.install 
debian/libmonetdb5-server-geom.install
-sed -i '/geo[ms]=yes/s/yes/no/;/lidar=yes/s/yes/no/;/liblas=yes/s/yes/no/' 
debian/rules
+sed -i 
'/geo[ms]=yes/s/yes/no/;/gdal=yes/s/yes/no/;/lidar=yes/s/yes/no/;/liblas=yes/s/yes/no/'
 debian/rules
 fi
diff --git a/debian/monetdb-r.install b/debian/monetdb-r.install
--- a/debian/monetdb-r.install
+++ b/debian/monetdb-r.install
@@ -1,3 +1,4 @@
 debian/tmp/usr/lib/monetdb5/rapi.mal usr/lib/monetdb5
+debian/tmp/usr/lib/monetdb5/rapi.R usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/autoload/??_rapi.mal usr/lib/monetdb5/autoload
 debian/tmp/usr/lib/monetdb5/lib_rapi.so usr/lib/monetdb5
diff --git 

MonetDB: default - Merge with Jun2016 branch.

2016-05-27 Thread Sjoerd Mullender
Changeset: c6a0b6430948 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c6a0b6430948
Added Files:
sql/test/BugTracker-2015/Tests/concurrent-schema.Bug-3826.timeout
Modified Files:
debian/rules
java/ChangeLog.Jun2016
java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
java/tests/Test_Dobjects.java
sql/jdbc/tests/Tests/Test_Dobjects.stable.out
sql/test/BugTracker-2015/Tests/concurrent-schema.Bug-3826.stable.err
sql/test/BugTracker-2015/Tests/concurrent-schema.Bug-3826.stable.out
sql/test/BugTracker-2016/Tests/All
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (208 lines):

diff --git a/debian/rules b/debian/rules
--- a/debian/rules
+++ b/debian/rules
@@ -31,7 +31,7 @@ override_dh_auto_configure:
--enable-oid32=no \
--enable-optimize=yes \
--enable-profile=no \
-   --enable-rintegration=no \
+   --enable-rintegration=yes \
--enable-sql=yes \
--enable-strict=no \
--enable-testing=yes \
diff --git a/java/ChangeLog.Jun2016 b/java/ChangeLog.Jun2016
--- a/java/ChangeLog.Jun2016
+++ b/java/ChangeLog.Jun2016
@@ -1,6 +1,12 @@
 # ChangeLog file for java
 # This file is updated with Maddlog
 
+* Thu May 26 2016 Martin van Dinther 
+- Fixed problem in DatabaseMetaData.getUDTs() when it was called with
+  types parameter filled.  It used to throw SQException with message:
+  SELECT: identifier 'DATA_TYPE' unknown. Now it returns the UDTs which
+  match the provided array of data types.
+
 * Thu May 19 2016 Martin van Dinther 
 - Implemented MonetDatabaseMetaData.supportsConvert() and
   MonetDatabaseMetaData.supportsConvert(int fromType, int toType) methods.
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -3239,6 +3239,9 @@ public class MonetDatabaseMetaData exten
) throws SQLException
{
StringBuilder query = new StringBuilder(990);
+   if (types != null && types.length > 0) {
+   query.append("SELECT * FROM (");
+   }
query.append("SELECT cast(null as char(1)) AS \"TYPE_CAT\", " +
"\"schemas\".\"name\" AS \"TYPE_SCHEM\", " +
"\"types\".\"sqlname\" AS \"TYPE_NAME\", " +
@@ -3269,7 +3272,7 @@ public class MonetDatabaseMetaData exten
query.append(" AND \"types\".\"sqlname\" 
").append(composeMatchPart(typeNamePattern));
}
if (types != null && types.length > 0) {
-   query.append(" AND \"DATA_TYPE\" IN (");
+   query.append(") AS getUDTs WHERE \"DATA_TYPE\" IN (");
for (int i = 0; i < types.length; i++) {
if (i > 0) {
query.append(", ");
diff --git a/java/tests/Test_Dobjects.java b/java/tests/Test_Dobjects.java
--- a/java/tests/Test_Dobjects.java
+++ b/java/tests/Test_Dobjects.java
@@ -38,6 +38,9 @@ public class Test_Dobjects {
 // dumpResultSet(dbmd.getSchemas());   // this 
produces different outputs on different platforms due to dependency on SAMTOOLS 
and NETCDF. so exclude it
dumpResultSet(dbmd.getSchemas(null, "sys"));
dumpResultSet(dbmd.getTables(null, "sys", null, null));
+   dumpResultSet(dbmd.getUDTs(null, "sys", null, null));
+   int[] UDTtypes = { Types.STRUCT, Types.DISTINCT };
+   dumpResultSet(dbmd.getUDTs(null, "sys", null, 
UDTtypes));
} catch (SQLException e) {
System.out.println("FAILED :( "+ e.getMessage());
System.out.println("ABORTING TEST!!!");
diff --git a/sql/jdbc/tests/Tests/Test_Dobjects.stable.out 
b/sql/jdbc/tests/Tests/Test_Dobjects.stable.out
--- a/sql/jdbc/tests/Tests/Test_Dobjects.stable.out
+++ b/sql/jdbc/tests/Tests/Test_Dobjects.stable.out
@@ -107,8 +107,16 @@ as select "schema","table",max(count) as
 from sys.storagemodel() group by "schema","table"; nullnullnull
nullnull
 null   sys tracelogSYSTEM VIEW create view sys.tracelog as 
select * from sys.tracelog();   nullnullnullnullnull
 null   sys users   SYSTEM VIEW SELECT u."name" AS "name", 
ui."fullname", ui."default_schema" FROM db_users() AS u LEFT JOIN 
"sys"."db_user_info" AS ui ON u."name" = ui."name" ;   nullnullnull 
   nullnull
+Resultset with 7 columns
+TYPE_CAT   TYPE_SCHEM  TYPE_NAME   CLASS_NAME  

MonetDB: default - Merge with Jun2016 branch.

2016-05-26 Thread Sjoerd Mullender
Changeset: 27a1b439ac98 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=27a1b439ac98
Added Files:
debian/monetdb-r.install
Modified Files:
debian/control
debian/fix-deb.sh
debian/monetdb5-server.install
java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
sql/backends/monet5/vaults/shp/shp.h
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 1041 to 300 lines):

diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -11,7 +11,7 @@ Build-Depends: debhelper (>= 5), autotoo
  libbam-dev, libbz2-dev, libcurl4-gnutls-dev, libgeos-dev (>= 3.4.0),
  libgsl0-dev, libpcre3-dev, libreadline-dev,
  libssl-dev, libxml2-dev, perl, pkg-config, python, python3,
- unixodbc-dev, uuid-dev, zlib1g-dev, liblas-c-dev (>= 1.8.0)
+ unixodbc-dev, uuid-dev, zlib1g-dev, liblas-c-dev (>= 1.8.0), r-base
 Standards-Version: 3.8.0
 X-Python-Version: >= 2.6
 X-Python3-Version: >= 3.0
@@ -283,6 +283,22 @@ Description: MonetDB5 128 bit integer (h
  This package provides HUGEINT (128-bit integer) support for the SQL
  frontend of MonetDB.
 
+Package: monetdb-r
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, monetdb5-sql (= ${source:Version})
+Description: MonetDB5 128 bit integer (hugeint) support for SQL
+ MonetDB is a database management system that is developed from a
+ main-memory perspective with use of a fully decomposed storage model,
+ automatic index management, extensibility of data types and search
+ accelerators.  It also has an SQL frontend.
+ .
+ This package contains the interface to use the R language from within
+ SQL queries.
+ .
+ NOTE: INSTALLING THIS PACKAGE OPENS UP SECURITY ISSUES.  If you don't
+ know how this package affects the security of your system, do not
+ install it.
+
 Package: monetdb-testing
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}
diff --git a/debian/fix-deb.sh b/debian/fix-deb.sh
--- a/debian/fix-deb.sh
+++ b/debian/fix-deb.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 if [ -f /etc/lsb-release ]; then
 source /etc/lsb-release
 ID=${DISTRIB_ID,,}
diff --git a/debian/monetdb-r.install b/debian/monetdb-r.install
new file mode 100644
--- /dev/null
+++ b/debian/monetdb-r.install
@@ -0,0 +1,3 @@
+debian/tmp/usr/lib/monetdb5/rapi.mal usr/lib/monetdb5
+debian/tmp/usr/lib/monetdb5/autoload/??_rapi.mal usr/lib/monetdb5/autoload
+debian/tmp/usr/lib/monetdb5/lib_rapi.so usr/lib/monetdb5
diff --git a/debian/monetdb5-server.install b/debian/monetdb5-server.install
--- a/debian/monetdb5-server.install
+++ b/debian/monetdb5-server.install
@@ -1,25 +1,26 @@
 debian/tmp/usr/bin/mserver5 usr/bin
 debian/tmp/usr/lib/libmonetdb5.so.* usr/lib
 
-# usr/lib/monetdb5/lib_*.so EXCEPT: lib_{bam,geom,gsl,lidar,sql}.so
+# usr/lib/monetdb5/lib_*.so EXCEPT: lib_{bam,geom,gsl,lidar,rapi,sql}.so
 debian/tmp/usr/lib/monetdb5/lib_generator.so usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/lib_lsst.so usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/lib_opt_sql_append.so usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/lib_udf.so usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/lib_vault.so usr/lib/monetdb5
 
-# usr/lib/monetdb5/*.mal EXCEPT: {bam,geom,gsl,lidar,sql*,*_hge}.mal
-debian/tmp/usr/lib/monetdb5/[!bglsu]*.mal usr/lib/monetdb5
+# usr/lib/monetdb5/*.mal EXCEPT: {bam,geom,gsl,lidar,rapi,sql*,*_hge}.mal
+debian/tmp/usr/lib/monetdb5/[!bglrsu]*.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/ba[!m]*.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/b[!a]*.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/generator.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/g[!es]*.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/l[!i]*.mal usr/lib/monetdb5
+debian/tmp/usr/lib/monetdb5/r[!a]*.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/s[!q]*.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/udf.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/u[!d]*.mal usr/lib/monetdb5
 
-# usr/lib/monetdb5/autoload/*.mal EXCEPT: *_{bam,geom,gsl,hge,lidar,sql}.mal
+# usr/lib/monetdb5/autoload/*.mal EXCEPT: 
*_{bam,geom,gsl,hge,lidar,rapi,sql}.mal
 debian/tmp/usr/lib/monetdb5/autoload/??_batcalc.mal usr/lib/monetdb5/autoload
 debian/tmp/usr/lib/monetdb5/autoload/??_calc.mal usr/lib/monetdb5/autoload
 debian/tmp/usr/lib/monetdb5/autoload/??_generator.mal usr/lib/monetdb5/autoload
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
@@ -137,7 +137,7 @@ public class MonetResultSet extends Mone
}
 
/**
-* Constructor used by MonetFillableResultSet.
+* Constructor used by MonetVirtualResultSet.
 * DO NOT USE THIS CONSTRUCTOR IF YOU ARE NOT EXTENDING THIS OBJECT!
 *
 * @param columns the column names
@@ -300,14 +300,14 

MonetDB: default - Merge with Jun2016 branch.

2016-05-24 Thread Sjoerd Mullender
Changeset: 08dec86bd606 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=08dec86bd606
Added Files:
clients/R/Tests/install.timeout
Removed Files:
clients/R/MonetDB.R/DESCRIPTION
clients/R/MonetDB.R/NAMESPACE
clients/R/MonetDB.R/NEWS
clients/R/MonetDB.R/R/control.R
clients/R/MonetDB.R/R/dbapply.R
clients/R/MonetDB.R/R/dbi.R
clients/R/MonetDB.R/R/dplyr.R
clients/R/MonetDB.R/R/mapi.R
clients/R/MonetDB.R/man/MonetDB.R.Rd
clients/R/MonetDB.R/man/MonetDBLite.Rd
clients/R/MonetDB.R/man/control.Rd
clients/R/MonetDB.R/man/dbApply.Rd
clients/R/MonetDB.R/man/dbSendUpdate.Rd
clients/R/MonetDB.R/man/dbTransaction.Rd
clients/R/MonetDB.R/man/mc.Rd
clients/R/MonetDB.R/man/monetdb.read.csv.Rd
clients/R/MonetDB.R/man/monetdbRtype.Rd
clients/R/MonetDB.R/man/monetdb_queryinfo.Rd
clients/R/MonetDB.R/man/monetdbd.liststatus.Rd
clients/R/MonetDB.R/man/mq.Rd
clients/R/MonetDB.R/man/sqlitecompat.Rd
clients/R/MonetDB.R/man/src_monetdb.Rd
clients/R/MonetDB.R/src/mapisplit-r.c
clients/R/MonetDB.R/src/mapisplit.c
clients/R/MonetDB.R/src/mapisplit.h
clients/R/Tests/survey.R
clients/R/Tests/survey.reqtests
clients/R/Tests/survey.stable.err
clients/R/Tests/survey.stable.out
clients/R/build-for-cran.sh
tools/embedded/Makefile.ag
tools/embedded/Tests/All
tools/embedded/Tests/dbi.R
tools/embedded/Tests/dbi.reqtests
tools/embedded/Tests/dbi.stable.err
tools/embedded/Tests/dbi.stable.out
tools/embedded/Tests/deps-test.R
tools/embedded/Tests/deps-test.stable.err
tools/embedded/Tests/deps-test.stable.out
tools/embedded/Tests/deps-test.timeout
tools/embedded/Tests/dplyr.R
tools/embedded/Tests/install-binary.R
tools/embedded/Tests/install-binary.stable.err
tools/embedded/Tests/install-binary.stable.out
tools/embedded/Tests/install-source.R
tools/embedded/Tests/install-source.stable.err
tools/embedded/Tests/install-source.stable.out
tools/embedded/Tests/install-source.timeout
tools/embedded/Tests/install.reqtests
tools/embedded/Tests/lowlevel.R
tools/embedded/Tests/lowlevel.reqtests
tools/embedded/Tests/lowlevel.stable.err
tools/embedded/Tests/lowlevel.stable.out
tools/embedded/build-on-windows.bat
tools/embedded/build-rpkg.sh
tools/embedded/demo.c
tools/embedded/embedded.c
tools/embedded/embedded.h
tools/embedded/embeddedr.c
tools/embedded/embeddedr.h
tools/embedded/inlined_scripts.c
tools/embedded/inlined_scripts.py
tools/embedded/inlined_scripts.sh
tools/embedded/pcre-for-osx.h
tools/embedded/pkg-excludes
tools/embedded/rcheck.sh
tools/embedded/rpackage/DESCRIPTION
tools/embedded/rpackage/NAMESPACE
tools/embedded/rpackage/R/monetdb.R
tools/embedded/rpackage/configure
tools/embedded/rpackage/configure.win
tools/embedded/rpackage/man/embedded.Rd
tools/embedded/undef.h
tools/embedded/windows/libtool.sh
tools/embedded/windows/pmc.sh
tools/embedded/windows/sedscript.tpl
Modified Files:
clients/Makefile.ag
clients/R/Tests/All
clients/R/Tests/dbapply.R
clients/R/Tests/dbi.R
clients/R/Tests/dbi.stable.err
clients/R/Tests/deps-install.R
clients/R/Tests/deps-test.R
clients/R/Tests/dplyr-flights.R
clients/R/Tests/dplyr.R
clients/R/Tests/install.R
clients/R/Tests/install.stable.out
clients/R/Tests/testrandom.R
sql/test/Users/Tests/copyinto.SQL.py
tools/Makefile.ag
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 7880 to 300 lines):

diff --git a/clients/Makefile.ag b/clients/Makefile.ag
--- a/clients/Makefile.ag
+++ b/clients/Makefile.ag
@@ -6,4 +6,4 @@
 
 SUBDIRS = HAVE_MAPI?mapilib HAVE_MAPI?mapiclient HAVE_ODBC?odbc HAVE_PERL?perl 
php examples HAVE_PYTHON2?python2 HAVE_PYTHON3?python3 NATIVE_WIN32?NT
 
-EXTRA_DIST_DIR = Tests R ruby
+EXTRA_DIST_DIR = Tests ruby
diff --git a/clients/R/MonetDB.R/DESCRIPTION b/clients/R/MonetDB.R/DESCRIPTION
deleted file mode 100644
--- a/clients/R/MonetDB.R/DESCRIPTION
+++ /dev/null
@@ -1,15 +0,0 @@
-Package: MonetDB.R
-Version: 1.0.2
-Title: Connect MonetDB to R
-Authors@R: c(person("Hannes Muehleisen", role = c("aut", "cre"),email = 
"han...@cwi.nl"),
-   person("Anthony Damico", role = "aut"),
-   person("Thomas Lumley", role = "ctb"))
-Author: Hannes Muehleisen [aut, cre], Anthony Damico [aut], Thomas Lumley [ctb]
-Maintainer: Hannes Muehleisen 
-Imports: DBI (>= 0.3.1), digest (>= 0.6.4), methods, codetools
-Enhances: dplyr 

MonetDB: default - Merge with Jun2016 branch.

2016-05-24 Thread Sjoerd Mullender
Changeset: deac451e6cca for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=deac451e6cca
Added Files:

sql/test/bugs/Tests/WHERE_and_multiple_LEFT_JOIN_incorrect_results-JIRA-43.sql

sql/test/bugs/Tests/WHERE_and_multiple_LEFT_JOIN_incorrect_results-JIRA-43.stable.err

sql/test/bugs/Tests/WHERE_and_multiple_LEFT_JOIN_incorrect_results-JIRA-43.stable.out
Modified Files:
MonetDB.spec
common/stream/stream.c
gdk/gdk.h

monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows

monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows.single
monetdb5/mal/mal_module.c
monetdb5/modules/atoms/inet.c
monetdb5/modules/atoms/json.c
sql/backends/monet5/vaults/netcdf/netcdf.c
sql/benchmarks/tpch/Tests/01-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/04-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/05-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/16-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/22-explain.stable.out.32bit
sql/benchmarks/tpch/fileleak/Tests/leaks.stable.out.Windows
sql/server/sql_mvc.c
sql/test/bugs/Tests/All
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 733 to 300 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -44,17 +44,21 @@
 # and build the geom modules.  On RedHat Enterprise Linux and
 # derivatives (CentOS, Scientific Linux), the geos library is not
 # available.  However, the geos library is available in the Extra
-# Packages for Enterprise Linux (EPEL).  In other words, we can check
-# the fedpkgs macro (see above).
+# Packages for Enterprise Linux (EPEL).  However, On RHEL 6, the geos
+# library is too old for us, so we need an extra check for an
+# up-to-date version of RHEL.
 %if %{fedpkgs}
+%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
 %define with_geos 1
 %endif
+%endif
 
 # On Fedora, the liblas library is available, and so we can require it
 # and build the lidar modules.  On RedHat Enterprise Linux and
-# derivatives (CentOS, Scientific Linux), the liblas library is not
-# available, even with EPEL available.
-%if %{?rhel:0}%{!?rhel:1}
+# derivatives (CentOS, Scientific Linux), the liblas library is only
+# available if EPEL is enabled, and then only on version 7.
+%if %{fedpkgs}
+%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
 # If the _without_lidar macro is not set, the MonetDB-lidar RPM will
 # be created.  The macro can be set when using mock by passing it the
 # flag --without=lidar.
@@ -62,6 +66,7 @@
 %define with_lidar 1
 %endif
 %endif
+%endif
 
 %if %{?rhel:0}%{!?rhel:1}
 # If the _without_samtools macro is not set, the MonetDB-bam-MonetDB5
@@ -117,13 +122,15 @@ BuildRequires: bzip2-devel
 BuildRequires: cfitsio-devel
 %endif
 %if %{?with_geos:1}%{!?with_geos:0}
-BuildRequires: geos-devel >= 3.0.0
+BuildRequires: geos-devel >= 3.4.0
 %endif
 BuildRequires: gsl-devel
 %if %{?with_lidar:1}%{!?with_lidar:0}
-BuildRequires: liblas-devel gdal-devel libgeotiff-devel
+BuildRequires: liblas-devel >= 1.8.0
+BuildRequires: gdal-devel
+BuildRequires: libgeotiff-devel
 # Fedora 22 liblas-devel does not depend on liblas:
-BuildRequires: liblas
+BuildRequires: liblas >= 1.8.0
 %endif
 BuildRequires: libatomic_ops-devel
 BuildRequires: libcurl-devel
diff --git a/common/stream/stream.c b/common/stream/stream.c
--- a/common/stream/stream.c
+++ b/common/stream/stream.c
@@ -2113,7 +2113,11 @@ socket_write(stream *s, const void *buf,
 #ifdef _MSC_VER
WSAGetLastError() == WSAEWOULDBLOCK &&
 #else
-   (errno == EAGAIN || errno == EWOULDBLOCK) && /* it was! */
+   (errno == EAGAIN
+#if EAGAIN != EWOULDBLOCK
+|| errno == EWOULDBLOCK
+#endif
+   ) && /* it was! */
 #endif
s->timeout_func != NULL && /* callback function exists */
!(*s->timeout_func)()) /* callback says don't stop */
@@ -2139,7 +2143,11 @@ socket_write(stream *s, const void *buf,
 #ifdef _MSC_VER
WSAGetLastError() == WSAEWOULDBLOCK
 #else
-   (errno == EAGAIN || errno == EWOULDBLOCK)
+   (errno == EAGAIN
+#if EAGAIN != EWOULDBLOCK
+|| errno == EWOULDBLOCK
+#endif
+   )
 #endif
)
s->errnr = MNSTR_TIMEOUT;
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1148,6 +1148,7 @@ gdk_export bte ATOMelmshift(int sz);
  * @end itemize
  */
 /* NOTE: `p' is evaluated after a possible upgrade of the heap */
+#if SIZEOF_VAR_T == 8
 #define HTputvalue(b, p, v, copyall, HT)   \
do {\
   

MonetDB: default - Merge with Jun2016 branch.

2016-05-24 Thread Sjoerd Mullender
Changeset: d492ed0b6667 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d492ed0b6667
Added Files:
sql/test/bugs/Tests/cur_date_crash-JIRA-42.sql
sql/test/bugs/Tests/cur_date_crash-JIRA-42.stable.err
sql/test/bugs/Tests/cur_date_crash-JIRA-42.stable.out
Modified Files:
MonetDB.spec
gdk/gdk_bat.c
sql/backends/monet5/sql.c
sql/server/rel_optimizer.c
sql/test/bugs/Tests/All
tools/merovingian/daemon/connections.c
tools/merovingian/daemon/connections.h
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (225 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -107,7 +107,10 @@ URL: http://www.monetdb.org/
 Source: 
http://dev.monetdb.org/downloads/sources/Jul2015-SP4/%{name}-%{version}.tar.bz2
 
 # we need systemd for the _unitdir macro to exist
+%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
+# RHEL >= 7, and all current Fedora
 BuildRequires: systemd
+%endif
 BuildRequires: bison
 BuildRequires: bzip2-devel
 %if %{?with_fits:1}%{!?with_fits:0}
@@ -763,13 +766,15 @@ systemd-tmpfiles --create %{_sysconfdir}
 %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
 # RHEL >= 7, and all current Fedora
 %{_sysconfdir}/tmpfiles.d/monetdbd.conf
+%{_unitdir}/monetdbd.service
 %else
 # RedHat Enterprise Linux < 7
 %dir %attr(775,monetdb,monetdb) %{_localstatedir}/run/monetdb
 %exclude %{_sysconfdir}/tmpfiles.d/monetdbd.conf
+# no _unitdir macro
+%exclude %{_prefix}/lib/systemd/system/monetdbd.service
 %endif
 %config(noreplace) %{_localstatedir}/monetdb5/dbfarm/.merovingian_properties
-%{_unitdir}/monetdbd.service
 %{_libdir}/monetdb5/autoload/??_sql.mal
 %{_libdir}/monetdb5/lib_sql.so
 %{_libdir}/monetdb5/*.sql
diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c
--- a/gdk/gdk_bat.c
+++ b/gdk/gdk_bat.c
@@ -328,6 +328,7 @@ BATattach(int tt, const char *heapfile, 
 * are no NIL values, we cannot safely assume there are none.
 */
bn->T->nonil = 0;
+   bn->T->nil = 0;
if (cap > 1) {
bn->tsorted = 0;
bn->trevsorted = 0;
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
@@ -2241,6 +2241,8 @@ ambigious_refs( list *exps, list *refs)
 {
node *n;
 
+   if (!refs)
+   return 0;
for(n=refs->h; n; n = n->next) {
if (ambigious_ref(exps, n->data))
return 1;
diff --git a/sql/test/bugs/Tests/All b/sql/test/bugs/Tests/All
--- a/sql/test/bugs/Tests/All
+++ b/sql/test/bugs/Tests/All
@@ -105,3 +105,4 @@ polymorphism
 emili
 substring_limit_bug
 apply_with_union_assertion
+cur_date_crash-JIRA-42
diff --git a/sql/test/bugs/Tests/cur_date_crash-JIRA-42.sql 
b/sql/test/bugs/Tests/cur_date_crash-JIRA-42.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/bugs/Tests/cur_date_crash-JIRA-42.sql
@@ -0,0 +1,10 @@
+CREATE TABLE foo (bar int);
+CREATE TABLE foo1 (bar int);
+
+SELECT bar FROM foo WHERE bar NOT IN (SELECT bar FROM foo1);
+
+SELECT CURDATE() FROM foo;
+
+SELECT CURDATE() FROM foo WHERE bar NOT IN (SELECT bar FROM foo1);
+drop table foo1;
+drop table foo;
diff --git a/sql/test/bugs/Tests/cur_date_crash-JIRA-42.stable.err 
b/sql/test/bugs/Tests/cur_date_crash-JIRA-42.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/bugs/Tests/cur_date_crash-JIRA-42.stable.err
@@ -0,0 +1,37 @@
+stderr of test 'cur_date_crash-JIRA-42` in directory 'sql/test/bugs` itself:
+
+
+# 19:47:16 >  
+# 19:47:16 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36422" "--set" 
"mapi_usock=/var/tmp/mtest-30463/.s.monetdb.36422" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_bugs"
 "--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 19:47:16 >  
+
+# 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 = 36422
+# cmdline opt  mapi_usock = /var/tmp/mtest-30463/.s.monetdb.36422
+# cmdline opt  monet_prompt = 
+# cmdline opt  mal_listing = 2
+# cmdline opt  gdk_dbpath = 
/home/niels/scratch/rc-monetdb/Linux-x86_64/var/MonetDB/mTests_sql_test_bugs
+# cmdline opt  mal_listing = 0
+# cmdline opt  embedded_r = yes
+# cmdline opt  gdk_debug = 536870922
+
+# 19:47:17 >  
+# 19:47:17 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-30463" "--port=36422"
+# 19:47:17 >  
+
+
+# 19:47:17 >  
+# 19:47:17 >  

MonetDB: default - Merge with Jun2016 branch.

2016-05-20 Thread Sjoerd Mullender
Changeset: 15f11c880d5c for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=15f11c880d5c
Added Files:

sql/test/BugTracker-2016/Tests/RELEASE_SAVEPOINT_after_UPDATE_crash.Bug-4010.sql

sql/test/BugTracker-2016/Tests/RELEASE_SAVEPOINT_after_UPDATE_crash.Bug-4010.stable.err

sql/test/BugTracker-2016/Tests/RELEASE_SAVEPOINT_after_UPDATE_crash.Bug-4010.stable.out
Modified Files:
java/ChangeLog.Jun2016
java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
sql/test/BugTracker-2016/Tests/All
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 579 to 300 lines):

diff --git a/java/ChangeLog.Jun2016 b/java/ChangeLog.Jun2016
--- a/java/ChangeLog.Jun2016
+++ b/java/ChangeLog.Jun2016
@@ -1,6 +1,12 @@
 # ChangeLog file for java
 # This file is updated with Maddlog
 
+* Thu May 19 2016 Martin van Dinther 
+- Implemented MonetDatabaseMetaData.supportsConvert() and
+  MonetDatabaseMetaData.supportsConvert(int fromType, int toType) methods.
+  It used to always return false. Now it returns true for the supported 
conversions.
+  This fixes Bug 3460.
+
 * Sun May  8 2016 Jennie Zhang 
 - ResultSet.setFetchSize(): added a dummy implementation to get rid
   of the SQLFeatureNotSupportedException. In MonetDB, it does not
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -396,48 +396,16 @@ public class MonetDatabaseMetaData exten
/**
 * Get a comma separated list of all a database's SQL keywords that
 * are NOT also SQL:2003 keywords.
-* 
 *
 * @return a comma separated list of MonetDB keywords
 */
@Override
public String getSQLKeywords() {
-   StringBuilder sb = new StringBuilder(1000);
-   Statement st = null;
-   ResultSet rs = null;
-   try {
-   st = con.createStatement();
-   rs = st.executeQuery("SELECT \"keyword\" FROM 
\"sys\".\"keywords\" ORDER BY 1");
-   // Fetch the keywords and concatenate them into a 
StringBuffer separated by comma's
-   boolean isfirst = true;
-   while (rs.next()) {
-   String keyword = rs.getString(1);
-   if (keyword != null) {
-   if (isfirst) {
-   isfirst = false;
-   } else {
-   sb.append(",");
-   }
-   sb.append(keyword);
-   }
-   }
-   } catch (SQLException e) {
-   /* This may occur for old (before Jul2015 release) 
MonetDB servers which do not have the sys.keywords table. */
-   } finally {
-   if (rs != null) {
-   try {
-   rs.close();
-   } catch (SQLException e) { /* ignore */ }
-   }
-   if (st != null) {
-   try {
-st.close();
-   } catch (SQLException e) { /* ignore */ }
-   }
-   }
-
-   return (sb.length() > 0) ? sb.toString() :
-   /* else fallback and return old static list (as 
returned in clients/odbc/driver/SQLGetInfo.c case SQL_KEYWORDS:) */
+   String keywords = getConcatenatedStringFromQuery("SELECT 
\"keyword\" FROM \"sys\".\"keywords\" ORDER BY 1");
+
+   /* An old MonetDB server (pre Jul2015 release) will not have a 
table sys.keywords and return an empty String */
+   return (keywords.length() > 0) ? keywords :
+   /* for old servers return static list (as returned in 
clients/odbc/driver/SQLGetInfo.c case SQL_KEYWORDS:) */
"ADMIN,AFTER,AGGREGATE,ALWAYS,ASYMMETRIC,ATOMIC," +
"AUTO_INCREMENT,BEFORE,BIGINT,BIGSERIAL,BINARY,BLOB," +
"CALL,CHAIN,CLOB,COMMITTED,COPY,CORR,CUME_DIST," +
@@ -460,68 +428,32 @@ public class MonetDatabaseMetaData exten
}
 
/**
-* getMonetDBSysFunctions(int kind)
-* args: int kind, value must be 1 or 2 or 3 or 4.
-* internal utility method to query the MonetDB sys.functions table
-* to dynamically get the function names (for a specific kind) and
-* concatenate 

MonetDB: default - Merge with Jun2016 branch.

2016-05-19 Thread Sjoerd Mullender
Changeset: 934dbfa3c66b for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=934dbfa3c66b
Added Files:

sql/test/BugTracker-2016/Tests/RELEASE_SAVEPOINT_after_ALTER_TABLE_crash.Bug-4010.sql

sql/test/BugTracker-2016/Tests/RELEASE_SAVEPOINT_after_ALTER_TABLE_crash.Bug-4010.stable.err

sql/test/BugTracker-2016/Tests/RELEASE_SAVEPOINT_after_ALTER_TABLE_crash.Bug-4010.stable.out
Modified Files:
monetdb5/mal/mal_instruction.c
monetdb5/mal/mal_namespace.c
sql/backends/monet5/sql_decimal.mal
sql/backends/monet5/sql_decimal.mal.sh
sql/backends/monet5/sql_decimal_hge.mal
sql/backends/monet5/sql_decimal_hge.mal.sh
sql/test/BugTracker-2016/Tests/All
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 2005 to 300 lines):

diff --git a/monetdb5/mal/mal_instruction.c b/monetdb5/mal/mal_instruction.c
--- a/monetdb5/mal/mal_instruction.c
+++ b/monetdb5/mal/mal_instruction.c
@@ -929,7 +929,7 @@ cloneVariable(MalBlkPtr tm, MalBlkPtr mb
return res;
 }
 
-/* generate a new variable name based on a patter with 1 %d argument*/
+/* generate a new variable name based on a pattern with 1 %d argument*/
 void
 renameVariable(MalBlkPtr mb, int id, str pattern, int newid)
 {
diff --git a/monetdb5/mal/mal_namespace.c b/monetdb5/mal/mal_namespace.c
--- a/monetdb5/mal/mal_namespace.c
+++ b/monetdb5/mal/mal_namespace.c
@@ -19,57 +19,49 @@
 #define HASHMASK  4095
 
 /* taken from gdk_atoms */
-#define NME_HASH(x,y,K)\
-do {\
-const char *_key = (const char *) (x);  \
-size_t _i; \
-for (_i = y = 0; K-- && _key[_i]; _i++) {  \
-y += _key[_i];  \
-y += (y << 10); \
-y ^= (y >> 6);  \
-}   \
-y += (y << 3);  \
-y ^= (y >> 11); \
-y += (y << 15); \
-   y = y & HASHMASK;   \
+#define NME_HASH(_key,y,K) 
\
+do {   
\
+size_t _i; 
\
+for (_i = y = 0; _i < K && _key[_i]; _i++) {   \
+y += _key[_i]; 
\
+y += (y << 10);
\
+y ^= (y >> 6); 
\
+}  
\
+y += (y << 3); 
\
+y ^= (y >> 11);
\
+y += (y << 15);
\
+   y = y & HASHMASK;   
\
 } while (0)
 
 
 typedef struct NAME{
-   size_t length;
struct NAME *next;
-   char nme[FLEXIBLE_ARRAY_MEMBER];
+   char nme[IDLENGTH + 1];
+   unsigned short length;
 } *NamePtr;
 
-static NamePtr *hash= NULL, *ehash = NULL;
+static NamePtr hash[MAXIDENTIFIERS];
+
+static struct namespace {
+   struct namespace *next;
+   int count;
+   struct NAME data[4096];
+} *namespace;
 
 void initNamespace(void) {
-   if(hash == NULL) hash= (NamePtr *) GDKzalloc(sizeof(NamePtr) * 
MAXIDENTIFIERS);
-   if(ehash == NULL) ehash= (NamePtr *) GDKzalloc(sizeof(NamePtr) * 
MAXIDENTIFIERS);
-   if ( hash == NULL || ehash == NULL){
-/* absolute an error we can not recover from */
-showException(GDKout, MAL,"initNamespace",MAL_MALLOC_FAIL);
-mal_exit();
-   }
 }
 
 void mal_namespace_reset(void) {
-   int i;
-   NamePtr n,m;
+   struct namespace *ns;
 
/* assume we are at the end of the server session */
MT_lock_set(_namespaceLock);
-   for ( i =0; i < HASHMASK; i++){
-   n = hash[i];
-   hash[i] = ehash[i] = 0;
-   for( ; n; n = m){
-   m = n->next;
-   GDKfree(n);
-   }
+   memset(hash, 0, sizeof(hash));
+   while (namespace) {
+   ns = namespace->next;
+   GDKfree(namespace);
+   namespace = ns;
}
-   GDKfree(hash);
-   GDKfree(ehash);
-   hash = ehash = 0;
MT_lock_unset(_namespaceLock);
 }
 
@@ -80,29 +72,76 @@ void mal_namespace_reset(void) {
  * is conflict free.
  */
 
+static str findName(const char *nme, size_t len, int allocate)
+{
+   NamePtr *n, m;
+   size_t key;
+
+   assert(len == 0 || nme != NULL);
+   

MonetDB: default - Merge with Jun2016 branch.

2016-05-18 Thread Sjoerd Mullender
Changeset: c23e5573a476 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c23e5573a476
Modified Files:
java/ChangeLog.Jun2016
java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
monetdb5/optimizer/opt_costModel.c
sql/server/sql_parser.y
sql/test/pg_regress/Tests/without_oid.stable.out.oid32
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (244 lines):

diff --git a/java/ChangeLog.Jun2016 b/java/ChangeLog.Jun2016
--- a/java/ChangeLog.Jun2016
+++ b/java/ChangeLog.Jun2016
@@ -2,7 +2,7 @@
 # This file is updated with Maddlog
 
 * Sun May  8 2016 Jennie Zhang 
-- ResultSet.setFetchSize(): added a dumy implementation to get rid
+- ResultSet.setFetchSize(): added a dummy implementation to get rid
   of the SQLFeatureNotSupportedException. In MonetDB, it does not
   make sense to set the fetch size of a result set. If one really
   wants to set the fetch size, one should use Statement.setFetchSize()
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -1597,16 +1597,14 @@ public class MonetDatabaseMetaData exten
"cast(null as char(1)) AS \"Field5\", " +
"cast(null as char(1)) AS \"Field6\", " +
"cast(null as char(1)) AS \"REMARKS\", " +
-   "CAST(CASE (SELECT COUNT(*) FROM \"sys\".\"args\" where 
\"args\".\"func_id\" = \"functions\".\"id\" and \"args\".\"number\" = 0)" +
-   " WHEN 0 THEN 
").append(DatabaseMetaData.procedureNoResult)
-   .append(" WHEN 1 THEN 
").append(DatabaseMetaData.procedureReturnsResult)
-   .append(" ELSE 
").append(DatabaseMetaData.procedureResultUnknown).append(" END AS smallint) AS 
\"PROCEDURE_TYPE\", " +
+   "CAST(CASE \"args\".\"type\" WHEN NULL THEN 
").append(DatabaseMetaData.procedureNoResult)
+   .append(" ELSE 
").append(DatabaseMetaData.procedureReturnsResult).append(" END AS smallint) AS 
\"PROCEDURE_TYPE\", " +
"CAST(CASE \"functions\".\"language\" WHEN 0 THEN 
\"functions\".\"mod\" || '.' || \"functions\".\"func\"" +
" ELSE \"schemas\".\"name\" || '.' || 
\"functions\".\"name\" END AS VARCHAR(1500)) AS \"SPECIFIC_NAME\" " +
-   "FROM \"sys\".\"functions\", \"sys\".\"schemas\" " +
-   "WHERE \"functions\".\"schema_id\" = \"schemas\".\"id\" " +
+   "FROM \"sys\".\"functions\" JOIN \"sys\".\"schemas\" ON 
(\"functions\".\"schema_id\" = \"schemas\".\"id\")" +
+   " LEFT OUTER JOIN \"sys\".\"args\" ON (\"args\".\"func_id\" = 
\"functions\".\"id\" and \"args\".\"number\" = 0) " +
// include procedures only (type = 2). Others will be returned 
via getFunctions()
-   "AND \"functions\".\"type\" = 2");
+   "WHERE \"functions\".\"type\" = 2");
 
if (catalog != null && catalog.length() > 0) {
// none empty catalog selection.
@@ -2051,8 +2049,7 @@ public class MonetDatabaseMetaData exten
 *
 * @param catalog a catalog name; "" retrieves those without a catalog;
 *currently ignored
-* @param schemaPattern a schema name pattern; "" retrieves those
-*  without a schema
+* @param schemaPattern a schema name pattern; "" retrieves those 
without a schema
 * @param tableNamePattern a table name pattern
 * @param columnNamePattern a column name pattern
 * @return ResultSet each row is a column description
@@ -2233,8 +2230,7 @@ public class MonetDatabaseMetaData exten
 *  
 *
 * @param catalog a catalog name; "" retrieves those without a catalog
-* @param schemaPattern a schema name pattern; "" retrieves those
-*  without a schema
+* @param schemaPattern a schema name pattern; "" retrieves those 
without a schema
 * @param tableNamePattern a table name pattern
 * @return ResultSet each row is a table privilege description
 * @see #getSearchStringEscape
@@ -3144,23 +3140,23 @@ public class MonetDatabaseMetaData exten
) throws SQLException
{
StringBuilder query = new StringBuilder(990);
-   query.append("SELECT cast(null as char(1)) AS \"TYPE_CAT\", ")
-   .append("\"schemas\".\"name\" AS \"TYPE_SCHEM\", ")
-   .append("\"types\".\"sqlname\" AS \"TYPE_NAME\", ")
-   .append("CASE \"types\".\"sqlname\"")
+   query.append("SELECT cast(null as char(1)) AS \"TYPE_CAT\", " +
+  

MonetDB: default - Merge with Jun2016 branch.

2016-05-11 Thread Sjoerd Mullender
Changeset: 929ca52aa5b0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=929ca52aa5b0
Modified Files:
gdk/gdk_bbp.c
gdk/gdk_storage.c
monetdb5/extras/rapi/rapi.c
monetdb5/mal/mal.c
monetdb5/modules/mal/manifold.c
sql/server/sql_mvc.c
tools/mserver/mserver5.c
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (179 lines):

diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -1389,7 +1389,11 @@ BBPinit(void)
GDKfatal("BBPinit: cannot properly prepare process %s. Please 
check whether your disk is full or write-protected", BAKDIR);
 
/* cleanup any leftovers (must be done after BBPrecover) */
-   BBPdiskscan(GDKfilepath(0, NULL, BATDIR, NULL));
+   {
+   char *d = GDKfilepath(0, NULL, BATDIR, NULL);
+   BBPdiskscan(d);
+   GDKfree(d);
+   }
 
 #if SIZEOF_SIZE_T == 8 && SIZEOF_OID == 8
if (oidsize == SIZEOF_INT)
@@ -4065,6 +4069,7 @@ BBPrecover_subdir(void)
struct dirent *dent;
gdk_return ret = GDK_SUCCEED;
 
+   GDKfree(subdirpath);
if (dirp == NULL) {
return GDK_SUCCEED; /* nothing to do */
}
@@ -4094,7 +4099,6 @@ BBPrecover_subdir(void)
 
if (ret != GDK_SUCCEED)
GDKerror("BBPrecover_subdir: recovery failed. Please check 
whether your disk is full or write-protected.\n");
-   GDKfree(subdirpath);
return ret;
 }
 
@@ -4323,10 +4327,19 @@ BBPatom_load(int atom)
 void
 gdk_bbp_reset(void)
 {
-   memset((char*) BBP, 0, sizeof(BBP));
+   int i;
+
+   while (BBPlimit > 0) {
+   BBPlimit -= BBPINIT;
+   assert(BBPlimit >= 0);
+   GDKfree(BBP[BBPlimit >> BBPINITLOG]);
+   }
+   memset(BBP, 0, sizeof(BBP));
BBPlimit = 0;
BBPsize = 0;
-   memset((char*) BBPfarms, 0, sizeof(BBPfarms));
+   for (i = 0; i < MAXFARMS; i++)
+   GDKfree((void *) BBPfarms[i].dirname); /* loose "const" */
+   memset(BBPfarms, 0, sizeof(BBPfarms));
BBP_hash = 0;
BBP_mask = 0;
stamp = 0;
@@ -4339,8 +4352,8 @@ gdk_bbp_reset(void)
 
locked_by = 0;
BBPunloadCnt = 0;
-   memset((char*) lastused, 0, sizeof(lastused));
-   memset((char*) bbptrim, 0, sizeof(bbptrim));
+   memset(lastused, 0, sizeof(lastused));
+   memset(bbptrim, 0, sizeof(bbptrim));
bbptrimfirst = BBPMAXTRIM;
bbptrimlast = 0;
bbptrimmax = BBPMAXTRIM;
diff --git a/gdk/gdk_storage.c b/gdk/gdk_storage.c
--- a/gdk/gdk_storage.c
+++ b/gdk/gdk_storage.c
@@ -1044,6 +1044,7 @@ BATprintcolumns(stream *s, int argc, BAT
mnstr_write(s, "  ]\n", 1, 4);
}
 
+   GDKfree(buf);
GDKfree(colinfo);
 
return GDK_SUCCEED;
diff --git a/monetdb5/extras/rapi/rapi.c b/monetdb5/extras/rapi/rapi.c
--- a/monetdb5/extras/rapi/rapi.c
+++ b/monetdb5/extras/rapi/rapi.c
@@ -191,8 +191,11 @@ static char *RAPIinstalladdons(void) {
UNPROTECT(1);
 
// run rapi.R environment setup script
-   snprintf(rapiinclude, sizeof(rapiinclude), "source(\"%s\")",
-locate_file("rapi", ".R", 0));
+   {
+   char *f = locate_file("rapi", ".R", 0);
+   snprintf(rapiinclude, sizeof(rapiinclude), "source(\"%s\")", f);
+   GDKfree(f);
+   }
 #if DIR_SEP != '/'
{
char *p;
diff --git a/monetdb5/mal/mal.c b/monetdb5/mal/mal.c
--- a/monetdb5/mal/mal.c
+++ b/monetdb5/mal/mal.c
@@ -143,6 +143,7 @@ void mserver_reset(void)
 */
mal_factory_reset();
mal_dataflow_reset();
+   THRdel(mal_clients->mythread);
GDKreset(0);// terminate all other threads
mal_client_reset();
mal_module_reset();
diff --git a/monetdb5/modules/mal/manifold.c b/monetdb5/modules/mal/manifold.c
--- a/monetdb5/modules/mal/manifold.c
+++ b/monetdb5/modules/mal/manifold.c
@@ -111,6 +111,7 @@ typedef struct{
if (msg)
\
break;  
\
bunfastapp(mut->args[0].b, (void*) y);  
\
+   GDKfree(y); y = NULL;   
\
for( i = mut->fvar; i<= mut->lvar; i++) {   
\
if(ATOMstorage(mut->args[i].type) == 
TYPE_void ){   \
args[i] = (void*)  
>args[i].o; \
diff --git a/sql/server/sql_mvc.c b/sql/server/sql_mvc.c
--- a/sql/server/sql_mvc.c
+++ 

MonetDB: default - Merge with Jun2016 branch.

2016-05-11 Thread Sjoerd Mullender
Changeset: ec5c89b4b05e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ec5c89b4b05e
Added Files:
MacOSX/MonetDB_logo.png
clients/R/Tests/dplyr.timeout
sql/test/BugTracker-2014/Tests/querylog.Bug-3607.stable.err.single
sql/test/BugTracker-2014/Tests/querylog.Bug-3607.stable.out.single
sql/test/BugTracker-2016/Tests/storagemodel.sql
sql/test/BugTracker-2016/Tests/storagemodel.stable.err
sql/test/BugTracker-2016/Tests/storagemodel.stable.out
sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit
sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit
Removed Files:
MacOSX/MonetDB logo.png
sql/test/BugTracker-2016/Tests/storagemodel.Bug-3923.sql
sql/test/BugTracker-2016/Tests/storagemodel.Bug-3923.stable.err
sql/test/BugTracker-2016/Tests/storagemodel.Bug-3923.stable.out
Modified Files:
MacOSX/MonetDB.pkgproj
clients/R/Tests/All
clients/R/Tests/dbapply.R
clients/R/Tests/dbi.R
clients/R/Tests/deps-install.R
clients/R/Tests/deps-test.R
clients/R/Tests/dplyr-flights.R
clients/R/Tests/dplyr-flights.stable.out
clients/R/Tests/dplyr.R
clients/Tests/exports.stable.out
gdk/gdk.h
gdk/gdk_bbp.c
gdk/gdk_logger.c
gdk/gdk_tm.c
gdk/gdk_utils.c
monetdb5/modules/kernel/status.c
monetdb5/modules/mal/bbp.c
monetdb5/optimizer/Tests/manifold2.stable.out.single
sql/benchmarks/tpch/Tests/04-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/05-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/13-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/22-explain.stable.out.32bit
sql/test/BugTracker-2016/Tests/All

sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.out.32bit
sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit
sql/test/Dependencies/Tests/Dependencies.stable.out
testing/Mtest.py.in
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 19926 to 300 lines):

diff --git a/MacOSX/MonetDB.pkgproj b/MacOSX/MonetDB.pkgproj
--- a/MacOSX/MonetDB.pkgproj
+++ b/MacOSX/MonetDB.pkgproj
@@ -544,7 +544,7 @@
BACKGROUND_PATH

PATH
-   MonetDB logo.png
+   MonetDB_logo.png
PATH_TYPE
1

diff --git a/MacOSX/MonetDB logo.png b/MacOSX/MonetDB_logo.png
rename from MacOSX/MonetDB logo.png
rename to MacOSX/MonetDB_logo.png
diff --git a/clients/R/Tests/All b/clients/R/Tests/All
--- a/clients/R/Tests/All
+++ b/clients/R/Tests/All
@@ -1,6 +1,6 @@
 HAVE_LIBR?deps-install
+HAVE_LIBR?install
 HAVE_LIBR?deps-test
-HAVE_LIBR?install
 HAVE_LIBR?dbi
 HAVE_LIBR?survey
 HAVE_LIBR?dplyr
diff --git a/clients/R/Tests/dbapply.R b/clients/R/Tests/dbapply.R
--- a/clients/R/Tests/dbapply.R
+++ b/clients/R/Tests/dbapply.R
@@ -1,6 +1,5 @@
-ll <- NULL
 if (Sys.getenv("TSTTRGDIR") != "") {
-   ll <- paste0(Sys.getenv("TSTTRGDIR"),"/rlibdir")
+   .libPaths(c(.libPaths(), paste0(Sys.getenv("TSTTRGDIR"),"/rlibdir")))
 }
 library(DBI, quietly = T)
 
diff --git a/clients/R/Tests/dbi.R b/clients/R/Tests/dbi.R
--- a/clients/R/Tests/dbi.R
+++ b/clients/R/Tests/dbi.R
@@ -1,6 +1,5 @@
-ll <- NULL
 if (Sys.getenv("TSTTRGDIR") != "") {
-   ll <- paste0(Sys.getenv("TSTTRGDIR"),"/rlibdir")
+   .libPaths(c(.libPaths(), paste0(Sys.getenv("TSTTRGDIR"),"/rlibdir")))
 }
 library(DBI)
 
diff --git a/clients/R/Tests/deps-install.R b/clients/R/Tests/deps-install.R
--- a/clients/R/Tests/deps-install.R
+++ b/clients/R/Tests/deps-install.R
@@ -3,6 +3,9 @@ dir.create(unlist(strsplit(Sys.getenv("R
 
 # autoinstall DBI and digest, we need those to install MonetDB.R
 dd <- capture.output(suppressMessages(suppressWarnings({
-   install.packages(c("devtools", "digest"), 
repos="http://cran.rstudio.com/;, quiet=T)
+   repos <- "http://cran.rstudio.com/;
+   lp <- c("devtools", "digest")
+   install.packages(lp, repos=repos, quiet=T)
+   update.packages(repos=repos, ask=F, oldPkgs=lp)
devtools::install_github("rstats-db/DBI", quiet=T)
 })))
diff --git a/clients/R/Tests/deps-test.R b/clients/R/Tests/deps-test.R
--- a/clients/R/Tests/deps-test.R
+++ b/clients/R/Tests/deps-test.R
@@ -5,6 +5,5 @@ dd <- capture.output(suppressMessages(su
repos <- 
c('http://download.r-forge.r-project.org','http://cran.rstudio.com/')
if(length(np)) install.packages(np,repos=repos, quiet=T)
update.packages(repos=repos, ask=F, oldPkgs=lp, quiet=T)
-   x <- 

MonetDB: default - Merge with Jun2016 branch.

2016-05-04 Thread Sjoerd Mullender
Changeset: e4ea18ea641e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e4ea18ea641e
Added Files:
sql/jdbc/tests/Tests/Test_CisValid.stable.err
sql/jdbc/tests/Tests/Test_CisValid.stable.out
Modified Files:
NT/monetdb_config.h.in
sql/storage/store.c
sql/test/Tests/systemfunctions.stable.out
sql/test/Tests/systemfunctions.stable.out.int128
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (212 lines):

diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -1135,11 +1135,11 @@ typedef __uint128_t uhge;
 #ifdef HAVE_EMBEDDED_R
 #define _MSC_EXTENSIONS 1
 #undef HAVE_CTIME_R
-#define PROMPT1"\001\001\n"/* prompt: ready for new query 
*/
-#define PROMPT2"\001\002\n"/* prompt: more data needed */
 #else
 #define HAVE_MAPI 1
 #endif
 
+#define PROMPT1"\001\001\n"/* prompt: ready for new query 
*/
+#define PROMPT2"\001\002\n"/* prompt: more data needed */
 
 #endif /* _SEEN_MONETDB_CONFIG_H */
diff --git a/sql/jdbc/tests/Tests/Test_CisValid.stable.err 
b/sql/jdbc/tests/Tests/Test_CisValid.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/jdbc/tests/Tests/Test_CisValid.stable.err
@@ -0,0 +1,48 @@
+stderr of test 'Test_CisValid` in directory 'sql/jdbc/tests` itself:
+
+
+# 23:03:07 >  
+# 23:03:07 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36086" "--set" 
"mapi_usock=/var/tmp/mtest-9079/.s.monetdb.36086" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/export/scratch2/zhang/monet-install/Jul2015/debug/var/MonetDB/mTests_sql_jdbc_tests"
 "--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 23:03:07 >  
+
+# builtin opt  gdk_dbpath = 
/export/scratch2/zhang/monet-install/Jul2015/debug/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 = 36086
+# cmdline opt  mapi_usock = /var/tmp/mtest-9079/.s.monetdb.36086
+# cmdline opt  monet_prompt = 
+# cmdline opt  mal_listing = 2
+# cmdline opt  gdk_dbpath = 
/export/scratch2/zhang/monet-install/Jul2015/debug/var/MonetDB/mTests_sql_jdbc_tests
+# cmdline opt  mal_listing = 0
+# cmdline opt  embedded_r = yes
+# cmdline opt  gdk_debug = 536870922
+
+# 23:03:08 >  
+# 23:03:08 >  "./Test_CisValid.SQL.sh" "Test_CisValid"
+# 23:03:08 >  
+
+
+# 23:03:08 >  
+# 23:03:08 >  java Test_CisValid 
"jdbc:monetdb://toulouse:36086/mTests_sql_jdbc_tests?user=monetdb=monetdb"
+# 23:03:08 >  
+
+java.sql.SQLException: SELECT: no such table 'doesnotexist'
+   at 
nl.cwi.monetdb.jdbc.MonetConnection$ResponseList.executeQuery(MonetConnection.java:2603)
+   at 
nl.cwi.monetdb.jdbc.MonetConnection$ResponseList.processQuery(MonetConnection.java:2351)
+   at 
nl.cwi.monetdb.jdbc.MonetStatement.internalExecute(MonetStatement.java:507)
+   at nl.cwi.monetdb.jdbc.MonetStatement.execute(MonetStatement.java:345)
+   at Test_CisValid.main(Test_CisValid.java:23)
+
+# 23:03:08 >  
+# 23:03:08 >  "Done."
+# 23:03:08 >  
+
diff --git a/sql/jdbc/tests/Tests/Test_CisValid.stable.out 
b/sql/jdbc/tests/Tests/Test_CisValid.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/jdbc/tests/Tests/Test_CisValid.stable.out
@@ -0,0 +1,77 @@
+stdout of test 'Test_CisValid` in directory 'sql/jdbc/tests` itself:
+
+
+# 23:03:07 >  
+# 23:03:07 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36086" "--set" 
"mapi_usock=/var/tmp/mtest-9079/.s.monetdb.36086" "--set" "monet_prompt=" 
"--forcemito" "--set" "mal_listing=2" 
"--dbpath=/export/scratch2/zhang/monet-install/Jul2015/debug/var/MonetDB/mTests_sql_jdbc_tests"
 "--set" "mal_listing=0" "--set" "embedded_r=yes"
+# 23:03:07 >  
+
+# MonetDB 5 server v11.21.20
+# This is an unreleased version
+# Serving database 'mTests_sql_jdbc_tests', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit 
integers dynamically linked
+# Found 15.589 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2015 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://toulouse.da.cwi.nl:36086/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-9079/.s.monetdb.36086
+# MonetDB/GIS module loaded
+# Start processing logs sql/sql_logs version 52200
+# Finished processing logs sql/sql_logs
+# MonetDB/SQL module loaded
+# MonetDB/R   module loaded
+

MonetDB: default - Merge with Jun2016 branch.

2016-04-22 Thread Sjoerd Mullender
Changeset: 3661d21cc19b for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3661d21cc19b
Added Files:
sql/test/BugTracker-2016/Tests/data3987.csv
sql/test/BugTracker-2016/Tests/malformed-copy-int.Bug-3987.sql.in
sql/test/BugTracker-2016/Tests/malformed-copy-int.Bug-3987.stable.err
sql/test/BugTracker-2016/Tests/malformed-copy-int.Bug-3987.stable.out
Modified Files:
common/stream/stream.c
java/ChangeLog.Jun2016
java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
java/tests/Test_Rmetadata.java
monetdb5/modules/mal/tablet.c
sql/backends/monet5/sql.c
sql/jdbc/tests/Tests/Test_Rmetadata.stable.out
sql/storage/bat/bat_storage.c
tools/embedded/build-on-windows.bat
tools/embedded/build-rpkg.sh
tools/embedded/inlined_scripts.c
tools/embedded/inlined_scripts.sh
tools/embedded/rpackage/DESCRIPTION
tools/embedded/rpackage/configure.win
tools/embedded/windows/sedscript.tpl
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (truncated from 3233 to 300 lines):

diff --git a/common/stream/stream.c b/common/stream/stream.c
--- a/common/stream/stream.c
+++ b/common/stream/stream.c
@@ -128,7 +128,7 @@
 #define UTF8BOM"\xEF\xBB\xBF" /* UTF-8 encoding of Unicode BOM 
*/
 #define UTF8BOMLENGTH  3  /* length of above */
 
-#ifdef WIN32
+#ifdef _MSC_VER
 /* use intrinsic functions on Windows */
 #define short_int_SWAP(s)  ((short) _byteswap_ushort((unsigned short) (s)))
 /* on Windows, long is the same size as int */
diff --git a/java/ChangeLog.Jun2016 b/java/ChangeLog.Jun2016
--- a/java/ChangeLog.Jun2016
+++ b/java/ChangeLog.Jun2016
@@ -1,6 +1,10 @@
 # ChangeLog file for java
 # This file is updated with Maddlog
 
+* Thu Apr 21 2016 Martin van Dinther 
+- Fixed resource leak in ResultSetMetaData. It created and cached a ResultSet
+  object for each column but never closed the ResultSet objects.
+
 * Thu Mar 31 2016 Martin van Dinther 
 - Corrected DatabaseMetaData methods which accept a catalog filter argument.
   Those methods will now filter the results on the specified catalog name,
diff --git a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java 
b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
--- a/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
+++ b/java/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
@@ -21,6 +21,7 @@ import java.net.URL;
 import java.sql.Array;
 import java.sql.Blob;
 import java.sql.Clob;
+import java.sql.Connection;
 import java.sql.DatabaseMetaData;
 import java.sql.NClob;
 import java.sql.Ref;
@@ -683,44 +684,43 @@ public class MonetResultSet extends Mone
 * @throws SQLException if there is no such column
 */
@Override
-   public boolean getBoolean(int columnIndex) throws SQLException{
-   int dataType = getJavaType(types[columnIndex - 1]);
-   if (dataType == Types.TINYINT ||
-   dataType == Types.SMALLINT ||
-   dataType == Types.INTEGER ||
-   dataType == Types.BIGINT)
-   {
-   if (getLong(columnIndex) == 0L) {
-   return false;
-   } else {
+   public boolean getBoolean(int columnIndex) throws SQLException {
+   switch (getJavaType(types[columnIndex - 1])) {
+   case Types.TINYINT:
+   case Types.SMALLINT:
+   case Types.INTEGER:
+   if (getInt(columnIndex) == 0) {
+   return false;
+   }
return true;
-   }
-   } else if (dataType == Types.REAL ||
-   dataType == Types.FLOAT ||
-   dataType == Types.DOUBLE)
-   {
-   if (getDouble(columnIndex) == 0.0) {
-   return false;
-   } else {
+   case Types.BIGINT:
+   if (getLong(columnIndex) == 0L) {
+   return false;
+   }
return true;
-   }
-   } else if (dataType == Types.DECIMAL ||
-   dataType == Types.NUMERIC)
-   {
-   if (getBigDecimal(columnIndex).compareTo(new 
BigDecimal(0.0)) == 0) {
-   return false;
-   } else {
+   case Types.DOUBLE:
+   case Types.FLOAT:
+   case Types.REAL:
+   if (getDouble(columnIndex) == 

MonetDB: default - Merge with Jun2016 branch.

2016-04-18 Thread Sjoerd Mullender
Changeset: 10eafa26f1d2 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=10eafa26f1d2
Modified Files:
geom/monetdb5/geom.c
sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.SQL.py
sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.err
sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.out
sql/test/BugTracker-2016/Tests/storagemodel.Bug-3923.stable.out
sql/test/BugTracker-2016/Tests/stream_table_crash.Bug-3952.sql
sql/test/BugTracker-2016/Tests/stream_table_crash.Bug-3952.stable.err
sql/test/BugTracker-2016/Tests/stream_table_crash.Bug-3952.stable.out
sql/test/Users/Tests/copyinto.stable.err
sql/test/Users/Tests/dropManyUsers.Bug-3764.stable.out
sql/test/Users/Tests/grantMonetdb.stable.err
Branch: default
Log Message:

Merge with Jun2016 branch.


diffs (216 lines):

diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c
--- a/geom/monetdb5/geom.c
+++ b/geom/monetdb5/geom.c
@@ -2858,13 +2858,14 @@ wkbGetCoordinate(dbl *out, wkb **geom, i
}
 
gcs = GEOSGeom_getCoordSeq(geosGeometry);
+
+   if (gcs == NULL) {
+   GEOSGeom_destroy(geosGeometry);
+   throw(MAL, "geom.wkbGetCoordinate", "GEOSGeom_getCoordSeq 
failed");
+   }
+
+   GEOSCoordSeq_getOrdinate(gcs, 0, *dimNum, out);
GEOSGeom_destroy(geosGeometry);
-
-   if (gcs == NULL) {
-   throw(MAL, "geom.wkbGetCoordinate", "GEOSGeom_getCoordSeq 
failed");
-   }
-
-   GEOSCoordSeq_getOrdinate(gcs, 0, *dimNum, out);
/* gcs shouldn't be freed, it's internal to the GEOSGeom */
 
return MAL_SUCCEED;
diff --git a/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.SQL.py 
b/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.SQL.py
--- a/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.SQL.py
+++ b/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.SQL.py
@@ -88,9 +88,16 @@ try:
 c.execute(rtable)
 c.execute(atable)
 
-c.execute("select * from " + shardtable + workers[0]['tpf'] )
-print str(c.fetchall())
+try:
+c.execute("select * from " + shardtable + workers[0]['tpf'] )
+except monetdb.sql.OperationalError as e:
+print(e)
+else:
+print(str(c.fetchall()))
 
 finally:
+masterproc.communicate()
+for worker in workers:
+workerrec['proc'].communicate()
 if os.path.exists(tmpdir):
 shutil.rmtree(tmpdir)
diff --git a/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.err 
b/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.err
--- a/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.err
+++ b/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.err
@@ -66,21 +66,8 @@ stderr of test 'schemadiff.Bug-3778` in 
 # cmdline opt  mapi_port = 48845
 # cmdline opt  gdk_dbpath = /tmp/tmpou_du0/worker_0/worker_0
 # cmdline opt  gdk_debug = 536870922
-Traceback (most recent call last):
-  File "schemadiff.Bug-3778.SQL.py", line 85, in 
-c.execute("select * from " + shardtable + workers[0]['tpf'] )
-  File 
"/home/niels/scratch/monetdb/Linux-x86_64/lib/python2.7/site-packages/monetdb/sql/cursors.py",
 line 158, in execute
-block = self.connection.execute(query)
-  File 
"/home/niels/scratch/monetdb/Linux-x86_64/lib/python2.7/site-packages/monetdb/sql/connections.py",
 line 127, in execute
-return self.command('s' + query + '\n;')
-  File 
"/home/niels/scratch/monetdb/Linux-x86_64/lib/python2.7/site-packages/monetdb/sql/connections.py",
 line 132, in command
-return self.mapi.cmd(command)
-  File 
"/home/niels/scratch/monetdb/Linux-x86_64/lib/python2.7/site-packages/monetdb/mapi.py",
 line 178, in cmd
-raise OperationalError(response[1:])
-monetdb.exceptions.OperationalError: 
(mapi:monetdb://monetdb@localhost/worker_0) 'user.l1' undefined in: 
rmt5_X_1_bat_oid_int:bat[:oid,:int] := user.l1();
 
-!failed to open file: No such file or directory 
(/tmp/tmpou_du0/worker_0/worker_0/.uplog)!failed to open file: No such file or 
directory (/tmp/tmpou_du0/master/master/.uplog)
-# 12:53:25 >  
-# 12:53:25 >  "Done."
-# 12:53:25 >  
+# 11:56:09 >  
+# 11:56:09 >  "Done."
+# 11:56:09 >  
 
diff --git a/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.out 
b/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.out
--- a/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.out
+++ b/sql/test/BugTracker-2015/Tests/schemadiff.Bug-3778.stable.out
@@ -27,6 +27,7 @@ Ready.
 # 15:29:05 >  "/usr/bin/python2" "schemadiff.Bug-3778.SQL.py" 
"schemadiff.Bug-3778"
 # 15:29:05 >  
 
+(mapi:monetdb://monetdb@localhost/worker_0) 'user.l1' undefined in: 
rmt5_X_1_bat_int:bat[:int] := user.l1();
 
 # 15:29:06 >  
 # 15:29:06 >  "Done."
diff --git 
a/sql/test/BugTracker-2016/Tests/stream_table_crash.Bug-3952.stable.err 
b/sql/test/BugTracker-2016/Tests/stream_table_crash.Bug-3952.stable.err
--- 

  1   2   >