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 <[email protected]>
-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 <[email protected]>
+- 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
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list