Changeset: a7b901ee13f2 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a7b901ee13f2
Added Files:
        clients/R/Tests/deps-install.timeout
Modified Files:
        clients/R/Tests/dbapply.R
        clients/R/Tests/deps-install.R
        clients/R/Tests/deps-test.R
        clients/R/Tests/deps-test.timeout
        clients/R/Tests/dplyr-flights.R
        clients/R/Tests/dplyr-flights.stable.err
        clients/R/Tests/install.R
        sql/server/rel_updates.c
        sql/storage/store.c
        sql/test/Tests/seq-default.stable.out
        sql/test/seq-default.sql
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.powerpc64.int128
Branch: default
Log Message:

Merge with Aug2018


diffs (255 lines):

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,3 +1,5 @@
+cat("#~BeginProfilingOutput~#\n", file=stderr())
+
 if (Sys.getenv("TSTTRGDIR") != "") {
        .libPaths(c(.libPaths(), paste0(Sys.getenv("TSTTRGDIR"),"/rlibdir")))
 }
@@ -81,4 +83,6 @@ print(res)
 dbRemoveTable(con,tname)
 stopifnot(identical(FALSE, dbExistsTable(con,tname)))
 
+cat("#~EndProfilingOutput~#\n", file=stderr())
+
 print("SUCCESS")
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
@@ -1,6 +1,6 @@
 # autoinstall DBI and digest, we need those to install MonetDB.R
 options(warn = -1)
-packages_required <- c("digest", "DBI")
+packages_required <- c("digest", "DBI", "devtools")
 
 cat("#~BeginProfilingOutput~#\n", file=stderr())
 cat("#~BeginProfilingOutput~#\n", file=stdout())
diff --git a/clients/R/Tests/deps-install.timeout 
b/clients/R/Tests/deps-install.timeout
new file mode 100644
--- /dev/null
+++ b/clients/R/Tests/deps-install.timeout
@@ -0,0 +1,1 @@
+2
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
@@ -1,4 +1,4 @@
-packages_required <- 
c("assertthat","testthat","survey","nycflights13","RSQLite","dbplyr","dplyr","gdata","callr","devtools","DBItest")
+packages_required <- 
c("assertthat","testthat","survey","nycflights13","RSQLite","dbplyr","dplyr","gdata","callr","DBItest")
 
 install_or_upgrade_packages <- function(lp) {
        np <- lp[!(lp %in% installed.packages()[,"Package"])]
diff --git a/clients/R/Tests/deps-test.timeout 
b/clients/R/Tests/deps-test.timeout
--- a/clients/R/Tests/deps-test.timeout
+++ b/clients/R/Tests/deps-test.timeout
@@ -1,1 +1,1 @@
-5
+20
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
@@ -1,3 +1,5 @@
+cat("#~BeginProfilingOutput~#\n", file=stderr())
+
 ff <- textConnection("asdf", open="w")
 # hide output from connect and attach since it would blow up the test output
 # dangerous since it might hide useful warnings
@@ -118,5 +120,6 @@ so(flights %>%
   ) %>%
   filter(arr > 30 | dep > 30))
 
+cat("#~EndProfilingOutput~#\n", file=stderr())
 
 print("SUCCESS")
diff --git a/clients/R/Tests/dplyr-flights.stable.err 
b/clients/R/Tests/dplyr-flights.stable.err
--- a/clients/R/Tests/dplyr-flights.stable.err
+++ b/clients/R/Tests/dplyr-flights.stable.err
@@ -30,7 +30,6 @@ stderr of test 'dplyr-flights` in direct
 # 11:44:05 >  "R" "--vanilla" "--slave" "--args" "30588"
 # 11:44:05 >  
 
-Identifier(s) "year", "month", "day", "hour", "minute" are reserved SQL 
keywords and need(s) to be quoted in queries.
 
 # 11:44:15 >  
 # 11:44:15 >  "Done."
diff --git a/clients/R/Tests/install.R b/clients/R/Tests/install.R
--- a/clients/R/Tests/install.R
+++ b/clients/R/Tests/install.R
@@ -2,13 +2,7 @@ options(warn = -1)
 cat("#~BeginProfilingOutput~#\n", file=stderr())
 cat("#~BeginProfilingOutput~#\n", file=stdout())
 
