packages: mysql/bug45702.patch, mysql/bug580324.patch, mysql/bug860910.patc...

arekm arekm at pld-linux.org
Thu Dec 22 22:04:30 CET 2011


Author: arekm                        Date: Thu Dec 22 21:04:30 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- up to 5.5.18

---- Files affected:
packages/mysql:
   bug45702.patch (1.2 -> 1.3) , bug580324.patch (1.5 -> 1.6) , bug860910.patch (1.2 -> 1.3) , file-contents.patch (1.2 -> 1.3) , innodb_adaptive_hash_index_partitions.patch (1.9 -> 1.10) , innodb_admin_command_base.patch (1.8 -> 1.9) , innodb_buffer_pool_pages_i_s.patch (1.9 -> 1.10) , innodb_buffer_pool_shm.patch (1.9 -> 1.10) , innodb_dict_size_limit.patch (1.7 -> 1.8) , innodb_expand_fast_index_creation.patch (1.4 -> 1.5) , innodb_expand_import.patch (1.8 -> 1.9) , innodb_extend_slow.patch (1.9 -> 1.10) , innodb_extra_rseg.patch (1.7 -> 1.8) , innodb_fake_changes.patch (1.2 -> 1.3) , innodb_fast_checksum.patch (1.8 -> 1.9) , innodb_files_extend.patch (1.8 -> 1.9) , innodb_fix_misc.patch (1.10 -> 1.11) , innodb_io_patches.patch (1.8 -> 1.9) , innodb_opt_lru_count.patch (1.6 -> 1.7) , innodb_overwrite_relay_log_info.patch (1.8 -> 1.9) , innodb_pass_corrupt_table.patch (1.10 -> 1.11) , innodb_separate_doublewrite.patch (1.11 -> 1.12) , innodb_show_lock_name.patch (1.7 -> 1.8) , innodb_show_status.patch (1.7 -> 1.8) , innodb_show_status_extend.patch (1.8 -> 1.9) , innodb_show_sys_tables.patch (1.8 -> 1.9) , innodb_split_buf_pool_mutex.patch (1.8 -> 1.9) , innodb_stats.patch (1.8 -> 1.9) , innodb_thread_concurrency_timer_based.patch (1.7 -> 1.8) , log_warnings_suppress.patch (1.7 -> 1.8) , memory_dynamic_rows.patch (1.3 -> 1.4) , mysql.spec (1.562 -> 1.563) , processlist_row_stats.patch (1.5 -> 1.6) , query_cache_enhance.patch (1.10 -> 1.11) , response_time_distribution.patch (1.9 -> 1.10) , show_slave_status_nolock.patch (1.8 -> 1.9) , show_temp.patch (1.8 -> 1.9) , slow_extended.patch (1.10 -> 1.11) , sql_no_fcache.patch (1.8 -> 1.9) , subunit.patch (1.2 -> 1.3) , userstat.patch (1.9 -> 1.10) , group_commit.patch (NONE -> 1.1)  (NEW), warning_fixes.patch (1.1 -> 1.2) 

---- Diffs:

================================================================
Index: packages/mysql/bug45702.patch
diff -u packages/mysql/bug45702.patch:1.2 packages/mysql/bug45702.patch:1.3
--- packages/mysql/bug45702.patch:1.2	Sat Nov 19 16:13:38 2011
+++ packages/mysql/bug45702.patch	Thu Dec 22 22:04:22 2011
@@ -640,7 +640,7 @@
 +DROP TABLE t1;
 --- a/sql/opt_range.cc
 +++ b/sql/opt_range.cc
