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#13340047 | marko.makela | 22 Nov |