List:Commits« Previous MessageNext Message »
From:marko.makela Date:November 22 2011 11:24am
Subject:bzr push into mysql-5.5 branch (marko.makela:3623 to 3624) Bug#13340047
View as plain text  
 3624 Marko Mäkelä	2011-11-22
      Bug#13340047 LATCHING ORDER VIOLATION IN IBUF_SET_ENTRY_COUNTER() - cleanup
      
      Remove btr_cur_t::ibuf_cnt. The only dependence on cursor->ibuf_cnt
      was ibuf_set_entry_counter(). That code path was removed in the
      original bug fix (marko.makela@strippedkd).
      
      rb:819 approved by Jimmy Yang

    modified:
      storage/innobase/btr/btr0cur.c
      storage/innobase/include/btr0cur.h
 3623 Sneha Modi	2011-11-21
      Bug#11748731:SOME 'BIG' TESTS FAILING ON 6.0 
      
      A patch for alter_table-big.test has been committed earlier.
      This is a patch for create-big.test:
      The test used to time-out after 900 seconds. 
      It relied on debug sleeps that are no longer present in the 
      code. Since the sleeps are long gone, fixing the problem didn't 
      involve just updating the result file or using macro 
      "show_binlog_events2.inc" instead of "show binlog events" 
      statement. The test needed to be rewritten using debug sync 
      points, and result then needed to be updated.
      So, the sleeps have been replaced by debug_sync points and the test execution time has 
      been reduced significantly.

    modified:
      mysql-test/r/create-big.result
      mysql-test/t/create-big.test
      mysql-test/t/disabled.def
      sql/sql_insert.cc
      sql/sql_table.cc
=== modified file 'storage/innobase/btr/btr0cur.c'
--- a/storage/innobase/btr/btr0cur.c	revid:sneha.modi@strippedvoddbe9k1riwdy3a
+++ b/storage/innobase/btr/btr0cur.c	revid:marko.makela@strippedb
@@ -458,8 +458,6 @@ btr_cur_search_to_nth_level(
 	cursor->flag = BTR_CUR_BINARY;
 	cursor->index = index;
 
-	cursor->ibuf_cnt = ULINT_UNDEFINED;
-
 #ifndef BTR_CUR_ADAPT
 	guess = NULL;
 #else
@@ -747,21 +745,8 @@ retry_page_get:
 			/* We're doing a search on an ibuf tree and we're one
 			level above the leaf page. */
 
-			ulint	is_min_rec;
-
 			ut_ad(level == 0);
 
-			is_min_rec = rec_get_info_bits(node_ptr, 0)
-				& REC_INFO_MIN_REC_FLAG;
-
-			if (!is_min_rec) {
-				cursor->ibuf_cnt
-					= ibuf_rec_get_counter(node_ptr);
-
-				ut_a(cursor->ibuf_cnt <= 0xFFFF
-				     || cursor->ibuf_cnt == ULINT_UNDEFINED);
-			}
-
 			buf_mode = BUF_GET;
 			rw_latch = RW_NO_LATCH;
 			goto retry_page_get;

=== modified file 'storage/innobase/include/btr0cur.h'
--- a/storage/innobase/include/btr0cur.h	revid:sneha.modi@stripped8-voddbe9k1riwdy3a
+++ b/storage/innobase/include/btr0cur.h	revid:marko.makela@stripped1c8l6zb
@@ -743,24 +743,6 @@ struct btr_cur_struct {
 					NULL */
 	ulint		fold;		/*!< fold value used in the search if
 					flag is BTR_CUR_HASH */
-	/*----- Delete buffering -------*/
-	ulint		ibuf_cnt;	/* in searches done on insert buffer
-					trees, this contains the "counter"
-					value (the first two bytes of the
-					fourth field) extracted from the
-					page above the leaf page, from the
-					father node pointer that pointed to
-					the leaf page. in other words, it
-					contains the minimum counter value
-					for records to be inserted on the
-					chosen leaf page. If for some reason
-					this can't be read, or if the search
-					ended on the leftmost leaf page in
-					the tree (in which case the father
-					node pointer had the 'minimum
-					record' flag set), this is
-					ULINT_UNDEFINED. */
-	/*------------------------------*/
 	/* @} */
 	btr_path_t*	path_arr;	/*!< in estimating the number of
 					rows in range, we store in this array

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-5.5 branch (marko.makela:3623 to 3624) Bug#13340047marko.makela22 Nov