Changeset: 97fb91f5a501 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=97fb91f5a501
Added Files:
        monetdb5/mal/Tests/tst062.mal
        monetdb5/mal/Tests/tst062.stable.err
        monetdb5/mal/Tests/tst062.stable.out
        sql/test/pg_regress/Tests/interval.stable.err.int128
        sql/test/pg_regress/Tests/interval.stable.out.int128
        sql/test/pg_regress/Tests/oid.stable.err.oid32
        sql/test/pg_regress/Tests/oid.stable.out.oid32
        sql/test/pg_regress/Tests/oid.stable.out.oid64
        sql/test/remote/Tests/All
        sql/test/remote/Tests/ssbm.SQL.py
Modified Files:
        MonetDB.spec
        clients/R/MonetDB.R/DESCRIPTION
        clients/R/MonetDB.R/NEWS
        clients/R/MonetDB.R/R/dbi.R
        clients/R/MonetDB.R/man/monetdb.read.csv.Rd
        clients/Tests/MAL-signatures_all.stable.out
        clients/Tests/MAL-signatures_all.stable.out.int128
        clients/Tests/MAL-signatures_fits_geom.stable.out
        clients/Tests/MAL-signatures_fits_geom.stable.out.int128
        clients/Tests/MAL-signatures_geom.stable.out
        clients/Tests/MAL-signatures_geom.stable.out.int128
        clients/Tests/MAL-signatures_none.stable.out
        clients/Tests/MAL-signatures_none.stable.out.int128
        clients/Tests/exports.stable.out
        debian/monetdb5-server.install
        debian/monetdb5-sql.install
        gdk/gdk.h
        gdk/gdk_aggr.c
        gdk/gdk_atoms.c
        gdk/gdk_atoms.h
        gdk/gdk_bat.c
        gdk/gdk_batop.c
        gdk/gdk_bbp.c
        gdk/gdk_calc.c
        gdk/gdk_calc_compare.h
        gdk/gdk_group.c
        gdk/gdk_imprints.c
        gdk/gdk_join.c
        gdk/gdk_logger.c
        gdk/gdk_private.h
        gdk/gdk_qsort.c
        gdk/gdk_search.c
        gdk/gdk_search.h
        gdk/gdk_select.c
        gdk/gdk_setop.c
        gdk/gdk_ssort_impl.h
        gdk/gdk_unique.c
        gdk/gdk_value.c
        java/src/nl/cwi/monetdb/jdbc/MonetResultSet.java
        monetdb5/mal/Tests/All
        monetdb5/mal/Tests/tst044.stable.out
        monetdb5/mal/Tests/tst804.stable.out
        monetdb5/mal/mal.c
        monetdb5/mal/mal_atom.c
        monetdb5/mal/mal_client.h
        monetdb5/mal/mal_instruction.c
        monetdb5/mal/mal_interpreter.c
        monetdb5/mal/mal_private.h
        monetdb5/mal/mal_recycle.c
        monetdb5/modules/atoms/mtime.c
        monetdb5/modules/atoms/mtime.h
        monetdb5/modules/mal/batcalc.c
        monetdb5/modules/mal/cluster.c
        monetdb5/modules/mal/inspect.c
        monetdb5/modules/mal/mal_io.c
        monetdb5/modules/mal/manifold.c
        monetdb5/modules/mal/mat.c
        monetdb5/modules/mal/mkey.c
        monetdb5/modules/mal/remote.c
        monetdb5/optimizer/opt_coercion.c
        monetdb5/optimizer/opt_prelude.c
        monetdb5/optimizer/opt_prelude.h
        monetdb5/optimizer/opt_support.c
        sql/backends/monet5/LSST/lsst.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql.h
        sql/backends/monet5/sql.mal
        sql/backends/monet5/sql_bat2time.c
        sql/backends/monet5/sql_gencode.c
        sql/backends/monet5/sql_result.c
        sql/server/rel_distribute.c
        sql/server/rel_optimizer.c
        sql/server/sql_qc.c
        sql/test/BugTracker-2014/Tests/case-sqrt.Bug-3627.stable.err
        sql/test/BugTracker-2014/Tests/case-sqrt.Bug-3627.stable.out
        sql/test/pg_regress/Tests/case.sql
        sql/test/pg_regress/Tests/case.stable.out
        sql/test/pg_regress/Tests/interval.sql
        sql/test/pg_regress/Tests/interval.stable.err
        sql/test/pg_regress/Tests/time.stable.err
        sql/test/pg_regress/Tests/time.stable.out
        sql/test/pg_regress/Tests/timestamp.stable.err
        sql/test/pg_regress/Tests/timestamp.stable.out
        sql/test/pg_regress/Tests/timestamptz.stable.err
        sql/test/pg_regress/Tests/timestamptz.stable.out
        sql/test/pg_regress/Tests/timetz.stable.err
        sql/test/pg_regress/Tests/timetz.stable.out
