Changeset: 2db119d675c8 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2db119d675c8 Modified Files: MonetDB5/src/optimizer/opt_mitosis.mx clients/debian/python-monetdb-client.install sql/src/backends/monet5/sql.mx Branch: default Log Message:
Merge with Oct2010 branch. diffs (110 lines): diff -r 5139a8cd3275 -r 2db119d675c8 MonetDB5/src/optimizer/opt_mitosis.mx --- a/MonetDB5/src/optimizer/opt_mitosis.mx Mon Nov 08 10:29:26 2010 +0100 +++ b/MonetDB5/src/optimizer/opt_mitosis.mx Mon Nov 08 17:17:13 2010 +0100 @@ -60,6 +60,7 @@ #include "opt_support.h" #define MAXSLICES 256 /* to be refined */ +#define MINPARTCNT 100000 /* minimal record count per partition */ @:exportOptimizer(mitosis)@ #define OPTDEBUGmitosis if ( optDebug & ((lng)1 <<DEBUG_OPT_MITOSIS) ) #endif @@ -150,14 +151,23 @@ if ( (i = OPTtarantulaAdviceInternal(mb,stk,p)) > 0 ) pieces = i; else { - pieces = (int) (rowcnt /PARTITION_THRESHOLD) + 1; + /* ensure that GDKnr_threads partitions fit into main memory */ + r = (BUN) (monet_memory / typewidth / GDKnr_threads); + if (rowcnt > r) + pieces = MAX ( (int)(rowcnt / r + 1) , GDKnr_threads ); + else + /* exploit parallelism, but ensure minimal partition size to limit overhead */ + if (rowcnt > MINPARTCNT) + pieces = MIN ( (int)(rowcnt / MINPARTCNT) , GDKnr_threads ); + /* when testing, split also small BATs, but avoid empty pieces */ FORCEMITODEBUG - if (pieces < GDKnr_threads ) - pieces = GDKnr_threads; /* split up anyway when testing */ + if (pieces < GDKnr_threads) + pieces = MIN ( GDKnr_threads , (int)rowcnt ); + /* prevent plan explosion */ if (pieces > MAXSLICES) - pieces = MAXSLICES; /* cut off potential plan explosion */ + pieces = MAXSLICES; - if ( (size_t) rowcnt < (size_t) pieces || pieces <=1) + if (pieces <= 1) return 0; } OPTDEBUGmitosis diff -r 5139a8cd3275 -r 2db119d675c8 clients/debian/control --- a/clients/debian/control Mon Nov 08 10:29:26 2010 +0100 +++ b/clients/debian/control Mon Nov 08 17:17:13 2010 +0100 @@ -2,7 +2,7 @@ Section: misc Priority: extra Maintainer: MonetDB BV <i...@monetdb.org> -Build-Depends: debhelper (>= 5), autotools-dev, libmonetdb-dev, libreadline5-dev, swig, cdbs, libssl-dev, perl, unixodbc-dev, libperl-dev, python, ruby, rubygems +Build-Depends: debhelper (>= 5), autotools-dev, libmonetdb-dev, libreadline5-dev, swig, cdbs, libssl-dev, perl, unixodbc-dev, libperl-dev, ruby, rubygems Package: monetdb-client Architecture: any @@ -73,17 +73,6 @@ . This package contains the PHP module for MonetDB. -Package: python-monetdb-client -Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, python -Description: MonetDB Python client module - MonetDB is a database management system that is developed from a - main-memory perspective with use of a fully decomposed storage model, - automatic index management, extensibility of data types and search - accelerators, SQL- and XML- frontends. - . - This package contains the Python module for MonetDB. - Package: libmonetdb-client-perl Architecture: any Depends: ${shlibs:Depends}, ${perl:Depends} diff -r 5139a8cd3275 -r 2db119d675c8 clients/debian/python-monetdb-client.install --- a/clients/debian/python-monetdb-client.install Mon Nov 08 10:29:26 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -debian/tmp/usr/lib/python* /usr/lib diff -r 5139a8cd3275 -r 2db119d675c8 clients/debian/rules --- a/clients/debian/rules Mon Nov 08 10:29:26 2010 +0100 +++ b/clients/debian/rules Mon Nov 08 17:17:13 2010 +0100 @@ -3,4 +3,4 @@ include /usr/share/cdbs/1/rules/debhelper.mk include /usr/share/cdbs/1/class/autotools.mk -DEB_CONFIGURE_EXTRA_FLAGS := --enable-strict=no --enable-assert=no --enable-debug=no --enable-optimize=yes --with-python-libdir=/usr/lib/python2.5/site-packages +DEB_CONFIGURE_EXTRA_FLAGS := --enable-strict=no --enable-assert=no --enable-debug=no --enable-optimize=yes diff -r 5139a8cd3275 -r 2db119d675c8 java/ChangeLog.Oct2010 --- a/java/ChangeLog.Oct2010 Mon Nov 08 10:29:26 2010 +0100 +++ b/java/ChangeLog.Oct2010 Mon Nov 08 17:17:13 2010 +0100 @@ -1,3 +1,8 @@ # ChangeLog file for java # This file is updated with mchangelog (Gentoo echangelog bastard script) +* Mon Nov 8 2010 Fabian Groffen <fab...@cwi.nl> +- Java 1.6's subSequence() bug has changed into a slice() bug since + 1.6.0_22. Revert workaround for subSequence breakage, since it breaks + operating with the latest Java 1.6. + diff -r 5139a8cd3275 -r 2db119d675c8 java/src/nl/cwi/monetdb/mcl/parser/StartOfHeaderParser.java --- a/java/src/nl/cwi/monetdb/mcl/parser/StartOfHeaderParser.java Mon Nov 08 10:29:26 2010 +0100 +++ b/java/src/nl/cwi/monetdb/mcl/parser/StartOfHeaderParser.java Mon Nov 08 17:17:13 2010 +0100 @@ -144,9 +144,6 @@ soh.reset(); - /* FIXME: slice() is only here to provide a workaround for a Sun-1.6 bug - see: http://bugs.sun.com/view_bug.do?bug_id=6795561 - As soon as this bug is fixed, the slice should be removed again. */ - return(soh.slice().subSequence(0, cnt).toString()); + return(soh.subSequence(0, cnt).toString()); } } _______________________________________________ Checkin-list mailing list Checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list