-@@ -11716,7 +11716,7 @@
+@@ -11728,7 +11728,7 @@
    }
    if (min_max_ranges.elements > 0)
    {

================================================================
Index: packages/mysql/bug580324.patch
diff -u packages/mysql/bug580324.patch:1.5 packages/mysql/bug580324.patch:1.6
--- packages/mysql/bug580324.patch:1.5	Sat Nov 19 16:13:38 2011
+++ packages/mysql/bug580324.patch	Thu Dec 22 22:04:22 2011
@@ -24,7 +24,7 @@
      int4store(key + key_length, thd->server_id);
 --- a/sql/sql_parse.cc
 +++ b/sql/sql_parse.cc
-@@ -1113,11 +1113,18 @@
+@@ -1116,11 +1116,18 @@
      break;
  #else
    {
@@ -44,7 +44,7 @@
      /*
        SHOW statements should not add the used tables to the list of tables
        used in a transaction.
-@@ -1130,24 +1137,23 @@
+@@ -1133,24 +1140,23 @@
      /*
        We have name + wildcard in packet, separated by endzero
      */
@@ -81,7 +81,7 @@
      mysql_reset_thd_for_next_command(thd);
      lex_start(thd);
      /* Must be before we init the table list. */
-@@ -1172,9 +1178,6 @@
+@@ -1175,9 +1181,6 @@
          table_list.schema_table= schema_table;
      }
  

================================================================
Index: packages/mysql/bug860910.patch
diff -u packages/mysql/bug860910.patch:1.2 packages/mysql/bug860910.patch:1.3
--- packages/mysql/bug860910.patch:1.2	Sat Nov 19 16:13:38 2011
+++ packages/mysql/bug860910.patch	Thu Dec 22 22:04:22 2011
@@ -77,7 +77,7 @@
 +--source include/rpl_end.inc
 --- a/sql/log.cc
 +++ b/sql/log.cc
-@@ -5090,6 +5090,12 @@
+@@ -5079,6 +5079,12 @@
                                   user_var_event->type,
                                   user_var_event->charset_number,
                                   flags);

================================================================
Index: packages/mysql/file-contents.patch
diff -u packages/mysql/file-contents.patch:1.2 packages/mysql/file-contents.patch:1.3
--- packages/mysql/file-contents.patch:1.2	Thu Aug 25 12:08:46 2011
+++ packages/mysql/file-contents.patch	Thu Dec 22 22:04:22 2011
@@ -1,7 +1,7 @@
 --- a/mysql-test/t/file_contents.test
 +++ b/mysql-test/t/file_contents.test
 @@ -20,7 +20,7 @@
