Changeset: dd0cd49ed566 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=dd0cd49ed566
Added Files:
        sql/test/BugTracker-2016/Tests/catalog_name_qualifier.Bug-3948.sql
        
sql/test/BugTracker-2016/Tests/catalog_name_qualifier.Bug-3948.stable.err
        
sql/test/BugTracker-2016/Tests/catalog_name_qualifier.Bug-3948.stable.out
        sql/test/BugTracker-2016/Tests/column_alias_in_where_clause.Bug-3947.sql
        
sql/test/BugTracker-2016/Tests/column_alias_in_where_clause.Bug-3947.stable.err
        
sql/test/BugTracker-2016/Tests/column_alias_in_where_clause.Bug-3947.stable.out
        sql/test/BugTracker-2016/Tests/data-uuid.csv.bz2
        sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.sql
        sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.err
        sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.out
        sql/test/BugTracker-2016/Tests/foreign_key.Bug-3938.sql
        sql/test/BugTracker-2016/Tests/foreign_key.Bug-3938.stable.err
        sql/test/BugTracker-2016/Tests/foreign_key.Bug-3938.stable.out
        sql/test/BugTracker-2016/Tests/group_distinct_quantile.Bug-3927.sql
        
sql/test/BugTracker-2016/Tests/group_distinct_quantile.Bug-3927.stable.err
        
sql/test/BugTracker-2016/Tests/group_distinct_quantile.Bug-3927.stable.out
        sql/test/BugTracker-2016/Tests/merge_project.Bug-3955.sql
        sql/test/BugTracker-2016/Tests/merge_project.Bug-3955.stable.err
        sql/test/BugTracker-2016/Tests/merge_project.Bug-3955.stable.out
        
sql/test/BugTracker-2016/Tests/min-max-uuid-column-wrong-results.Bug-3953.sql.in
        
sql/test/BugTracker-2016/Tests/min-max-uuid-column-wrong-results.Bug-3953.stable.err
        
sql/test/BugTracker-2016/Tests/min-max-uuid-column-wrong-results.Bug-3953.stable.out
        sql/test/BugTracker-2016/Tests/update_crash.Bug-3954.sql
        sql/test/BugTracker-2016/Tests/update_crash.Bug-3954.stable.err
        sql/test/BugTracker-2016/Tests/update_crash.Bug-3954.stable.out
Modified Files:
        MonetDB.spec
        NT/monetdb_config.h.in
        buildtools/ChangeLog.Jun2016
        clients/ChangeLog.Jun2016
        clients/R/MonetDB.R/NAMESPACE
        clients/R/MonetDB.R/R/dbi.R
        clients/R/MonetDB.R/R/dplyr.R
        clients/R/Tests/dplyr-flights.R
        clients/R/Tests/dplyr.R
        clients/python2/monetdb/mapi.py
        clients/python3/monetdb/mapi.py
        debian/monetdb5-sql.install
        java/ChangeLog.Jun2016
        java/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
        java/src/main/java/nl/cwi/monetdb/jdbc/MonetDriver.java.in
        monetdb5/modules/mal/mat.c
        monetdb5/optimizer/opt_mergetable.c
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql_execute.c
        sql/backends/monet5/sql_upgrades.c
        sql/benchmarks/tpch/Tests/20-plan.stable.out
        sql/benchmarks/tpch/Tests/20-plan.stable.out.int128
        sql/common/sql_types.c
        sql/include/sql_mem.h
        sql/server/rel_optimizer.c
        sql/server/rel_updates.c
        sql/storage/sql_storage.h
        sql/test/BugTracker-2015/Tests/crash.Bug-3736.stable.out
        sql/test/BugTracker-2016/Tests/All
        sql/test/Via-m/Tests/event_s11.stable.err
        sql/test/Via-m/Tests/event_s11.stable.out
        sql/test/Via-m/Tests/media_s18.stable.err
        sql/test/Via-m/Tests/media_s18.stable.out
        sql/test/Via-m/Tests/media_s19.stable.err
        sql/test/Via-m/Tests/media_s19.stable.out
        sql/test/copy/Tests/int_parse.stable.err
        sql/test/copy/Tests/int_parse.stable.out
        sql/test/copy/Tests/int_parse_best.stable.out
        sql/test/copy/Tests/load_stdin_incorrect_line_nr.stable.err
        sql/test/copy/Tests/load_stdin_incorrect_line_nr.stable.out
        sql/test/copy/Tests/null_as_string_errors.stable.err
        sql/test/copy/Tests/null_as_string_errors.stable.out
        sql/test/pg_regress/Tests/case.stable.out
        sql/test/pg_regress/Tests/create_misc.stable.err
        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.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.int128
        testing/Mtest.py.in
        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/rpackage/DESCRIPTION
        tools/embedded/rpackage/R/monetdb.R
        tools/embedded/rpackage/configure
        tools/embedded/rpackage/man/embedded.Rd
        tools/merovingian/daemon/monetdbd.1.in
        tools/merovingian/daemon/monetdbd.service.in
        tools/mserver/monet_version.c.in
