summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVasil Dimov <vasil.dimov@oracle.com>2011-09-09 10:07:24 +0300
committerVasil Dimov <vasil.dimov@oracle.com>2011-09-09 10:07:24 +0300
commit13fefeb04ade34418cd9d99aa93bffb69fdae27e (patch)
tree9c5657d74bbc585ba30be7b3d61437d9b7162d60
parent8c545acd5367950d3d03590880781089040016e0 (diff)
downloadmariadb-git-13fefeb04ade34418cd9d99aa93bffb69fdae27e.tar.gz
Disable the prefetch code in the InnoDB internal SQL parser.
This change is a followup to vasil.dimov@oracle.com-20110907145810-v98kldmho23vhhic which triggered the usage of the prefetch and valgrind tests spat lots of warnings. The prefetch code will be removed. Discussed with: Marko (over IM)
-rw-r--r--storage/innodb_plugin/row/row0sel.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/storage/innodb_plugin/row/row0sel.c b/storage/innodb_plugin/row/row0sel.c
index 241584eaa20..aa3f6283c4f 100644
--- a/storage/innodb_plugin/row/row0sel.c
+++ b/storage/innodb_plugin/row/row0sel.c
@@ -63,7 +63,13 @@ Created 12/19/1997 Heikki Tuuri
/* Number of rows fetched, after which to start prefetching; MySQL interface
has another parameter */
-#define SEL_PREFETCH_LIMIT 1
+/* The prefetch code in the internal SQL is disabled because it has probably
+never been used and has been found to contain a memory leak and a bug of
+accessing uninitialized memory. Some simple performance tests show that
+disabling it makes no difference in performance. It will be removed, but
+until the removal happens we disable it by setting SEL_PREFETCH_LIMIT to a
+high value. */
+#define SEL_PREFETCH_LIMIT 1000000000
/* When a select has accessed about this many pages, it returns control back
to que_run_threads: this is to allow canceling runaway queries */