List:Commits« Previous MessageNext Message »
From:marko.makela Date:November 11 2010 1:18pm
Subject:bzr push into mysql-5.1-innodb branch (marko.makela:3657 to 3658) Bug#57802
View as plain text  
 3658 Marko Mäkelä	2010-11-11
      Fix a debug assertion failure in the Bug#57802 fix.
      
      thr_local_create(): Initialize local->slot_no to ULINT_UNDEFINED.
      thr_local_validate(): Allow local->slot_no to be ULINT_UNDEFINED.

    modified:
      storage/innodb_plugin/thr/thr0loc.c
 3657 Vasil Dimov	2010-11-11
      Remove unused parameter has_dict_mutex of dict_update_statistics_low()
      
      Also delete dict_update_statistics() and rename dict_update_statistics_low()
      to dict_update_statistics() because the only thing that distinguished those
      two functions was the removed parameter.

    modified:
      storage/innodb_plugin/dict/dict0dict.c
      storage/innodb_plugin/dict/dict0load.c
      storage/innodb_plugin/include/dict0dict.h
=== modified file 'storage/innodb_plugin/thr/thr0loc.c'
--- a/storage/innodb_plugin/thr/thr0loc.c	revid:vasil.dimov@stripped11152-go9r1lgbtpvcmfd0
+++ b/storage/innodb_plugin/thr/thr0loc.c	revid:marko.makela@stripped62ufdczj2pk7
@@ -82,7 +82,8 @@ thr_local_validate(
 	const thr_local_t*	local)	/*!< in: data to validate */
 {
 	ut_ad(local->magic_n == THR_LOCAL_MAGIC_N);
-	ut_ad(local->slot_no < OS_THREAD_MAX_N);
+	ut_ad(local->slot_no == ULINT_UNDEFINED
+	      || local->slot_no < OS_THREAD_MAX_N);
 	ut_ad(local->in_ibuf == FALSE || local->in_ibuf == TRUE);
 	return(TRUE);
 }
@@ -206,7 +207,7 @@ thr_local_create(void)
 	local->id = os_thread_get_curr_id();
 	local->handle = os_thread_get_curr();
 	local->magic_n = THR_LOCAL_MAGIC_N;
-
+	local->slot_no = ULINT_UNDEFINED;
 	local->in_ibuf = FALSE;
 
 	mutex_enter(&thr_local_mutex);

Attachment: [text/bzr-bundle] bzr/marko.makela@oracle.com-20101111131239-wosl62ufdczj2pk7.bundle
Thread
bzr push into mysql-5.1-innodb branch (marko.makela:3657 to 3658) Bug#57802marko.makela11 Nov