Changeset: ae9757d08db4 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ae9757d08db4 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 clients/mapilib/mapi.rc clients/odbc/driver/driver.rc clients/odbc/winsetup/setup.rc clients/python2/setup.py clients/python3/setup.py configure.ag debian/changelog gdk/ChangeLog-Archive gdk/ChangeLog.Feb2013 gdk/libbat.rc java/ChangeLog-Archive java/ChangeLog.Feb2013 libversions monetdb5/modules/mal/tablet.c monetdb5/tools/libmonetdb5.rc sql/backends/monet5/rel_bin.c sql/include/sql_relation.h sql/server/rel_updates.c sql/server/sql_parser.y sql/storage/bat/bat_storage.c sql/storage/bat/bat_storage.h vertoo.data Branch: default Log Message:
merge with default diffs (truncated from 519 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -523,3 +523,5 @@ df2cbb7845660d94dc484bab860b6893344be92a cb55e859a50e0d06a50cc9e4f6e377ddea7cc3aa Feb2013_7 df2cbb7845660d94dc484bab860b6893344be92a Feb2013_SP2_release e0139450d66e4fc02c7f5d1d9e6f92fc22d862df Feb2013_SP2_release +651ab160f8f9b591c0311d56e7a66e560390d2eb Feb2013_9 +b9ccba3754cda87e79cac9e5348e46f35a883845 Feb2013_SP3_release diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -27,7 +27,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/Feb2013-SP2/%{name}-%{version}.tar.bz2 +Source: http://dev.monetdb.org/downloads/sources/Feb2013-SP3/%{name}-%{version}.tar.bz2 BuildRequires: bison BuildRequires: bzip2-devel @@ -722,6 +722,24 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libmonet rm -fr $RPM_BUILD_ROOT %changelog +* Wed Jun 19 2013 Hannes Muehleisen <han...@cwi.nl> - 11.15.9-20130619 +- Rebuilt. + +* Sun Jun 9 2013 Fabian Groffen <fab...@monetdb.org> - 11.15.9-20130619 +- java: Further improved setBigDecimal() method, based on patch by Ben Reilly + in bug #3290 + +* Thu May 23 2013 Fabian Groffen <fab...@monetdb.org> - 11.15.9-20130619 +- java: Fixed bug where PreparedStatement.setBigDecimal() wouldn't format its + input well enough for the server causing odd errors. +- java: Allow PreparedStatement.setXXX() methods to be called with null + arguments, bug #3288 + +* Tue May 7 2013 Sjoerd Mullender <sjo...@acm.org> - 11.15.9-20130619 +- gdk: System calls to flush files to disks were added. This may cause + some slowdown, but it should provide better durability, especially + in the face of power failures. + * Fri Apr 26 2013 Sjoerd Mullender <sjo...@acm.org> - 11.15.7-20130426 - Rebuilt. diff --git a/debian/changelog b/debian/changelog --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,33 @@ +monetdb (11.15.9-20130619) unstable; urgency=low + + * Rebuilt. + + -- Hannes Muehleisen <han...@cwi.nl> Wed, 19 Jun 2013 15:21:39 +0200 + +monetdb (11.15.9-20130619) unstable; urgency=low + + * java: Further improved setBigDecimal() method, based on patch by Ben Reilly + in bug #3290 + + -- Fabian Groffen <fab...@monetdb.org> Sun, 9 Jun 2013 15:21:38 +0200 + +monetdb (11.15.9-20130619) unstable; urgency=low + + * java: Fixed bug where PreparedStatement.setBigDecimal() wouldn't format its + input well enough for the server causing odd errors. + * java: Allow PreparedStatement.setXXX() methods to be called with null + arguments, bug #3288 + + -- Fabian Groffen <fab...@monetdb.org> Thu, 23 May 2013 15:21:38 +0200 + +monetdb (11.15.9-20130619) unstable; urgency=low + + * gdk: System calls to flush files to disks were added. This may cause + some slowdown, but it should provide better durability, especially + in the face of power failures. + + -- Sjoerd Mullender <sjo...@acm.org> Tue, 7 May 2013 15:21:38 +0200 + monetdb (11.15.7-20130426) unstable; urgency=low * Rebuilt. diff --git a/gdk/ChangeLog-Archive b/gdk/ChangeLog-Archive --- a/gdk/ChangeLog-Archive +++ b/gdk/ChangeLog-Archive @@ -1,6 +1,11 @@ # DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY # This file contains past ChangeLog entries +* Tue May 7 2013 Sjoerd Mullender <sjo...@acm.org> - 11.15.9-20130619 +- System calls to flush files to disks were added. This may cause + some slowdown, but it should provide better durability, especially + in the face of power failures. + * Mon Apr 8 2013 Sjoerd Mullender <sjo...@acm.org> - 11.15.5-20130412 - Fixed a bug in case the candidate list is dense and completely outside the range of the bat being worked upon. diff --git a/gdk/ChangeLog.Feb2013 b/gdk/ChangeLog.Feb2013 --- a/gdk/ChangeLog.Feb2013 +++ b/gdk/ChangeLog.Feb2013 @@ -1,8 +1,3 @@ # ChangeLog file for MonetDB # This file is updated with Maddlog -* Tue May 7 2013 Sjoerd Mullender <sjo...@acm.org> -- System calls to flush files to disks were added. This may cause - some slowdown, but it should provide better durability, especially - in the face of power failures. - diff --git a/java/ChangeLog-Archive b/java/ChangeLog-Archive --- a/java/ChangeLog-Archive +++ b/java/ChangeLog-Archive @@ -1,6 +1,16 @@ # DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY # This file contains past ChangeLog entries +* Sun Jun 9 2013 Fabian Groffen <fab...@monetdb.org> - 11.15.9-20130619 +- Further improved setBigDecimal() method, based on patch by Ben Reilly + in bug #3290 + +* Thu May 23 2013 Fabian Groffen <fab...@monetdb.org> - 11.15.9-20130619 +- Fixed bug where PreparedStatement.setBigDecimal() wouldn't format its + input well enough for the server causing odd errors. +- Allow PreparedStatement.setXXX() methods to be called with null + arguments, bug #3288 + * Thu Apr 11 2013 Sjoerd Mullender <sjo...@acm.org> - 11.15.5-20130412 - The pre-compiled .jar files are now created using Java 7 instead of Java 6. diff --git a/java/ChangeLog.Feb2013 b/java/ChangeLog.Feb2013 --- a/java/ChangeLog.Feb2013 +++ b/java/ChangeLog.Feb2013 @@ -1,13 +1,3 @@ # ChangeLog file for java # This file is updated with Maddlog -* Sun Jun 9 2013 Fabian Groffen <fab...@monetdb.org> -- Further improved setBigDecimal() method, based on patch by Ben Reilly - in bug #3290 - -* Thu May 23 2013 Fabian Groffen <fab...@monetdb.org> -- Fixed bug where PreparedStatement.setBigDecimal() wouldn't format its - input well enough for the server causing odd errors. -- Allow PreparedStatement.setXXX() methods to be called with null - arguments, bug #3288 - 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=9:3:0 +GDK_VERSION=9:4:0 # version of the MAPI library (subdirectory clients/mapilib) MAPI_VERSION=6:5:0 # version of the MONETDB5 library (subdirectory monetdb5, not including extras) -MONETDB5_VERSION=14:3:0 +MONETDB5_VERSION=14:4:0 # version of the STREAM library (subdirectory common/stream) -STREAM_VERSION=4:5:1 +STREAM_VERSION=4:6:1 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 @@ -1341,6 +1341,8 @@ SQLloader(void *p) } } +#define MAXWORKERS 64 + BUN SQLload_file(Client cntxt, Tablet *as, bstream *b, stream *out, char *csep, char *rsep, char quote, lng skip, lng maxrow) { @@ -1351,13 +1353,13 @@ SQLload_file(Client cntxt, Tablet *as, b BUN i; size_t rseplen; READERtask *task = (READERtask *) GDKzalloc(sizeof(READERtask)); - READERtask ptask[16]; - int threads = (!maxrow || maxrow > (1 << 16)) ? (GDKnr_threads < 16 ? GDKnr_threads : 16) : 1; + READERtask ptask[MAXWORKERS]; + int threads = (!maxrow || maxrow > (1 << 16)) ? (GDKnr_threads < MAXWORKERS ? GDKnr_threads : MAXWORKERS) : 1; lng lio = 0, tio, t1 = 0, total = 0, iototal = 0; int vmtrim = GDK_vm_trim; str msg = MAL_SUCCEED; - for (i = 0; i < 16; i++) + for (i = 0; i < MAXWORKERS; i++) ptask[i].cols = 0; if (task == 0) { @@ -1524,7 +1526,7 @@ SQLload_file(Client cntxt, Tablet *as, b * In the first phase we simply break the lines at the * record boundary. */ if (quote == 0) { - if (rseplen == 1) + if (rseplen == 1) { for (; *e; e++) { if (*e == '\\') { e++; @@ -1532,7 +1534,17 @@ SQLload_file(Client cntxt, Tablet *as, b } if (*e == *rsep) break; - } else + } + } else if (rseplen == 2) { + for (; *e; e++) { + if (*e == '\\') { + e++; + continue; + } + if (*e == *rsep && e[1] == rsep[1]) + break; + } + } else { for (; *e; e++) { if (*e == '\\') { e++; @@ -1541,6 +1553,7 @@ SQLload_file(Client cntxt, Tablet *as, b if (*e == *rsep && strncmp(e, rsep, rseplen) == 0) break; } + } if (*e == 0) e = 0; /* nonterminated record, we need more */ } else if (rseplen == 1) { @@ -1557,6 +1570,20 @@ SQLload_file(Client cntxt, Tablet *as, b } if (*e == 0) e = 0; /* nonterminated record, we need more */ + } else if (rseplen == 2) { + for (; *e; e++) { + if (*e == q) + q = 0; + else if (*e == quote) + q = *e; + else if (*e == '\\') { + if (e[1]) + e++; + } else if (!q && e[0] == rsep[0] && e[1] == rsep[1]) + break; + } + if (*e == 0) + e = 0; /* nonterminated record, we need more */ } else { for (; *e; e++) { if (*e == q) @@ -1728,7 +1755,7 @@ SQLload_file(Client cntxt, Tablet *as, b GDKfree(task->base); GDKfree(task); } - for (i = 0; i < 16; i++) + for (i = 0; i < MAXWORKERS; i++) if (ptask[i].cols) GDKfree(ptask[i].cols); #ifdef MLOCK_TST diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c --- a/sql/backends/monet5/rel_bin.c +++ b/sql/backends/monet5/rel_bin.c @@ -2976,11 +2976,13 @@ rel2bin_insert( mvc *sql, sql_rel *rel, { list *newl, *l; stmt *inserts = NULL, *insert = NULL, *s, *ddl = NULL, *pin = NULL; - int idx_ins = 0; + int idx_ins = 0, constraint = 1; node *n, *m; sql_rel *tr = rel->l, *prel = rel->r; sql_table *t = NULL; + if ((rel->flag&UPD_NO_CONSTRAINT)) + constraint = 0; if ((rel->flag&UPD_COMP)) { /* special case ! */ idx_ins = 1; prel = rel->l; @@ -3027,7 +3029,7 @@ rel2bin_insert( mvc *sql, sql_rel *rel, if ((hash_index(i->type) && list_length(i->columns) <= 1) || i->type == no_idx) is = NULL; - if (i->key) { + if (i->key && constraint) { stmt *ckeys = sql_insert_key(sql, newl, i->key, is, pin); list_prepend(l, ckeys); @@ -3045,7 +3047,8 @@ rel2bin_insert( mvc *sql, sql_rel *rel, return NULL; l = list_append(l, stmt_list(sql->sa, newl)); - sql_insert_check_null(sql, t, newl, l); + if (constraint) + sql_insert_check_null(sql, t, newl, l); if (!sql_insert_triggers(sql, t, l)) return sql_error(sql, 02, "INSERT INTO: triggers failed for table '%s'", t->base.name); if (insert->op1->nrcols == 0) { diff --git a/sql/include/sql_relation.h b/sql/include/sql_relation.h _______________________________________________ checkin-list mailing list checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list