-install_submodule_git <- function(x, ...) {
-  install_dir <- tempfile()
-  system(paste("git clone --recursive --depth 1", shQuote(x), 
-shQuote(install_dir)))
-  devtools::install(install_dir, ...)
-}
-install_submodule_git("https://github.com/hannesmuehleisen/MonetDBLite-R";)
+devtools::install_github("hannesmuehleisen/MonetDBLite-R")
 
 cat("#~EndProfilingOutput~#\n", file=stderr())
 cat("#~EndProfilingOutput~#\n", file=stdout())
diff --git a/sql/server/rel_updates.c b/sql/server/rel_updates.c
--- a/sql/server/rel_updates.c
+++ b/sql/server/rel_updates.c
@@ -32,7 +32,7 @@ insert_value(mvc *sql, sql_column *c, sq
                        e = rel_parse_val(sql, sa_message(sql->sa, "select 
cast(%s as %s);", c->def, typestr), sql->emode, NULL);
                        _DELETE(typestr);
                        if (!e || (e = rel_check_type(sql, &c->type, e, 
type_equal)) == NULL)
-                               return NULL;
+                               return sql_error(sql, 02, SQLSTATE(HY005) 
"INSERT INTO: default expression could not be evaluated");
                        return e;
                } else {
                        return sql_error(sql, 02, SQLSTATE(42000) "INSERT INTO: 
column '%s' has no valid default value", c->base.name);
@@ -363,7 +363,7 @@ rel_inserts(mvc *sql, sql_table *t, sql_
                                                        _DELETE(typestr);
                                                        e = rel_parse_val(sql, 
q, sql->emode, NULL);
                                                        if (!e || (e = 
rel_check_type(sql, &c->type, e, type_equal)) == NULL)
-                                                               return NULL;
+                                                               return 
sql_error(sql, 02, SQLSTATE(HY005) "INSERT INTO: default expression could not 
be evaluated");
                                                } else {
                                                        atom *a = 
atom_general(sql->sa, &c->type, NULL);
                                                        e = exp_atom(sql->sa, 
a);
@@ -575,6 +575,8 @@ insert_into(mvc *sql, dlist *qname, dlis
                return sql_error(sql, 02, SQLSTATE(21S01) "INSERT INTO: query 
result doesn't match number of columns in table '%s'", tname);
 
        r->exps = rel_inserts(sql, t, r, collist, rowcount, 0);
+       if(!r->exps)
+               return NULL;
        return rel_insert_table(sql, t, tname, r);
 }
 
@@ -1557,8 +1559,11 @@ copyfrom(mvc *sql, dlist *qname, dlist *
                return rel;
        if (reorder) 
                rel = rel_project(sql->sa, rel, rel_inserts(sql, t, rel, 
collist, 1, 1));
-       else
+       else {
                rel->exps = rel_inserts(sql, t, rel, collist, 1, 0);
+               if(!rel->exps)
+                       return NULL;
+       }
        rel = rel_insert_table(sql, t, tname, rel);
        if (rel && locked)
                rel->flag |= UPD_LOCKED;
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -4033,10 +4033,11 @@ sql_trans_drop_all_dependencies(sql_tran
                                                        (void) 
sql_trans_drop_table(tr, s, dep_id, DROP_CASCADE);
                                                        break;
                                case COLUMN_DEPENDENCY :
-                                                       t_id = 
sql_trans_get_dependency_type(tr, dep_id, TABLE_DEPENDENCY);
-                                                       t = 
find_sql_table_id(s, t_id);
-                                                       (void) 
sql_trans_drop_column(tr, t, dep_id, DROP_CASCADE);
-                                                       t = NULL;
+                                                       if((t_id = 
sql_trans_get_dependency_type(tr, dep_id, TABLE_DEPENDENCY)) > 0) {
+                                                               t = 
find_sql_table_id(s, t_id);
+                                                               (void) 
sql_trans_drop_column(tr, t, dep_id, DROP_CASCADE);
+                                                               t = NULL;
+                                                       }
                                                        break;
                                case VIEW_DEPENDENCY :
                                                        (void) 
sql_trans_drop_table(tr, s, dep_id, DROP_CASCADE );
@@ -4267,8 +4268,8 @@ sys_drop_column(sql_trans *tr, sql_colum
                seq_name[strlen(seq_name)-1] = '\0';
                n = cs_find_name(&syss->seqs, seq_name);
                seq = find_sql_sequence(syss, seq_name);
-               if (seq && sql_trans_get_dependency_type(tr, seq->base.id, 
BEDROPPED_DEPENDENCY)) {
-                       sys_drop_sequence(tr, seq, drop_action);                
+               if (seq && sql_trans_get_dependency_type(tr, seq->base.id, 
BEDROPPED_DEPENDENCY) > 0) {
+                       sys_drop_sequence(tr, seq, drop_action);
                        seq->base.wtime = syss->base.wtime = tr->wtime = 
tr->wstime;
                        cs_del(&syss->seqs, n, seq->base.flag);
                }
diff --git a/sql/test/Tests/seq-default.stable.out 
b/sql/test/Tests/seq-default.stable.out
--- a/sql/test/Tests/seq-default.stable.out
+++ b/sql/test/Tests/seq-default.stable.out
@@ -36,8 +36,6 @@ Ready.
 [ 2005-09-23 12:34:26.736000,  4       ]
 [ 2005-09-23 12:34:26.736000,  5       ]
 [ 2005-09-23 12:34:26.736000,  6       ]
-TABLE     sys.seqdeftest
-SEQUENCE  sys.test_seq
 #drop table seqdeftest;
 #drop sequence test_seq;
 #create table seqdeftest (
@@ -68,10 +66,6 @@ SEQUENCE  sys.test_seq
 [ 2005-10-01,  4,      4,      106     ]
 [ 2005-10-01,  5,      5,      108     ]
 [ 2005-10-01,  6,      6,      110     ]
-SEQUENCE  sys.seq_8499
-SEQUENCE  sys.seq_8501
-SEQUENCE  sys.seq_8503
-TABLE     sys.seqdeftest
 #drop table seqdeftest;
 #CREATE SEQUENCE seq_5700 AS INTEGER;
 #CREATE TABLE kvk (
@@ -108,9 +102,6 @@ TABLE     sys.seqdeftest
 % 1,   1,      5 # length
 [ 3,   3,      "dries" ]
 [ 4,   4,      "viers" ]
-TABLE     sys.kvk
-TABLE     sys.kvk_cp
-SEQUENCE  sys.seq_5700
 #drop TABLE kvk;
 #insert into kvk_cp(kvk, bedrijfsnaam) values (5, 'vijfs');
 [ 1    ]
@@ -122,10 +113,7 @@ SEQUENCE  sys.seq_5700
 [ 3,   3,      "dries" ]
 [ 4,   4,      "viers" ]
 [ 5,   5,      "vijfs" ]
-TABLE     sys.kvk_cp
-SEQUENCE  sys.seq_5700
 #drop TABLE kvk_cp;
-SEQUENCE  sys.seq_5700
 #drop SEQUENCE seq_5700;
 #ROLLBACK;
 
diff --git a/sql/test/seq-default.sql b/sql/test/seq-default.sql
--- a/sql/test/seq-default.sql
+++ b/sql/test/seq-default.sql
@@ -10,12 +10,9 @@ insert into seqdeftest(ts) values ('2005
 insert into seqdeftest(ts) values ('2005-09-23 12:34:26.736');
 select * from seqdeftest;
 
-\dts
-
 drop table seqdeftest;
 drop sequence test_seq;
 
-
 create table seqdeftest (
        d date,
        id serial,
@@ -32,11 +29,8 @@ insert into seqdeftest(d) values ('2005-
 insert into seqdeftest(d) values ('2005-10-01');
 select * from seqdeftest;
 
-\dts
-
 drop table seqdeftest;
 
-
 -- create a user created sequence with name pattern 'seq_####' similar to the 
system generated sequences as in the above table seqdeftest
 CREATE SEQUENCE seq_5700 AS INTEGER;
 CREATE TABLE kvk (
@@ -60,8 +54,6 @@ insert into kvk_cp(kvk, bedrijfsnaam) va
 insert into kvk_cp(kvk, bedrijfsnaam) values (4, 'viers');
 select * from kvk_cp;
 
-\dts
-
 -- when dropping the tables the user defined sequence should *not* be dropped 
implicitly
 drop TABLE kvk;
 
@@ -70,7 +62,6 @@ select * from kvk_cp;
 drop TABLE kvk_cp;
 
 -- the user created sequence should not have been implicitly dropped at this 
point
-\dts
 drop SEQUENCE seq_5700;
 
 ROLLBACK;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to