Branch: geo
Log Message:

Merge with default branch.


diffs (truncated from 8035 to 300 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -636,7 +636,7 @@ fi
 %if %{?with_rintegration:1}%{!?with_rintegration:0}
 %exclude %{_libdir}/monetdb5/rapi.mal
 %endif
-%exclude %{_libdir}/monetdb5/sql.mal
+%exclude %{_libdir}/monetdb5/sql*.mal
 %{_libdir}/monetdb5/*.mal
 %if %{?with_geos:1}%{!?with_geos:0}
 %exclude %{_libdir}/monetdb5/autoload/*_geom.mal
@@ -645,7 +645,7 @@ fi
 %if %{?with_rintegration:1}%{!?with_rintegration:0}
 %exclude %{_libdir}/monetdb5/autoload/*_rapi.mal
 %endif
-%exclude %{_libdir}/monetdb5/autoload/*_sql.mal
+%exclude %{_libdir}/monetdb5/autoload/??_sql*.mal
 %{_libdir}/monetdb5/autoload/*.mal
 %if %{?with_geos:1}%{!?with_geos:0}
 %exclude %{_libdir}/monetdb5/lib_geom.so
@@ -723,7 +723,7 @@ systemd-tmpfiles --create %{_sysconfdir}
 %exclude %{_sysconfdir}/tmpfiles.d/monetdbd.conf
 %endif
 %config(noreplace) %{_localstatedir}/monetdb5/dbfarm/.merovingian_properties
-%{_libdir}/monetdb5/autoload/*_sql*.mal
+%{_libdir}/monetdb5/autoload/??_sql*.mal
 %{_libdir}/monetdb5/lib_sql.so
 %{_libdir}/monetdb5/*.sql
 %dir %{_libdir}/monetdb5/createdb
diff --git a/clients/R/MonetDB.R/DESCRIPTION b/clients/R/MonetDB.R/DESCRIPTION
--- a/clients/R/MonetDB.R/DESCRIPTION
+++ b/clients/R/MonetDB.R/DESCRIPTION
@@ -1,5 +1,5 @@
 Package: MonetDB.R
-Version: 0.9.7
+Version: 0.9.6
 Title: Connect MonetDB to R
 Authors@R: c(person("Hannes Muehleisen", role = c("aut", "cre"),email = 
"han...@cwi.nl"),
        person("Thomas Lumley", role = "ctb"),
diff --git a/clients/R/MonetDB.R/NEWS b/clients/R/MonetDB.R/NEWS
--- a/clients/R/MonetDB.R/NEWS
+++ b/clients/R/MonetDB.R/NEWS
@@ -1,11 +1,7 @@
-0.9.7
-- monetdb.read.csv TODO (thanks, Duncan)
-- dbWriteTable encoding checks  TODO (thanks, Anthony)
-- deprecated nrows parameter to monetdb.read.csv, not neccessary any more 
because of upgrades to MonetDB
-- added query progress bar (counting MAL statements) for MonetDB releases 
following Oct2014, enable with options(monetdb.profile=T)
-
 0.9.6
-- Fixed non-ASCII character handling (thanks, Roman!)
+- monetdb.read.csv new create= parameter (Thanks, Duncan)
+- deprecated nrows parameter to monetdb.read.csv, not neccessary any more 
because of changes to MonetDB
+- Fixed non-ASCII character handling (Thanks, Roman)
 - Fully removed C-based socket code
 - support for dplyr verbs sample_n() and sample_frac()
 
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
@@ -126,12 +126,8 @@ setMethod("dbConnect", "MonetDBDriver", 
     dbSendQuery(conn, "set optimizer='sequential_pipe'")
   }
 
-  if (getOption("monetdb.profile", T)) {
-    .profiler_enable(conn)
-  }
-  
+  # if (getOption("monetdb.profile", T)) .profiler_enable(conn)
   return(conn)
-
 }, 
 valueClass="MonetDBConnection")
 
@@ -234,7 +230,7 @@ setMethod("dbSendQuery", signature(conn=
   env <- NULL
   if (getOption("monetdb.debug.query", F))  message("QQ: '", statement, "'")
   # make the progress bar wait for querylog.define
-  if (getOption("monetdb.profile", T))  .profiler_arm()
+  # if (getOption("monetdb.profile", T))  .profiler_arm()
 
   # the actual request
   mresp <- .mapiRequest(conn, paste0("s", statement, "\n;"), async=async)
@@ -526,13 +522,12 @@ setMethod("dbFetch", signature(res="Mone
   # if our tuple cache in res@env$data does not contain n rows, we fetch from 
server until it does
   while (length(res@env$data) < n) {
     cresp <- .mapiParseResponse(.mapiRequest(res@env$conn, paste0("Xexport ", 
.mapiLongInt(info$id), 
-                                                                  " ", 
.mapiLongInt(info$index), " ", 
.mapiLongInt(min(10000,n-length(res@env$data))))))
+                                                                  " ", 
.mapiLongInt(info$index), " ", .mapiLongInt(n-length(res@env$data)))))
     stopifnot(cresp$type == Q_BLOCK && cresp$rows > 0)
     
     res@env$data <- c(res@env$data, cresp$tuples)
     info$index <- info$index + cresp$rows
-    #print(paste0(length(res@env$data), " of ", info$rows));
-    if (getOption("monetdb.profile", T))  
.profiler_progress(length(res@env$data), n)
+    # if (getOption("monetdb.profile", T))  
.profiler_progress(length(res@env$data), n)
   }
   
   # convert tuple string vector into matrix so we can access a single column 
efficiently
@@ -571,7 +566,7 @@ setMethod("dbFetch", signature(res="Mone
   attr(df, "row.names") <- c(NA_integer_, length(df[[1]]))
   class(df) <- "data.frame"
   
-  if (getOption("monetdb.profile", T))  .profiler_clear()
+  # if (getOption("monetdb.profile", T))  .profiler_clear()
 
   return(df)
 })
@@ -623,7 +618,8 @@ setMethod("dbGetInfo", "MonetDBResult", 
 
 # adapted from RMonetDB, no java-specific things in here...
 monet.read.csv <- monetdb.read.csv <- function(conn, files, tablename, 
nrows=NA, header=TRUE, 
-                                               locked=FALSE, na.strings="", 
nrow.check=500, delim=",", newline="\\n", quote="\"", ...){
+                                               locked=FALSE, na.strings="", 
nrow.check=500, 
+                                               delim=",", newline="\\n", 
quote="\"", create=TRUE, ...){
   
   if (length(na.strings)>1) stop("na.strings must be of length 1")
   headers <- lapply(files, read.csv, sep=delim, na.strings=na.strings, 
quote=quote, nrows=nrow.check, 
@@ -642,7 +638,7 @@ monet.read.csv <- monetdb.read.csv <- fu
     if(!all(types==types[, 1])) stop("Files have different variable types")
   } 
   
-  dbWriteTable(conn, tablename, headers[[1]][FALSE, ])
+  if (create) dbWriteTable(conn, tablename, headers[[1]][FALSE, ])
   
   delimspec <- paste0("USING DELIMITERS '", delim, "','", newline, "','", 
quote, "'")
   
diff --git a/clients/R/MonetDB.R/man/monetdb.read.csv.Rd 
b/clients/R/MonetDB.R/man/monetdb.read.csv.Rd
--- a/clients/R/MonetDB.R/man/monetdb.read.csv.Rd
+++ b/clients/R/MonetDB.R/man/monetdb.read.csv.Rd
@@ -11,7 +11,7 @@
 \usage{
    monetdb.read.csv (conn, files, tablename, nrows, header=TRUE, 
   locked=FALSE, na.strings="", nrow.check=500, delim=",",
-  newline = "\\\\n", quote = "\"", ...)
+  newline = "\\\\n", quote = "\"", create=TRUE, ...)
 }
 \arguments{
   \item{conn}{A MonetDB.R database connection. Created using 
\code{\link[DBI]{dbConnect}} with the 
@@ -29,6 +29,7 @@
    \item{delim}{Field separator in CSV file.}
    \item{newline}{Newline in CSV file, usually \\n for UNIX-like systems and 
\\r\\r on Windows.}
    \item{quote}{Quote character(s) in CSV file.}
+  \item{create}{Create table before importing?}
  }
  
 \value{
diff --git a/clients/Tests/MAL-signatures_all.stable.out 
b/clients/Tests/MAL-signatures_all.stable.out
--- a/clients/Tests/MAL-signatures_all.stable.out
+++ b/clients/Tests/MAL-signatures_all.stable.out
@@ -22924,6 +22924,10 @@ command batcalc.daytime(v:bat[:oid,:dayt
 address batdaytime_2time_daytime;
 comment cast daytime to daytime and check for overflow
 
+command 
batcalc.daytime(v:bat[:oid,:str],digits:int,has_tz:int):bat[:oid,:daytime] 
+address batstr_2time_daytimetz;
+comment cast to daytime and check for overflow
+
 command batcalc.daytime(v:bat[:oid,:str],digits:int):bat[:oid,:daytime] 
 address batstr_2time_daytime;
 comment cast to daytime and check for overflow
@@ -30712,6 +30716,10 @@ command batcalc.timestamp(v:bat[:oid,:ti
 address battimestamp_2time_timestamp;
 comment cast timestamp to timestamp and check for overflow
 
+command 
batcalc.timestamp(v:bat[:oid,:str],digits:int,has_tz:int):bat[:oid,:timestamp] 
+address batstr_2time_timestamptz;
+comment cast to timestamp and check for overflow
+
 command batcalc.timestamp(v:bat[:oid,:str],digits:int):bat[:oid,:timestamp] 
 address batstr_2time_timestamp;
 comment cast to timestamp and check for overflow
@@ -35355,6 +35363,10 @@ command calc.daytime(v:daytime,digits:in
 address daytime_2time_daytime;
 comment cast daytime to daytime and check for overflow
 
+command calc.daytime(v:str,digits:int,has_tz:int):daytime 
+address str_2time_daytimetz;
+comment cast to daytime and check for overflow
+
 command calc.daytime(v:str,digits:int):daytime 
 address str_2time_daytime;
 comment cast to daytime and check for overflow
@@ -37318,6 +37330,10 @@ command calc.timestamp(v:timestamp,digit
 address timestamp_2time_timestamp;
 comment cast timestamp to timestamp and check for overflow
 
+command calc.timestamp(v:str,digits:int,has_tz:int):timestamp 
+address str_2time_timestamptz;
+comment cast to timestamp and check for overflow
+
 command calc.timestamp(v:str,digits:int):timestamp 
 address str_2time_timestamp;
 comment cast to timestamp and check for overflow
diff --git a/clients/Tests/MAL-signatures_all.stable.out.int128 
b/clients/Tests/MAL-signatures_all.stable.out.int128
--- a/clients/Tests/MAL-signatures_all.stable.out.int128
+++ b/clients/Tests/MAL-signatures_all.stable.out.int128
@@ -29463,6 +29463,10 @@ command batcalc.daytime(v:bat[:oid,:dayt
 address batdaytime_2time_daytime;
 comment cast daytime to daytime and check for overflow
 
+command 
batcalc.daytime(v:bat[:oid,:str],digits:int,has_tz:int):bat[:oid,:daytime] 
+address batstr_2time_daytimetz;
+comment cast to daytime and check for overflow
+
 command batcalc.daytime(v:bat[:oid,:str],digits:int):bat[:oid,:daytime] 
 address batstr_2time_daytime;
 comment cast to daytime and check for overflow
@@ -39701,6 +39705,10 @@ command batcalc.timestamp(v:bat[:oid,:ti
 address battimestamp_2time_timestamp;
 comment cast timestamp to timestamp and check for overflow
 
+command 
batcalc.timestamp(v:bat[:oid,:str],digits:int,has_tz:int):bat[:oid,:timestamp] 
+address batstr_2time_timestamptz;
+comment cast to timestamp and check for overflow
+
 command batcalc.timestamp(v:bat[:oid,:str],digits:int):bat[:oid,:timestamp] 
 address batstr_2time_timestamp;
 comment cast to timestamp and check for overflow
@@ -45632,6 +45640,10 @@ command calc.daytime(v:daytime,digits:in
 address daytime_2time_daytime;
 comment cast daytime to daytime and check for overflow
 
+command calc.daytime(v:str,digits:int,has_tz:int):daytime 
+address str_2time_daytimetz;
+comment cast to daytime and check for overflow
+
 command calc.daytime(v:str,digits:int):daytime 
 address str_2time_daytime;
 comment cast to daytime and check for overflow
@@ -48173,6 +48185,10 @@ command calc.timestamp(v:timestamp,digit
 address timestamp_2time_timestamp;
 comment cast timestamp to timestamp and check for overflow
 
+command calc.timestamp(v:str,digits:int,has_tz:int):timestamp 
+address str_2time_timestamptz;
+comment cast to timestamp and check for overflow
+
 command calc.timestamp(v:str,digits:int):timestamp 
 address str_2time_timestamp;
 comment cast to timestamp and check for overflow
diff --git a/clients/Tests/MAL-signatures_fits_geom.stable.out 
b/clients/Tests/MAL-signatures_fits_geom.stable.out
--- a/clients/Tests/MAL-signatures_fits_geom.stable.out
+++ b/clients/Tests/MAL-signatures_fits_geom.stable.out
@@ -22845,6 +22845,10 @@ command batcalc.daytime(v:bat[:oid,:dayt
 address batdaytime_2time_daytime;
 comment cast daytime to daytime and check for overflow
 
+command 
batcalc.daytime(v:bat[:oid,:str],digits:int,has_tz:int):bat[:oid,:daytime] 
+address batstr_2time_daytimetz;
+comment cast to daytime and check for overflow
+
 command batcalc.daytime(v:bat[:oid,:str],digits:int):bat[:oid,:daytime] 
 address batstr_2time_daytime;
 comment cast to daytime and check for overflow
@@ -30633,6 +30637,10 @@ command batcalc.timestamp(v:bat[:oid,:ti
 address battimestamp_2time_timestamp;
 comment cast timestamp to timestamp and check for overflow
 
+command 
batcalc.timestamp(v:bat[:oid,:str],digits:int,has_tz:int):bat[:oid,:timestamp] 
+address batstr_2time_timestamptz;
+comment cast to timestamp and check for overflow
+
 command batcalc.timestamp(v:bat[:oid,:str],digits:int):bat[:oid,:timestamp] 
 address batstr_2time_timestamp;
 comment cast to timestamp and check for overflow
@@ -35276,6 +35284,10 @@ command calc.daytime(v:daytime,digits:in
 address daytime_2time_daytime;
 comment cast daytime to daytime and check for overflow
 
+command calc.daytime(v:str,digits:int,has_tz:int):daytime 
+address str_2time_daytimetz;
+comment cast to daytime and check for overflow
+
 command calc.daytime(v:str,digits:int):daytime 
 address str_2time_daytime;
 comment cast to daytime and check for overflow
@@ -37239,6 +37251,10 @@ command calc.timestamp(v:timestamp,digit
 address timestamp_2time_timestamp;
 comment cast timestamp to timestamp and check for overflow
 
+command calc.timestamp(v:str,digits:int,has_tz:int):timestamp 
+address str_2time_timestamptz;
+comment cast to timestamp and check for overflow
+
 command calc.timestamp(v:str,digits:int):timestamp 
 address str_2time_timestamp;
 comment cast to timestamp and check for overflow
diff --git a/clients/Tests/MAL-signatures_fits_geom.stable.out.int128 
b/clients/Tests/MAL-signatures_fits_geom.stable.out.int128
--- a/clients/Tests/MAL-signatures_fits_geom.stable.out.int128
+++ b/clients/Tests/MAL-signatures_fits_geom.stable.out.int128
@@ -29389,6 +29389,10 @@ command batcalc.daytime(v:bat[:oid,:dayt
 address batdaytime_2time_daytime;
 comment cast daytime to daytime and check for overflow
 
+command 
batcalc.daytime(v:bat[:oid,:str],digits:int,has_tz:int):bat[:oid,:daytime] 
+address batstr_2time_daytimetz;
+comment cast to daytime and check for overflow
+
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to