Changeset: b06fdc323da9 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b06fdc323da9 Added Files: clients/mapilib/ChangeLog-Archive clients/nodejs/Tests/nodetest.js clients/nodejs/monetdb/README.md clients/nodejs/monetdb/mapiclient.js clients/nodejs/monetdb/package.json common/stream/ChangeLog-Archive debian/libmonetdb-client7.install debian/libmonetdb-stream6.install debian/libmonetdb11.install sql/backends/monet5/generator/Tests/crash.Bug-3609.sql sql/backends/monet5/generator/Tests/crash.Bug-3609.stable.err sql/backends/monet5/generator/Tests/crash.Bug-3609.stable.out sql/backends/monet5/sql_upgrades.c sql/backends/monet5/sql_upgrades.h sql/test/BugTracker-2014/Tests/empty_intermediate_quantile.Bug-3611.sql sql/test/BugTracker-2014/Tests/empty_intermediate_quantile.Bug-3611.stable.err sql/test/BugTracker-2014/Tests/empty_intermediate_quantile.Bug-3611.stable.out sql/test/BugTracker-2014/Tests/fk-property-assert.Bug-3612.sql sql/test/BugTracker-2014/Tests/fk-property-assert.Bug-3612.stable.err sql/test/BugTracker-2014/Tests/fk-property-assert.Bug-3612.stable.out sql/test/BugTracker-2014/Tests/nil_2dec_lng.Bug-3592.stable.out.single sql/test/BugTracker-2014/Tests/querylog.Bug-3607.sql sql/test/BugTracker-2014/Tests/querylog.Bug-3607.stable.err sql/test/BugTracker-2014/Tests/querylog.Bug-3607.stable.out sql/test/json/Tests/shop.sql sql/test/json/Tests/shop.stable.err sql/test/json/Tests/shop.stable.out sql/test/mergetables/Tests/doubletable.sql sql/test/mergetables/Tests/singlekeyconstraint.sql sql/test/pg_regress/Tests/loadwisconsin.sql Removed Files: buildtools/ChangeLog.Jan2014 clients/ChangeLog.Jan2014 clients/python2/ChangeLog.Jan2014 clients/python3/ChangeLog.Jan2014 debian/libmonetdb-client6.install debian/libmonetdb-stream5.install debian/libmonetdb10.install gdk/ChangeLog.Jan2014 geom/ChangeLog.Jan2014 java/ChangeLog.Jan2014 monetdb5/ChangeLog.Jan2014 sql/ChangeLog.Jan2014 testing/ChangeLog.Jan2014 tools/merovingian/ChangeLog.Jan2014 Modified Files: .hgtags 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 buildtools/ChangeLog-Archive buildtools/ChangeLog.Oct2014 clients/R/MonetDB.R/NAMESPACE clients/R/MonetDB.R/NEWS clients/R/MonetDB.R/R/dplyr.R clients/R/MonetDB.R/R/mapi.R clients/R/Tests/dplyr.R clients/R/Tests/install-dependencies.sh clients/Tests/MAL-signatures_all.stable.out.int128 clients/Tests/MAL-signatures_fits_geom.stable.out.int128 clients/Tests/MAL-signatures_geom.stable.out.int128 clients/Tests/MAL-signatures_none.stable.out.int128 clients/Tests/exports.stable.out clients/mapiclient/mclient.c clients/mapilib/ChangeLog.Oct2014 clients/mapilib/mapi.rc clients/odbc/driver/driver.rc clients/odbc/winsetup/setup.rc clients/python2/setup.py clients/python3/setup.py common/stream/ChangeLog.Oct2014 configure.ag debian/changelog debian/control gdk/ChangeLog gdk/ChangeLog-Archive gdk/ChangeLog.Oct2014 gdk/gdk.h gdk/gdk_aggr.c gdk/gdk_align.c gdk/gdk_bat.c gdk/gdk_batop.c gdk/gdk_delta.c gdk/gdk_firstn.c gdk/gdk_group.c gdk/gdk_imprints.c gdk/gdk_join.c gdk/gdk_logger.c gdk/gdk_private.h gdk/gdk_search.c gdk/gdk_search.h gdk/gdk_select.c gdk/gdk_setop.c gdk/gdk_utils.c gdk/libbat.rc java/Makefile.ag java/build.properties java/pom.xml java/release.txt java/src/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java java/src/nl/cwi/monetdb/jdbc/MonetDriver.java.in libversions monetdb5/ChangeLog-Archive monetdb5/ChangeLog.Oct2014 monetdb5/extras/rdf/rdf_shredder.c monetdb5/mal/mal_authorize.c monetdb5/mal/mal_debugger.c monetdb5/mal/mal_interpreter.h monetdb5/modules/atoms/json.c monetdb5/modules/atoms/mtime.c monetdb5/modules/atoms/str.c monetdb5/modules/kernel/aggr.c monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/bat5.c monetdb5/modules/mal/00_calc_hge.mal monetdb5/modules/mal/00_mkey_hge.mal monetdb5/modules/mal/Tests/pqueue3.stable.out monetdb5/modules/mal/clients.c monetdb5/modules/mal/cluster.c monetdb5/modules/mal/mkey.c monetdb5/modules/mal/querylog.c monetdb5/modules/mal/tablet.c monetdb5/modules/mal/tokenizer.c monetdb5/optimizer/opt_generator.c monetdb5/optimizer/opt_querylog.c monetdb5/optimizer/opt_statistics.c monetdb5/tests/gdkTests/Tests/All monetdb5/tests/gdkTests/Tests/firstn.stable.out monetdb5/tools/libmonetdb5.rc sql/ChangeLog-Archive sql/ChangeLog.Oct2014 sql/backends/monet5/Makefile.ag sql/backends/monet5/datacell/datacell.c sql/backends/monet5/datacell/opt_datacell.c sql/backends/monet5/datacell/opt_datacell.h sql/backends/monet5/generator/Tests/All sql/backends/monet5/sql.c sql/backends/monet5/sql_gencode.c sql/backends/monet5/sql_scenario.c sql/backends/monet5/sql_scenario.h sql/backends/monet5/sql_user.c sql/benchmarks/tpch/Tests/13-explain.stable.out.32bit sql/benchmarks/tpch/Tests/16-explain.stable.out.32bit sql/benchmarks/tpch/Tests/20-explain.stable.out.32bit sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit sql/server/rel_select.c sql/storage/bat/bat_table.c sql/storage/restrict/restrict_storage.c sql/storage/restrict/restrict_table.c sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out.32bit sql/test/BugTracker-2013/Tests/between.Bug-3259.stable.out.single sql/test/BugTracker-2014/Tests/All sql/test/BugTracker-2014/Tests/insert_into_temp_table.Bug-3600.sql sql/test/BugTracker-2014/Tests/insert_into_temp_table.Bug-3600.stable.out sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit sql/test/json/Tests/All sql/test/mergetables/Tests/All sql/test/pg_regress/Tests/All sql/test/pg_regress/Tests/alter_table.sql sql/test/pg_regress/Tests/alter_table.stable.err sql/test/pg_regress/Tests/alter_table.stable.out sql/test/pg_regress/Tests/arrays.stable.err sql/test/pg_regress/Tests/boolean.stable.err sql/test/pg_regress/Tests/case.stable.err sql/test/pg_regress/Tests/case.stable.out sql/test/pg_regress/Tests/char.stable.err sql/test/pg_regress/Tests/comments.stable.err sql/test/pg_regress/Tests/create_aggregate.stable.err sql/test/pg_regress/Tests/create_misc.stable.out sql/test/pg_regress/Tests/create_operator.stable.err sql/test/pg_regress/Tests/date.stable.err sql/test/pg_regress/Tests/date.stable.out sql/test/pg_regress/Tests/drop.stable.err sql/test/pg_regress/Tests/float4.stable.err sql/test/pg_regress/Tests/float8.stable.err sql/test/pg_regress/Tests/inet.stable.err sql/test/pg_regress/Tests/insert.stable.err sql/test/pg_regress/Tests/int2.stable.err sql/test/pg_regress/Tests/int4.stable.err sql/test/pg_regress/Tests/int8.stable.err sql/test/pg_regress/Tests/interval.stable.err sql/test/pg_regress/Tests/interval.stable.out sql/test/pg_regress/Tests/limit.sql sql/test/pg_regress/Tests/limit.stable.err sql/test/pg_regress/Tests/limit.stable.out sql/test/pg_regress/Tests/numeric.stable.err sql/test/pg_regress/Tests/numeric_big.stable.err sql/test/pg_regress/Tests/numerology.stable.err sql/test/pg_regress/Tests/numerology.stable.out sql/test/pg_regress/Tests/oid.stable.err sql/test/pg_regress/Tests/random.sql sql/test/pg_regress/Tests/select_into.stable.err sql/test/pg_regress/Tests/strings.stable.err sql/test/pg_regress/Tests/strings_cast.stable.err sql/test/pg_regress/Tests/strings_cast.stable.out sql/test/pg_regress/Tests/strings_concat.stable.err 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.out sql/test/pg_regress/Tests/vacuum.stable.out sql/test/pg_regress/Tests/varchar.stable.err sql/test/pg_regress/Tests/without_oid.stable.err sql/test/pg_regress/Tests/without_oid.stable.out tools/merovingian/ChangeLog-Archive tools/merovingian/ChangeLog.Oct2014 tools/merovingian/daemon/forkmserver.c tools/merovingian/daemon/merovingian.c vertoo.data Branch: HTM Log Message:
Merge with default branch diffs (truncated from 48034 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -576,3 +576,8 @@ 6830d0b9c31fe23954c75014a581f145c7a551ff 0218c4ec31068bd1b9be7d2bb1ccad31e17e8d5f Jan2014_SP3_release 6c7d5f562fcb044b745c871344c25b1c6bab7cf4 Jan2014_SP3_release 3899334ca1f3c13924e8bd22d2afab8ab468e5ba Oct2014_root +0dd4a291a01def38d0d2f0a96559ea8c73a56b3f Oct2014_1 +4f894ebf1a93ae895ec23d54ce2112bf21a6427e Oct2014_release +e92e434d19b7308c2952d50978c2cfd78e1bdb80 Oct2014_3 +4f894ebf1a93ae895ec23d54ce2112bf21a6427e Oct2014_release +88a29a5a2bef5c6cef6b3bfa5ab7c4d3b855a2c8 Oct2014_release diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -91,7 +91,7 @@ Vendor: MonetDB BV <i...@monetdb.org> Group: Applications/Databases License: MPL - http://www.monetdb.org/Legal/MonetDBLicense URL: http://www.monetdb.org/ -Source: http://dev.monetdb.org/downloads/sources/Jan2014-SP3/%{name}-%{version}.tar.bz2 +Source: http://dev.monetdb.org/downloads/sources/Oct2014/%{name}-%{version}.tar.bz2 BuildRequires: bison BuildRequires: bzip2-devel @@ -960,6 +960,172 @@ mv $RPM_BUILD_ROOT%{_datadir}/doc/MonetD rm -fr $RPM_BUILD_ROOT %changelog +* Tue Oct 28 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.3-20141028 +- Rebuilt. + +* Fri Oct 24 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- Rebuilt. +- BZ#2618: Implement master slave scheme +- BZ#2945: evaluation of SQL "between SYMMETRIC" requires MAL iterator + because there is no (bulk) MIN/MAX(a,b) +- BZ#3204: monetdb create: allow setting admin password during creation +- BZ#3390: Missing definition for pushSht in monetdb5/mal/mal_builder.h +- BZ#3402: We should have a C implementation of mal.multiplex. +- BZ#3422: Segmentation fault after large table insert +- BZ#3459: incomplete implementation of JDBC driver getNumericFunctions(), + getStringFunctions(), getSystemFunctions(), getTimeDateFunctions(), + getSQLKeywords() methods in MonetDatabaseMetaData.java +- BZ#3471: JDBC driver: incorrect output result of SQL query: SELECT 1 ; +- BZ#3474: bulk and scalar versions of mkey.rotate_xor_hash differ +- BZ#3484: COPY INTO on a file works fine on Linux/OSX, but not on Windows +- BZ#3488: Slow SQL execution for correlated scalar subquery +- BZ#3489: SQL query with ORDER BY does not order its result as requested +- BZ#3490: SQL query kills the mserver5 (Segmentation fault) +- BZ#3491: SQL query kills the mserver5 (Segmentation fault) +- BZ#3493: Test monetdb5/modules/mal/Tests/pqueue.mal fails since + recent checkins +- BZ#3494: Tests monetdb5/modules/mal/Tests/pqueue[23].mal lack + correct/expected/intended output +- BZ#3495: Test sql/test/centipede/Tests/olap.sql lacks + correct/expected/intended output +- BZ#3497: monetdb start reports crash in merovingian.log +- BZ#3498: SQL throws TypeException if aggregations and limit statements + are both present +- BZ#3502: Database was killed by signal SIGBUS +- BZ#3504: COPY INTO does not allow OFFSET without specifying amount + of records +- BZ#3505: expression with <boolean> = NOT <boolean> returns a syntax + error but NOT <boolean> = <boolean> not +- BZ#3506: conversion to varchar terminates mserver +- BZ#3508: conversion of string '0 ' to type smallint or integer fails +- BZ#3510: timestamp + month interval generates bogus MAL? +- BZ#3511: When having multiple selections combined with aliases not + all of them seem to be evalauted. +- BZ#3512: auto-conversion of string to `sht` type no longer works +- BZ#3513: COPY BINARY INTO fails on 6gb file; works fine on 3gb +- BZ#3516: inserting '0' into a column of datatype numeric fails +- BZ#3518: UNION with subqueries +- BZ#3521: large results of function exp() are not automatically returned + as double +- BZ#3522: SQL catalog table sys.columns lists columns for table ids + which do not exist in sys.tables +- BZ#3523: Window function over union gives no result +- BZ#3524: wrong error on missing aggregation column +- BZ#3527: select distinct - order by - limit 2 results in one single + result +- BZ#3528: segfault at mal_session.c:521 +- BZ#3532: several geom tests crash after manifold changes +- BZ#3534: missing table name with invalid column in join using (and + problems after resolving it) +- BZ#3536: program contains error with join using integer and smallint +- BZ#3542: gdk/gdk_bat.c:2904: BATassertHeadProps: Assertion + `!b->H->revsorted || cmp >= 0' failed. +- BZ#3543: invalid behavior and incorrect data results for SQL data + type: numeric(4,4) +- BZ#3544: sys.reuse() corrupts data +- BZ#3546: Division by zero in CASE statement that should avoid it +- BZ#3547: Empty query when selecting a field from a view made of + UNION ALL +- BZ#3551: Wrong ticks in TRACE +- BZ#3552: incorrect data results for "WHERE int_col <> 0" +- BZ#3554: Issue with subselect and ORDER BY +- BZ#3555: Order of evaluation inside CASE WHEN +- BZ#3558: numeric values (as strings) are incorrectly parsed/converted + and invalid strings are accepted without error +- BZ#3560: Error "BATproject: does not match always" with + subselect/groupby/having +- BZ#3562: mserver5: gdk_bat.c:2855: BATassertHeadProps: Assertion + `!b->H->revsorted || cmp >= 0' failed. +- BZ#3563: incorrect results for scalar function locate(in_str, + search_str, occurrence) +- BZ#3565: Wrong/confusing error message when trying to add a FK to a + TEMP TABLE +- BZ#3572: Table names with escaped double quotes are rejected +- BZ#3573: alter table alter_not_null_test alter test set NOT NULL; + is accepted when test contains null. This used to be restricted but + isn't anymore +- BZ#3575: segmentation fault in mserver5 process +- BZ#3576: Dropping default value definitions from a table does not work + as expected +- BZ#3577: SIGSEGV in BATins_kdiff +- BZ#3579: segmentation fault in mserver5 process +- BZ#3581: mserver5: rel_bin.c:2504: rel2bin_groupby: Assertion `0' + failed. +- BZ#3582: mserver5: sql_mem.c:48: sql_ref_dec: Assertion `r->refcnt > + 0' failed. +- BZ#3583: Possible buffer overflow in max(varchar) +- BZ#3585: Incorrect query terminates connection +- BZ#3586: mserver5: sql/storage/store.c:3610: sys_drop_func: Assertion + `rid_func != oid_nil' failed. +- BZ#3592: SIGSEGV in MANIFOLDjob +- BZ#3593: delta_append_val: Assertion `!c || ((c)->S->count) == + bat->ibase' failed. +- BZ#3594: gdk/gdk_bat.c:2855: BATassertHeadProps: Assertion + `!b->H->revsorted || cmp >= 0' failed. +- BZ#3595: Race/heap corruption on thread exit +- BZ#3596: gdk_bat.c:2861: BATassertHeadProps: Assertion `!b->H->nonil || + cmp != 0' failed. +- BZ#3597: SQL to MAL listing looses types +- BZ#3598: SQL bulk load should ignore leading/trailing spaces also with + type decimal (as with integers & real/double) +- BZ#3599: Double-free of imprints +- BZ#3601: Trivial typo in debian/monetdb5-sql.init.d +- BZ#3603: "monetdb create -p" hangs monetdbd +- BZ#3604: Sys.queue ignored upon errors + +* Mon Sep 15 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- monetdb5: Removed algebra.materialize. + +* Fri Aug 29 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- monetdb5: Removed algebra.kunique and algebra.tunique. They were subsumed by + algebra.subunique. + +* Tue Aug 26 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- monetdb5: Remove algebra.antiuselect and algebra.thetauselect. They were subsumed + by algebra.subselect. + +* Mon Aug 25 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- monetdb5: Removed algebra.topN and its imlementation BATtopN. The function was + not used. +- monetdb5: Removed aggr.histogram and its implementation BAThistogram. The + function was not used, and did not produce output in the "headless" + (i.e. dense-headed) format. Histograms can be created as a by-product + of group.subgroup. + +* Fri Jul 25 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- gdk: Added "multifarm" capability. It is now possible to separate persistent + and transient BATs into different directories (presumably on different + disks). This can be done by using the --dbextra option of mserver5 + (see the man page). + +* Fri Jul 25 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- buildtools: Jacqueline, the MonetDB/JAQL frontend, has been removed. The frontend + never grew beyond being experimental, and there is no interest anymore + to maintain the code. + +* Fri Jul 25 2014 Jennie Zhang <y.zh...@cwi.nl> - 11.19.1-20141024 +- sql: Added PostgreSQL compatible string TRIM, LTRIM, RTRIM, LPAD and RPAD + functions + +* Fri Jul 25 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- mapilib: Changed mapi_timeout argument from seconds to milliseconds. + +* Fri Jul 25 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- stream: Changed mnstr_settimeout function so that the specified timeout is now + in milliseconds (used to be seconds), and that it also needs an extra + argument specifying a callback function (no arguments, int result) + that should return TRUE if the timeout should cause the function to + abort or continue what it was doing. + +* Fri Jul 25 2014 Fabian Groffen <fab...@monetdb.org> - 11.19.1-20141024 +- merovingian: monetdb create: add -p flag to set monetdb user password on creation, + and therefore allow creating the database in unlocked state + +* Fri Jul 25 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- sql: Stop support for upgrading directly from a database created with a + server from the Oct2012 release or older. You can upgrade via the + Feb2013 or Jan2014 release. + * Fri Jul 25 2014 Sjoerd Mullender <sjo...@acm.org> - 11.17.21-20140725 - Rebuilt. - BZ#3519: Uppercase TRUE/FALSE strings cannot be converted to boolean diff --git a/buildtools/ChangeLog-Archive b/buildtools/ChangeLog-Archive --- a/buildtools/ChangeLog-Archive +++ b/buildtools/ChangeLog-Archive @@ -1,6 +1,11 @@ # DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY # This file contains past ChangeLog entries +* Thu Apr 10 2014 Sjoerd Mullender <sjo...@acm.org> - 11.19.1-20141024 +- Jacqueline, the MonetDB/JAQL frontend, has been removed. The frontend + never grew beyond being experimental, and there is no interest anymore + to maintain the code. + * Tue Jun 3 2014 Sjoerd Mullender <sjo...@acm.org> - 11.17.19-20140722 - Fix configure to continue without Python if the python binary is too old. This instead of always aborting configure if python happens diff --git a/buildtools/ChangeLog.Jan2014 b/buildtools/ChangeLog.Jan2014 deleted file mode 100644 --- a/buildtools/ChangeLog.Jan2014 +++ /dev/null @@ -1,3 +0,0 @@ -# ChangeLog file for buildtools -# This file is updated with Maddlog - diff --git a/buildtools/ChangeLog.Oct2014 b/buildtools/ChangeLog.Oct2014 --- a/buildtools/ChangeLog.Oct2014 +++ b/buildtools/ChangeLog.Oct2014 @@ -1,8 +1,3 @@ # ChangeLog file for buildtools # This file is updated with Maddlog -* Thu Apr 10 2014 Sjoerd Mullender <sjo...@acm.org> -- Jacqueline, the MonetDB/JAQL frontend, has been removed. The frontend - never grew beyond being experimental, and there is no interest anymore - to maintain the code. - diff --git a/clients/ChangeLog.Jan2014 b/clients/ChangeLog.Jan2014 deleted file mode 100644 --- a/clients/ChangeLog.Jan2014 +++ /dev/null @@ -1,3 +0,0 @@ -# ChangeLog file for clients -# This file is updated with Maddlog - 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 @@ -28,4 +28,6 @@ export(db_insert_into.MonetDBConnection) export(db_create_index.MonetDBConnection) export(db_analyze.MonetDBConnection) export(sql_subquery.MonetDBConnection) -export(monetdb_queryinfo) +export(monetdb_queryinfo) +export(sample_n.tbl_monetdb) +export(sample_frac.tbl_monetdb) 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,6 +1,7 @@ 0.9.6 - Fixed non-ASCII character handling (thanks, Roman!) - Fully removed C-based socket code +- support for dplyr verbs sample_n() and sample_frac() 0.9.5 - Removed package date (Thanks, Dimitar) 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 @@ -19,7 +19,7 @@ src_translate_env.src_monetdb <- functio } src_desc.src_monetdb <- function(x) { - paste0("MonetDB ",x$info$monet_version, " (",x$info$monet_release, ") [", x$info$merovingian_uri,"]") + paste0("MonetDB ",x$info$monet_version, " (",x$info$monet_release, ")") } tbl.src_monetdb <- function(src, from, ...) { @@ -27,6 +27,25 @@ tbl.src_monetdb <- function(src, from, . dplyr::tbl_sql("monetdb", src = src, from = from, ...) } +sample_n.tbl_monetdb <- function(x, size, replace = FALSE, weight = NULL) { + if (replace || !is.null(weight)) { + stop("Sorry, replace and weight are not supported for MonetDB tables. \ + Consider collect()'ing first.") + } + dbGetQuery(x$src$con, dplyr::build_sql(x$query$sql, " SAMPLE ", as.integer(size))) +} + +sample_frac.tbl_monetdb <- function(tbl, frac=1, replace = FALSE, weight = NULL) { + if (frac < 0 || frac > 1) { + stop("frac must be in [0,1]") + } + n <- as.integer(round(dim(tbl)[[1]] * frac)) + if (n < 1) { + stop("not sampling 0 rows...") + } + sample_n(tbl, n, replace, weight) +} + db_query_fields.MonetDBConnection <- function(con, sql, ...) { # prepare gives us column info without actually running a query. Nice. dbGetQuery(con, dplyr::build_sql("PREPARE SELECT * FROM ", sql))$column _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list