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

Reply via email to