Branch: pythonudf
Log Message:

Merge with Jun2016.


diffs (truncated from 3563 to 300 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -106,6 +106,8 @@ License: MPLv2.0
 URL: http://www.monetdb.org/
 Source: 
http://dev.monetdb.org/downloads/sources/Jul2015-SP3/%{name}-%{version}.tar.bz2
 
+# we need systemd for the _unitdir macro to exist
+BuildRequires: systemd
 BuildRequires: bison
 BuildRequires: bzip2-devel
 %if %{?with_fits:1}%{!?with_fits:0}
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 <fenv.h> header file. */
-#if !defined(_MSV_VER) || _MSC_VER > 1600
+#if !defined(_MSC_VER) || _MSC_VER > 1600
 #define HAVE_FENV_H 1
 #endif
 
@@ -240,7 +240,7 @@
 #define HAVE_IO_H 1
 
 /* Define to 1 if you have the `isinf' function. */
-#if !defined(_MSV_VER) || _MSC_VER > 1600
+#if !defined(_MSC_VER) || _MSC_VER > 1600
 #define HAVE_ISINF 1
 #endif
 
@@ -309,7 +309,7 @@
 
 /* Define to 1 if you have the `llabs' function. */
 #define HAVE_LLABS 1
-#if defined(_MSV_VER) && _MSC_VER <= 1500
+#if defined(_MSC_VER) && _MSC_VER <= 1500
 #define llabs _abs64
 #endif
 
@@ -460,7 +460,7 @@
 /* #undef HAVE_RLIMIT_H */
 
 /* Define to 1 if you have the `round' function. */
-#if !defined(_MSV_VER) || _MSC_VER > 1600
+#if !defined(_MSC_VER) || _MSC_VER > 1600
 #define HAVE_ROUND 1
 #endif
 
diff --git a/buildtools/ChangeLog.Jun2016 b/buildtools/ChangeLog.Jun2016
--- a/buildtools/ChangeLog.Jun2016
+++ b/buildtools/ChangeLog.Jun2016
@@ -7,5 +7,5 @@
 
 * Sat Jan 23 2016 Sjoerd Mullender <sjo...@acm.org>
 - Implemented a systemd configuration file for a monetdbd.service
-  on Fedora.
+  on systems that support it (Fedora, newer Ubuntu).
 
diff --git a/clients/ChangeLog.Jun2016 b/clients/ChangeLog.Jun2016
--- a/clients/ChangeLog.Jun2016
+++ b/clients/ChangeLog.Jun2016
@@ -1,3 +1,7 @@
 # ChangeLog file for clients
 # This file is updated with Maddlog
 
+* Wed Mar 16 2016 Sjoerd Mullender <sjo...@acm.org>
+- The Ruby client is now in a separate repository
+  (http://dev.monetdb.org/hg/monetdb-ruby) and released independently.
+
diff --git a/clients/R/MonetDB.R/NAMESPACE b/clients/R/MonetDB.R/NAMESPACE
--- a/clients/R/MonetDB.R/NAMESPACE
+++ b/clients/R/MonetDB.R/NAMESPACE
@@ -21,18 +21,4 @@ export(monetdb.server.getpid)
 
 # dplyr.R
 export(src_monetdb)
-export(src_translate_env.src_monetdb)
-export(src_desc.src_monetdb)
-export(tbl.src_monetdb)
-export(db_query_fields.MonetDBConnection)
-export(db_query_fields.MonetDBEmbeddedConnection)
-export(db_query_rows.MonetDBConnection)
-export(db_query_rows.MonetDBEmbeddedConnection)
-export(db_save_query.MonetDBConnection)
-export(db_insert_into.MonetDBConnection)
-export(db_create_index.MonetDBConnection)
-export(db_analyze.MonetDBConnection)
-export(sql_subquery.MonetDBConnection)
-export(monetdb_queryinfo) 
-export(sample_n.tbl_monetdb)
-export(sample_frac.tbl_monetdb)
+# rest of dplyr.R exported via hack in src_monetdb
diff --git a/clients/R/MonetDB.R/R/dbi.R b/clients/R/MonetDB.R/R/dbi.R
--- a/clients/R/MonetDB.R/R/dbi.R
+++ b/clients/R/MonetDB.R/R/dbi.R
@@ -97,7 +97,8 @@ setMethod("dbConnect", "MonetDBDriver", 
     if (!requireNamespace("MonetDBLite", quietly=T)) {
       stop("MonetDBLite package required for embedded mode")
     }
-    MonetDBLite::monetdb_embedded_startup(embedded, 
!getOption("monetdb.debug.embedded", FALSE))
+    MonetDBLite::monetdb_embedded_startup(embedded, 
!getOption("monetdb.debug.embedded", FALSE), 
+      getOption("monetdb.sequential", TRUE))
     connenv <- new.env(parent=emptyenv())
     connenv$conn <- MonetDBLite::monetdb_embedded_connect()
     connenv$open <- TRUE
@@ -331,7 +332,7 @@ setMethod("dbSendQuery", signature(conn=
 
 # This one does all the work in this class
 setMethod("dbSendQuery", signature(conn="MonetDBEmbeddedConnection", 
statement="character"),  
-          def=function(conn, statement, ..., list=NULL, notreally=F) {   
+          def=function(conn, statement, ..., list=NULL, execute = T, 
resultconvert = T) {   
   if (!conn@connenv$open) {
     stop("This connection was closed.")
   }
@@ -344,7 +345,7 @@ setMethod("dbSendQuery", signature(conn=
   if(!is.null(log_file <- getOption("monetdb.log.query", NULL)))
     cat(c(statement, ";\n"), file = log_file, sep="", append = TRUE)
   startt <- Sys.time()
-  resp <- MonetDBLite::monetdb_embedded_query(conn@connenv$conn, statement, 
notreally)
+  resp <- MonetDBLite::monetdb_embedded_query(conn@connenv$conn, statement, 
execute, resultconvert)
   takent <- round(as.numeric(Sys.time() - startt), 2)
   env <- new.env(parent=emptyenv())
   if (resp$type == Q_TABLE) {
diff --git a/clients/R/MonetDB.R/R/dplyr.R b/clients/R/MonetDB.R/R/dplyr.R
--- a/clients/R/MonetDB.R/R/dplyr.R
+++ b/clients/R/MonetDB.R/R/dplyr.R
@@ -4,7 +4,26 @@ src_monetdb <- function(dbname="demo", h
     con <- DBI::dbConnect(MonetDB.R(), dbname = dbname , host = host, port = 
port,
       user = user, password = password, ...)
   }
-  dplyr::src_sql("monetdb", con, info = DBI::dbGetInfo(con))
+  s <- dplyr::src_sql("monetdb", con, info = DBI::dbGetInfo(con))
+
+  # this is a (dirty) hack so we don't need to depend on dplyr
+  dplyrMt <- getNamespace("dplyr")$.__S3MethodsTable__.
+
+  dplyrMt[["src_translate_env.src_monetdb"]]           <- 
src_translate_env.src_monetdb
+  dplyrMt[["src_desc.src_monetdb"]]                    <- src_desc.src_monetdb
+  dplyrMt[["tbl.src_monetdb"]]                         <- tbl.src_monetdb
+  dplyrMt[["db_query_fields.MonetDBConnection"]]       <- 
db_query_fields.MonetDBEmbeddedConnection
+  dplyrMt[["db_query_rows.MonetDBConnection"]]         <- 
db_query_rows.MonetDBConnection
+  dplyrMt[["db_query_rows.MonetDBEmbeddedConnection"]] <- 
db_query_rows.MonetDBEmbeddedConnection
+  dplyrMt[["db_save_query.MonetDBConnection"]]         <- 
db_save_query.MonetDBConnection
+  dplyrMt[["db_insert_into.MonetDBConnection"]]        <- 
db_insert_into.MonetDBConnection
+  dplyrMt[["db_create_index.MonetDBConnection"]]       <- 
db_create_index.MonetDBConnection
+  dplyrMt[["db_analyze.MonetDBConnection"]]            <- 
db_analyze.MonetDBConnection
+  dplyrMt[["sql_subquery.MonetDBConnection"]]          <- 
sql_subquery.MonetDBConnection
+  dplyrMt[["sample_n.tbl_monetdb"]]                    <- sample_n.tbl_monetdb
+  dplyrMt[["sample_frac.tbl_monetdb"]]                 <- 
sample_frac.tbl_monetdb
+
+  s
 }
 
 src_translate_env.src_monetdb <- function(x) {
@@ -59,7 +78,7 @@ db_query_fields.MonetDBConnection <- fun
 }
 
 db_query_fields.MonetDBEmbeddedConnection <- function(con, sql, ...) {
-  names(DBI::dbGetQuery(con, dplyr::build_sql("SELECT * FROM ", sql), 
notreally=T))
+  names(DBI::dbGetQuery(con, dplyr::build_sql("SELECT * FROM ", sql), execute 
= F))
 }
 
 db_query_rows.MonetDBConnection <- function(con, sql, ...) {
@@ -67,7 +86,7 @@ db_query_rows.MonetDBConnection <- funct
 }
 
 db_query_rows.MonetDBEmbeddedConnection <- function(con, sql, ...) {
-  attr(DBI::dbGetQuery(con, sql, notreally=T), "__rows")
+  attr(DBI::dbGetQuery(con, sql, resultconvert = F), "__rows")
 }
 
 db_insert_into.MonetDBConnection <- function(con, table, values, ...) {
diff --git a/clients/R/Tests/dplyr-flights.R b/clients/R/Tests/dplyr-flights.R
--- a/clients/R/Tests/dplyr-flights.R
+++ b/clients/R/Tests/dplyr-flights.R
@@ -10,9 +10,6 @@ dd <- capture.output( suppressMessages (
 
 library(dplyr, quietly=T)
 
-# FIXME: this should no longer be required 
-library(MonetDB.R, quietly = T)
-
 args <- commandArgs(trailingOnly = TRUE)
 dbport <- 50000
 dbname <- "mTests_clients_R"
diff --git a/clients/R/Tests/dplyr.R b/clients/R/Tests/dplyr.R
--- a/clients/R/Tests/dplyr.R
+++ b/clients/R/Tests/dplyr.R
@@ -10,9 +10,6 @@ dd <- capture.output( suppressMessages (
 
 library(dplyr, quietly = T)
 
-# FIXME: this should no longer be required 
-library(MonetDB.R, quietly = T)
-
 args <- commandArgs(trailingOnly = TRUE)
 dbport <- 50000
 dbname <- "mTests_clients_R"
diff --git a/clients/python2/monetdb/mapi.py b/clients/python2/monetdb/mapi.py
--- a/clients/python2/monetdb/mapi.py
+++ b/clients/python2/monetdb/mapi.py
@@ -256,7 +256,7 @@ class Connection(object):
         while count > 0:
             recv = self.socket.recv(count)
             if len(recv) == 0:
-                raise OperationalError("Server closed connection")
+                raise socket.error("Server closed connection")
             count -= len(recv)
             result.write(recv)
         return result.getvalue()
diff --git a/clients/python3/monetdb/mapi.py b/clients/python3/monetdb/mapi.py
--- a/clients/python3/monetdb/mapi.py
+++ b/clients/python3/monetdb/mapi.py
@@ -258,7 +258,7 @@ class Connection(object):
         while count > 0:
             recv = self.socket.recv(count)
             if len(recv) == 0:
-                raise OperationalError("Server closed connection")
+                raise socket.error("Server closed connection")
             count -= len(recv)
             result.write(recv)
         return result.getvalue()
diff --git a/debian/monetdb5-sql.install b/debian/monetdb5-sql.install
--- a/debian/monetdb5-sql.install
+++ b/debian/monetdb5-sql.install
@@ -2,6 +2,7 @@ debian/tmp/usr/bin/monetdbd usr/bin
 debian/tmp/usr/bin/monetdb usr/bin
 debian/tmp/usr/lib/monetdb5/*.sql usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/autoload/??_sql.mal usr/lib/monetdb5/autoload
+debian/tmp/usr/lib/systemd/system/monetdbd.service lib/systemd/system
 # usr/lib/monetdb5/sql*.mal EXCEPT: sql*_hge.mal
 debian/tmp/usr/lib/monetdb5/sql.mal usr/lib/monetdb5
 debian/tmp/usr/lib/monetdb5/sql_aggr_[!h]*.mal usr/lib/monetdb5
diff --git a/java/ChangeLog.Jun2016 b/java/ChangeLog.Jun2016
--- a/java/ChangeLog.Jun2016
+++ b/java/ChangeLog.Jun2016
@@ -1,6 +1,16 @@
 # ChangeLog file for java
 # This file is updated with Maddlog
 
+* Thu Mar 17 2016 Martin van Dinther <martin.van.dint...@monetdbsolutions.com>
+- Improved DatabaseMetaData.getTypeInfo(). It now returns better information
+  on LITERAL_PREFIX, LITERAL_SUFFIX, CREATE_PARAMS, CASE_SENSITIVE,
+  FIXED_PREC_SCALE and MAXIMUM_SCALE for some data types. Also the returned 
rows
+  are now ordered by DATA_TYPE, TYPE_NAME, PRECISION as required by the specs.
+  Also corrected output column names "searchable" into "SEARCHABLE" and
+  "MAXIMUM SCALE" into "MAXIMUM_SCALE" to match the JDBC specification.
+- Corrected DatabaseMetaData.getPseudoColumns(). It used to return 12 empty 
rows.
+  Now it returns no rows as MonetDB does not have pseudo columns.
+
 * Thu Mar  3 2016 Martin van Dinther <martin.van.dint...@monetdbsolutions.com>
 - Implemented method DatabaseMetaData.getClientProperties(). It used to always
   return a resultset with 4 completely empty rows.  It now returns a
@@ -30,8 +40,8 @@
 
 * Thu Jan 28 2016 Martin van Dinther <martin.van.dint...@monetdbsolutions.com>
 - Method getFunctions() in DatabaseMetadata used to throw an SQLException:
-  SELECT: no such column 'functions.sql' This has been corrected.
-  It now returns a resultset as requested.
+   SELECT: no such column 'functions.sql'
+  This has been corrected. It now returns a resultset as requested.
 - The resultsets of DatabaseMetadata methods now no longer return a
   value for the *_CAT columns as MonetDB does not support Catalogs.
 
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
@@ -2313,20 +2313,18 @@ public class MonetDatabaseMetaData exten
 
        /**
         * Get a description of a table's columns that are automatically
-        * updated when any value in a row is updated.  They are
-        * unordered.
+        * updated when any value in a row is updated. They are unordered.
         *
         * <P>Each column description has the following columns:
         *      <OL>
         *      <LI><B>SCOPE</B> short => is not used
         *      <LI><B>COLUMN_NAME</B> String => column name
-        *      <LI><B>DATA_TYPE</B> short => SQL data type from java.sql.Types
+        *      <LI><B>DATA_TYPE</B> int => SQL data type from java.sql.Types
         *      <LI><B>TYPE_NAME</B> String => Data source dependent type name
         *      <LI><B>COLUMN_SIZE</B> int => precision
         *      <LI><B>BUFFER_LENGTH</B> int => length of column value in bytes
-        *      <LI><B>DECIMAL_DIGITS</B> short  => scale
-        *      <LI><B>PSEUDO_COLUMN</B> short => is this a pseudo column
-        *              like an Oracle ROWID
+        *      <LI><B>DECIMAL_DIGITS</B> short => scale
+        *      <LI><B>PSEUDO_COLUMN</B> short => is this a pseudo column like 
an Oracle ROWID
         *              <UL>
         *              <LI> versionColumnUnknown - may or may not be pseudo 
column
         *              <LI> versionColumnNotPseudo - is NOT a pseudo column
@@ -2347,26 +2345,19 @@ public class MonetDatabaseMetaData exten
                String table
        ) throws SQLException
        {
-               // I don't know of columns which update themselves, except 
maybe on the
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to