-     $dir_docs = "$dir_docs/packages/MySQL-server";
+     $dir_docs = glob "$dir_docs/packages/MySQL-server*";
    } else {
      # RedHat: version number in directory name
 -    $dir_docs = glob "$dir_docs/MySQL-server*";
@@ -10,9 +10,9 @@
  } elsif ($dir_bin =~ m|/usr$|) {
    # RPM build during development
 @@ -28,9 +28,12 @@
-   if(-d "$dir_docs/packages/MySQL-server") {
-     # SuSE
-     $dir_docs = "$dir_docs/packages/MySQL-server";
+   if(-d "$dir_docs/packages") {
+     # SuSE: "packages/" in the documentation path
+     $dir_docs = glob "$dir_docs/packages/MySQL-server*";
 +  } elsif (glob "$dir_docs/percona-server-server*") {
 +    # Debian
 +    $dir_docs = glob "$dir_docs/percona-server-server*";

================================================================
Index: packages/mysql/innodb_adaptive_hash_index_partitions.patch
diff -u packages/mysql/innodb_adaptive_hash_index_partitions.patch:1.9 packages/mysql/innodb_adaptive_hash_index_partitions.patch:1.10
--- packages/mysql/innodb_adaptive_hash_index_partitions.patch:1.9	Sat Nov 19 16:13:38 2011
+++ packages/mysql/innodb_adaptive_hash_index_partitions.patch	Thu Dec 22 22:04:22 2011
@@ -126,16 +126,16 @@
  	if (page_zip && !dict_index_is_clust(index)
 --- a/storage/innobase/btr/btr0sea.c
 +++ b/storage/innobase/btr/btr0sea.c
-@@ -48,6 +48,8 @@
+@@ -47,6 +47,8 @@
+ Protected by btr_search_latch. */
  UNIV_INTERN char		btr_search_enabled	= TRUE;
- UNIV_INTERN ibool		btr_search_fully_disabled = FALSE;
  
 +UNIV_INTERN ulint		btr_search_index_num	= 1;
 +
- /** Mutex protecting btr_search_enabled */
- static mutex_t			btr_search_enabled_mutex;
- 
-@@ -79,7 +81,9 @@
+ #ifdef UNIV_PFS_MUTEX
+ /* Key to register btr_search_enabled_mutex with performance schema */
+ UNIV_INTERN mysql_pfs_key_t	btr_search_enabled_mutex_key;
+@@ -75,7 +77,9 @@
  
  /* We will allocate the latch from dynamic memory to get it to the
  same DRAM page as other hotspot semaphores */
@@ -146,7 +146,7 @@
  
  /** padding to prevent other memory update hotspots from residing on
  the same memory cache line */
-@@ -131,18 +135,19 @@
+@@ -127,18 +131,19 @@
  will not guarantee success. */
  static
  void
@@ -170,7 +170,7 @@
  
  	heap = table->heap;
  
-@@ -153,7 +158,7 @@
+@@ -149,7 +154,7 @@
  	if (heap->free_block == NULL) {
  		buf_block_t*	block = buf_block_alloc(NULL);
  
@@ -179,7 +179,7 @@
  
  		if (heap->free_block == NULL) {
  			heap->free_block = block;
-@@ -161,7 +166,7 @@
+@@ -157,7 +162,7 @@
  			buf_block_free(block);
  		}
  
@@ -188,7 +188,7 @@
  	}
  }
  
-@@ -173,19 +178,30 @@
+@@ -169,17 +174,28 @@
  /*==================*/
  	ulint	hash_size)	/*!< in: hash index hash table size */
  {
@@ -203,8 +203,6 @@
 -		       SYNC_SEARCH_SYS);
 +	//rw_lock_create(btr_search_latch_key, &btr_search_latch,
 +	//	       SYNC_SEARCH_SYS);
- 	mutex_create(btr_search_enabled_mutex_key,
- 		     &btr_search_enabled_mutex, SYNC_SEARCH_SYS_CONF);
  
  	btr_search_sys = mem_alloc(sizeof(btr_search_sys_t));
  
@@ -223,7 +221,7 @@
  }
  
  /*****************************************************************//**
-@@ -195,11 +211,22 @@
+@@ -189,11 +205,22 @@
  btr_search_sys_free(void)
  /*=====================*/
  {
@@ -251,40 +249,49 @@
  	mem_free(btr_search_sys);
  	btr_search_sys = NULL;
  }
-@@ -212,7 +239,7 @@
+@@ -206,9 +233,10 @@
  /*====================*/
  {
- 	mutex_enter(&btr_search_enabled_mutex);
+ 	dict_table_t*	table;
++	ulint i;
+ 
+ 	mutex_enter(&dict_sys->mutex);
 -	rw_lock_x_lock(&btr_search_latch);
 +	btr_search_x_lock_all();
  
- 	/* Disable access to hash index, also tell ha_insert_for_fold()
- 	stop adding new nodes to hash index, but still allow updating
-@@ -230,7 +257,7 @@
- 	/* btr_search_enabled_mutex should guarantee this. */
- 	ut_ad(!btr_search_enabled);
+ 	btr_search_enabled = FALSE;
+ 
+@@ -232,10 +260,12 @@
+ 	buf_pool_clear_hash_index();
+ 
+ 	/* Clear the adaptive hash index. */
+-	hash_table_clear(btr_search_sys->hash_index);
+-	mem_heap_empty(btr_search_sys->hash_index->heap);
++	for (i = 0; i < btr_search_index_num; i++) {
++		hash_table_clear(btr_search_sys->hash_index[i]);
++		mem_heap_empty(btr_search_sys->hash_index[i]->heap);
++	}
  
 -	rw_lock_x_unlock(&btr_search_latch);
 +	btr_search_x_unlock_all();
- 	mutex_exit(&btr_search_enabled_mutex);
  }
  
-@@ -242,12 +269,12 @@
+ /********************************************************************//**
+@@ -245,11 +275,11 @@
+ btr_search_enable(void)
  /*====================*/
  {
- 	mutex_enter(&btr_search_enabled_mutex);
 -	rw_lock_x_lock(&btr_search_latch);
 +	btr_search_x_lock_all();
  
  	btr_search_enabled = TRUE;
- 	btr_search_fully_disabled = FALSE;
  
 -	rw_lock_x_unlock(&btr_search_latch);
 +	btr_search_x_unlock_all();
- 	mutex_exit(&btr_search_enabled_mutex);
  }
  
-@@ -300,20 +327,21 @@
+ /*****************************************************************//**
+@@ -301,20 +331,21 @@
  ulint
  btr_search_info_get_ref_count(
  /*==========================*/
@@ -311,7 +318,7 @@
  
  	return(ret);
  }
