List:Commits« Previous MessageNext Message »
From:vasil.dimov Date:October 26 2010 6:22am
Subject:bzr push into mysql-next-mr-innodb branch (vasil.dimov:3266)
View as plain text  
 3266 Vasil Dimov	2010-10-26 [merge]
      Merge mysql-next-mr-innodb from bk-internal to my local repo

    modified:
      mysql-test/suite/innodb/r/innodb_monitor.result
      storage/innobase/dict/dict0dict.c
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/handler/ha_innodb.h
      storage/innobase/include/dict0dict.h
      storage/innobase/include/dict0dict.ic
      storage/innobase/include/ha_prototypes.h
      storage/innobase/include/row0mysql.h
      storage/innobase/include/sync0sync.h
      storage/innobase/row/row0mysql.c
      storage/innobase/row/row0sel.c
      storage/innobase/srv/srv0mon.c
      storage/innobase/srv/srv0srv.c
      storage/innobase/srv/srv0start.c
=== modified file 'storage/innobase/dict/dict0stats.c'
--- a/storage/innobase/dict/dict0stats.c	revid:marko.makela@stripped
+++ b/storage/innobase/dict/dict0stats.c	revid:vasil.dimov@stripped
@@ -966,13 +966,13 @@ dict_stats_analyze_index_for_n_prefix(
 	}
 
 	last_idx_on_level = *(ib_uint64_t*) dyn_array_get_element(boundaries,
-		(n_diff_for_this_prefix - 1) * sizeof(ib_uint64_t));
+		(ulint) ((n_diff_for_this_prefix - 1) * sizeof(ib_uint64_t)));
 
 	rec_idx = 0;
 
 	n_diff_sum_of_all_analyzed_pages = 0;
 
-	n_recs_to_dive_below = ut_min(srv_stats_persistent_sample_pages,
+	n_recs_to_dive_below = UT_MIN(srv_stats_persistent_sample_pages,
 				      n_diff_for_this_prefix);
 
 	for (i = 0; i < n_recs_to_dive_below; i++) {
@@ -1019,10 +1019,11 @@ dict_stats_analyze_index_for_n_prefix(
 		/* we do not pass (left, right) because we do not want to ask
 		ut_rnd_interval() to work with too big numbers since
 		ib_uint64_t could be bigger than ulint */
-		rnd = ut_rnd_interval(0, right - left);
+		rnd = ut_rnd_interval(0, (ulint) (right - left));
 
 		dive_below_idx = *(ib_uint64_t*) dyn_array_get_element(
-			boundaries, (left + rnd) * sizeof(ib_uint64_t));
+			boundaries, (ulint) ((left + rnd)
+					     * sizeof(ib_uint64_t)));
 
 #if 0
 		DEBUG_PRINTF("    %s(): dive below rec_idx=%llu\n",
@@ -1905,10 +1906,10 @@ dict_stats_fetch_index_stats_step(
 #define PFX	"n_diff_pfx"
 
 	if (strncasecmp("size", stat_name, stat_name_len) == 0) {
-		index->stat_index_size = stat_value;
+		index->stat_index_size = (ulint) stat_value;
 	} else if (strncasecmp("n_leaf_pages", stat_name, stat_name_len)
 		   == 0) {
-		index->stat_n_leaf_pages = stat_value;
+		index->stat_n_leaf_pages = (ulint) stat_value;
 	} else if (strncasecmp(PFX, stat_name,
 			       ut_min(strlen(PFX), stat_name_len)) == 0) {
 

=== modified file 'storage/innobase/include/ut0ut.h'
--- a/storage/innobase/include/ut0ut.h	revid:marko.makela@stripped
+++ b/storage/innobase/include/ut0ut.h	revid:vasil.dimov@stripped
@@ -94,6 +94,10 @@ do {								\
 } while (0)
 #endif /* !UNIV_HOTBACKUP */
 
+/* beware of possible side effects like UT_MIN(x, y++); */
+#define UT_MIN(a, b)	((a) < (b) ? (a) : (b))
+#define UT_MAX(a, b)	((a) > (b) ? (a) : (b))
+
 /********************************************************//**
 Gets the high 32 bits in a ulint. That is makes a shift >> 32,
 but since there seem to be compiler bugs in both gcc and Visual C++,

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-next-mr-innodb branch (vasil.dimov:3266) vasil.dimov26 Oct