-@@ -334,8 +362,8 @@
+@@ -335,8 +366,8 @@
  	int		cmp;
  
  #ifdef UNIV_SYNC_DEBUG
@@ -322,7 +329,7 @@
  #endif /* UNIV_SYNC_DEBUG */
  
  	index = cursor->index;
-@@ -453,8 +481,8 @@
+@@ -454,8 +485,8 @@
  				/*!< in: cursor */
  {
  #ifdef UNIV_SYNC_DEBUG
@@ -333,7 +340,7 @@
  	ut_ad(rw_lock_own(&block->lock, RW_LOCK_SHARED)
  	      || rw_lock_own(&block->lock, RW_LOCK_EX));
  #endif /* UNIV_SYNC_DEBUG */
-@@ -538,7 +566,7 @@
+@@ -539,7 +570,7 @@
  
  	ut_ad(cursor->flag == BTR_CUR_HASH_FAIL);
  #ifdef UNIV_SYNC_DEBUG
@@ -342,7 +349,7 @@
  	ut_ad(rw_lock_own(&(block->lock), RW_LOCK_SHARED)
  	      || rw_lock_own(&(block->lock), RW_LOCK_EX));
  #endif /* UNIV_SYNC_DEBUG */
-@@ -578,10 +606,10 @@
+@@ -580,10 +611,10 @@
  			mem_heap_free(heap);
  		}
  #ifdef UNIV_SYNC_DEBUG
@@ -355,7 +362,7 @@
  				   block, rec);
  	}
  }
-@@ -601,8 +629,8 @@
+@@ -603,8 +634,8 @@
  	ulint*		params2;
  
  #ifdef UNIV_SYNC_DEBUG
@@ -366,7 +373,7 @@
  #endif /* UNIV_SYNC_DEBUG */
  
  	block = btr_cur_get_block(cursor);
-@@ -623,7 +651,7 @@
+@@ -625,7 +656,7 @@
  
  	if (build_index || (cursor->flag == BTR_CUR_HASH_FAIL)) {
  
@@ -375,7 +382,7 @@
  	}
  
  	if (cursor->flag == BTR_CUR_HASH_FAIL) {
-@@ -633,11 +661,11 @@
+@@ -635,11 +666,11 @@
  		btr_search_n_hash_fail++;
  #endif /* UNIV_SEARCH_PERF_STAT */
  
@@ -389,7 +396,7 @@
  	}
  
  	if (build_index) {
-@@ -882,17 +910,17 @@
+@@ -884,17 +915,17 @@
  	cursor->flag = BTR_CUR_HASH;
  
  	if (UNIV_LIKELY(!has_search_latch)) {
@@ -411,7 +418,7 @@
  
  	if (UNIV_UNLIKELY(!rec)) {
  		goto failure_unlock;
-@@ -910,7 +938,7 @@
+@@ -912,7 +943,7 @@
  			goto failure_unlock;
  		}
  
@@ -420,7 +427,7 @@
  
  		buf_block_dbg_add_level(block, SYNC_TREE_NODE_FROM_HASH);
  	}
-@@ -1007,7 +1035,7 @@
+@@ -1009,7 +1040,7 @@
  	/*-------------------------------------------*/
  failure_unlock:
  	if (UNIV_LIKELY(!has_search_latch)) {
@@ -429,7 +436,7 @@
  	}
  failure:
  	cursor->flag = BTR_CUR_HASH_FAIL;
-@@ -1030,10 +1058,11 @@
+@@ -1032,10 +1063,11 @@
  void
  btr_search_drop_page_hash_index(
  /*============================*/
@@ -442,7 +449,7 @@
  {
  	hash_table_t*		table;
  	ulint			n_fields;
-@@ -1052,22 +1081,60 @@
+@@ -1054,23 +1086,55 @@
  	ulint*			offsets;
  
  #ifdef UNIV_SYNC_DEBUG
@@ -456,16 +463,14 @@
  
  retry:
 -	rw_lock_s_lock(&btr_search_latch);
-+	if (index_in) {
-+		index = index_in;
-+		rw_lock_s_lock(btr_search_get_latch(index->id));
-+	} else if (btr_search_index_num > 1) {
+-	index = block->index;
++	if (btr_search_index_num > 1) {
 +		rw_lock_t*	btr_search_latch;
 +
 +		/* FIXME: This may be optimistic implementation still. */
 +		btr_search_latch = (rw_lock_t*)(block->btr_search_latch);
 +		if (UNIV_LIKELY(!btr_search_latch)) {
-+			if (block->is_hashed) {
++			if (block->index) {
 +				goto retry;
 +			}
 +			return;
@@ -475,7 +480,7 @@
 +			rw_lock_s_unlock(btr_search_latch);
 +			goto retry;
 +		}
-+		if (UNIV_LIKELY(!block->is_hashed)) {
++		if (UNIV_LIKELY(!block->index)) {
 +			rw_lock_s_unlock(btr_search_latch);
 +			goto retry;
 +		}
@@ -484,18 +489,16 @@
 +	} else {
 +		/* btr_search_index_num == 1 */
 +		/* btr_search_latch is only one and able to obtain
-+		   before evaluating block->is_hashed. */
++		   before evaluating block->index. */
 +		rw_lock_s_lock(btr_search_latch_part[0]);
-+		if (UNIV_LIKELY(!block->is_hashed)) {
++		if (UNIV_LIKELY(!block->index)) {
 +			rw_lock_s_unlock(btr_search_latch_part[0]);
 +			return;
 +		}
 +		index = block->index;
 +	}
-+
- 	page = block->frame;
  
- 	if (UNIV_LIKELY(!block->is_hashed)) {
+ 	if (UNIV_LIKELY(!index)) {
  
 -		rw_lock_s_unlock(&btr_search_latch);
 +		rw_lock_s_unlock(btr_search_get_latch(index->id));
@@ -503,18 +506,18 @@
  		return;
  	}
  
+-	ut_a(!dict_index_is_ibuf(index));
 -	table = btr_search_sys->hash_index;
 +	table = btr_search_get_hash_index(index->id);
  
  #ifdef UNIV_SYNC_DEBUG
  	ut_ad(rw_lock_own(&(block->lock), RW_LOCK_SHARED)
-@@ -1077,14 +1144,14 @@
+@@ -1080,12 +1144,14 @@
  
  	n_fields = block->curr_n_fields;
  	n_bytes = block->curr_n_bytes;
--	index = block->index;
 +	ut_a(index == block->index);
- 	ut_a(!dict_index_is_ibuf(index));
++	ut_a(!dict_index_is_ibuf(index));
  
  	/* NOTE: The fields of block must not be accessed after
  	releasing btr_search_latch, as the index page might only
@@ -525,16 +528,16 @@
  
  	ut_a(n_fields + n_bytes > 0);
  
-@@ -1134,7 +1201,7 @@
+@@ -1136,7 +1202,7 @@
  		mem_heap_free(heap);
  	}
  
 -	rw_lock_x_lock(&btr_search_latch);
 +	rw_lock_x_lock(btr_search_get_latch(index->id));
  
- 	if (UNIV_UNLIKELY(!block->is_hashed)) {
+ 	if (UNIV_UNLIKELY(!block->index)) {
  		/* Someone else has meanwhile dropped the hash index */
-@@ -1150,7 +1217,7 @@
+@@ -1152,7 +1218,7 @@
  		/* Someone else has meanwhile built a new hash index on the
  		page, with different parameters */
  
@@ -543,15 +546,15 @@
  
  		mem_free(folds);
  		goto retry;
-@@ -1166,6 +1233,7 @@
+@@ -1167,6 +1233,7 @@
+ 	index->search_info->ref_count--;
  
- 	block->is_hashed = FALSE;
  	block->index = NULL;
 +	block->btr_search_latch = NULL;
- 	
+ 
  cleanup:
  #if defined UNIV_AHI_DEBUG || defined UNIV_DEBUG
-@@ -1178,14 +1246,14 @@
+@@ -1179,14 +1246,14 @@
  			"InnoDB: the hash index to a page of %s,"
  			" still %lu hash nodes remain.\n",
  			index->name, (ulong) block->n_pointers);
@@ -569,7 +572,7 @@
  #endif /* UNIV_AHI_DEBUG || UNIV_DEBUG */
  
  	mem_free(folds);
-@@ -1217,9 +1285,9 @@
+@@ -1218,9 +1285,9 @@
  	ulint*		offsets;
  	ibool		released_search_latch;
  
@@ -581,7 +584,7 @@
  
  	for (j = 0; j < srv_buf_pool_instances; j++) {
  		buf_pool_t*	buf_pool;
-@@ -1253,7 +1321,7 @@
+@@ -1254,7 +1321,7 @@
  
  
  					/* keeping latch order */
@@ -590,16 +593,16 @@
  					released_search_latch = TRUE;
  					rw_lock_x_lock(&block->lock);
  
-@@ -1305,7 +1373,7 @@
+@@ -1306,7 +1373,7 @@
  						mem_heap_empty(heap);
  					}
  
 -					rw_lock_x_lock(&btr_search_latch);
 +					rw_lock_x_lock(btr_search_get_latch(index->id));
  
- 					if (UNIV_UNLIKELY(!block->is_hashed)) {
+ 					if (UNIV_UNLIKELY(!block->index)) {
  						goto cleanup;
-@@ -1315,12 +1383,12 @@
+@@ -1316,12 +1383,12 @@
  
  					if (UNIV_UNLIKELY(block->curr_n_fields != n_fields)
  					    || UNIV_UNLIKELY(block->curr_n_bytes != n_bytes)) {
@@ -614,15 +617,15 @@
  						goto retry;
  					}
  
-@@ -1334,6 +1402,7 @@
+@@ -1334,6 +1401,7 @@
+ 					index->search_info->ref_count--;
  
- 					block->is_hashed = FALSE;
  					block->index = NULL;
 +					block->btr_search_latch = NULL;
  
  cleanup:
  #if defined UNIV_AHI_DEBUG || defined UNIV_DEBUG
-@@ -1346,18 +1415,18 @@
+@@ -1346,18 +1414,18 @@
  							index->name, (ulong) block->n_pointers);
  					}
  #endif /* UNIV_AHI_DEBUG || UNIV_DEBUG */
@@ -644,7 +647,7 @@
  
  	if (UNIV_LIKELY_NULL(heap)) {
  		mem_heap_free(heap);
-@@ -1404,7 +1473,7 @@
+@@ -1395,7 +1463,7 @@
  
  		buf_block_dbg_add_level(block, SYNC_TREE_NODE_FROM_HASH);
  
@@ -653,14 +656,13 @@
  	}
  
  	mtr_commit(&mtr);
-@@ -1446,26 +1515,26 @@
+@@ -1436,31 +1504,26 @@
  	ut_ad(index);
  	ut_a(!dict_index_is_ibuf(index));
  
--	table = btr_search_sys->hash_index;
 +	table = btr_search_get_hash_index(index->id);
- 	page = buf_block_get_frame(block);
- 
++	page = buf_block_get_frame(block);
++
  #ifdef UNIV_SYNC_DEBUG
 -	ut_ad(!rw_lock_own(&btr_search_latch, RW_LOCK_EX));
 +	ut_ad(!rw_lock_own(btr_search_get_latch(index->id), RW_LOCK_EX));
@@ -669,11 +671,21 @@
  #endif /* UNIV_SYNC_DEBUG */
  
 -	rw_lock_s_lock(&btr_search_latch);
+-
+-	if (!btr_search_enabled) {
+-		rw_lock_s_unlock(&btr_search_latch);
+-		return;
+-	}
+-
+-	table = btr_search_sys->hash_index;
+-	page = buf_block_get_frame(block);
 +	rw_lock_s_lock(btr_search_get_latch(index->id));
  
- 	if (block->is_hashed && ((block->curr_n_fields != n_fields)
- 				 || (block->curr_n_bytes != n_bytes)
- 				 || (block->curr_left_side != left_side))) {
+ 	if (block->index && ((block->curr_n_fields != n_fields)
+-			     || (block->curr_n_bytes != n_bytes)
+-			     || (block->curr_left_side != left_side))) {
++				 || (block->curr_n_bytes != n_bytes)
++				 || (block->curr_left_side != left_side))) {
  
 -		rw_lock_s_unlock(&btr_search_latch);
 +		rw_lock_s_unlock(btr_search_get_latch(index->id));
@@ -686,7 +698,7 @@
  	}
  
  	n_recs = page_get_n_recs(page);
-@@ -1559,9 +1628,9 @@
+@@ -1554,9 +1617,9 @@
  		fold = next_fold;
  	}
  
@@ -696,9 +708,9 @@
 -	rw_lock_x_lock(&btr_search_latch);
 +	rw_lock_x_lock(btr_search_get_latch(index->id));
  
- 	if (UNIV_UNLIKELY(btr_search_fully_disabled)) {
+ 	if (UNIV_UNLIKELY(!btr_search_enabled)) {
  		goto exit_func;
-@@ -1589,6 +1658,7 @@
+@@ -1583,6 +1646,7 @@
  	block->curr_n_bytes = n_bytes;
  	block->curr_left_side = left_side;
  	block->index = index;
@@ -706,7 +718,7 @@
  
  	for (i = 0; i < n_cached; i++) {
  
-@@ -1596,7 +1666,7 @@
+@@ -1590,7 +1654,7 @@
  	}
  
  exit_func:
@@ -715,14 +727,18 @@
  
  	mem_free(folds);
  	mem_free(recs);
-@@ -1635,13 +1705,13 @@
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/bug45702.patch?r1=1.2&r2=1.3&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/bug580324.patch?r1=1.5&r2=1.6&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/bug860910.patch?r1=1.2&r2=1.3&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/file-contents.patch?r1=1.2&r2=1.3&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_adaptive_hash_index_partitions.patch?r1=1.9&r2=1.10&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_admin_command_base.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_buffer_pool_pages_i_s.patch?r1=1.9&r2=1.10&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_buffer_pool_shm.patch?r1=1.9&r2=1.10&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_dict_size_limit.patch?r1=1.7&r2=1.8&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_expand_fast_index_creation.patch?r1=1.4&r2=1.5&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_expand_import.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_extend_slow.patch?r1=1.9&r2=1.10&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_extra_rseg.patch?r1=1.7&r2=1.8&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_fake_changes.patch?r1=1.2&r2=1.3&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_fast_checksum.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_files_extend.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_fix_misc.patch?r1=1.10&r2=1.11&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_io_patches.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_opt_lru_count.patch?r1=1.6&r2=1.7&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_overwrite_relay_log_info.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_pass_corrupt_table.patch?r1=1.10&r2=1.11&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_separate_doublewrite.patch?r1=1.11&r2=1.12&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_show_lock_name.patch?r1=1.7&r2=1.8&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_show_status.patch?r1=1.7&r2=1.8&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_show_status_extend.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_show_sys_tables.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_split_buf_pool_mutex.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_stats.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/innodb_thread_concurrency_timer_based.patch?r1=1.7&r2=1.8&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/log_warnings_suppress.patch?r1=1.7&r2=1.8&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/memory_dynamic_rows.patch?r1=1.3&r2=1.4&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/mysql.spec?r1=1.562&r2=1.563&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/processlist_row_stats.patch?r1=1.5&r2=1.6&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/query_cache_enhance.patch?r1=1.10&r2=1.11&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/response_time_distribution.patch?r1=1.9&r2=1.10&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/show_slave_status_nolock.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/show_temp.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/slow_extended.patch?r1=1.10&r2=1.11&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/sql_no_fcache.patch?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/subunit.patch?r1=1.2&r2=1.3&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/userstat.patch?r1=1.9&r2=1.10&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/mysql/warning_fixes.patch?r1=1.1&r2=1.2&f=u



More information about the pld-cvs-commit mailing list