MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Alex Ivanov Notebook Date:April 7 2006 7:58pm
Subject:bk commit into 5.0 tree (aivanov:1.2140) BUG#15758
View as plain text  
Below is the list of changes that have just been committed into a local
5.0 repository of alexi. When alexi does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet
  1.2140 06/04/07 23:58:17 aivanov@stripped +3 -0
  Fixed BUG#15758: "Holding adaptive search latch in
   innobase_query_caching_of_table_permitted()".
   Applied the patch due to Heikki Tuuri.
   Also removed superfluous #ifdefs.

  sql/sql_cursor.cc
    1.6 06/04/07 23:58:12 aivanov@stripped +1 -2
    Removing superfluous #ifdefs (suggested by Sanja, also discussed with Serg).

  sql/sql_class.cc
    1.229 06/04/07 23:58:12 aivanov@stripped +0 -4
    Removing superfluous #ifdefs (suggested by Sanja, also discussed with Serg).

  sql/sql_cache.cc
    1.91 06/04/07 23:58:12 aivanov@stripped +5 -0
    Applied the patch due to Heikki Tuuri.
     Query_cache::store_query(): Make InnoDB to release the adaptive
     hash index latch before MySQL acquires the query cache mutex.

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	aivanov
# Host:	mysqld.localdomain
# Root:	/home/alexi/bugs/mysql-5.0-15758-work

--- 1.90/sql/sql_cache.cc	2006-01-04 17:46:44 +03:00
+++ 1.91/sql/sql_cache.cc	2006-04-07 23:58:12 +04:00
@@ -830,6 +830,11 @@
                           flags.sql_mode,
                           flags.max_sort_length,
                           flags.group_concat_max_len));
+    /*
+     Make InnoDB to release the adaptive hash index latch before
+     acquiring the query cache mutex.
+    */
+    ha_release_temporary_latches(thd);
     STRUCT_LOCK(&structure_guard_mutex);
 
     if (query_cache_size == 0)

--- 1.228/sql/sql_class.cc	2006-02-24 19:34:09 +03:00
+++ 1.229/sql/sql_class.cc	2006-04-07 23:58:12 +04:00
@@ -919,14 +919,12 @@
     return 0;
   }
 
-#ifdef HAVE_INNOBASE_DB
   /*
     We may be passing the control from mysqld to the client: release the
     InnoDB adaptive hash S-latch to avoid thread deadlocks if it was reserved
     by thd
   */
     ha_release_temporary_latches(thd);
-#endif
 
   List_iterator_fast<Item> li(items);
   Protocol *protocol= thd->protocol;
@@ -956,12 +954,10 @@
 
 bool select_send::send_eof()
 {
-#ifdef HAVE_INNOBASE_DB
   /* We may be passing the control from mysqld to the client: release the
      InnoDB adaptive hash S-latch to avoid thread deadlocks if it was reserved
      by thd */
     ha_release_temporary_latches(thd);
-#endif
 
   /* Unlock tables before sending packet to gain some speed */
   if (thd->lock)

--- 1.5/sql/sql_cursor.cc	2006-02-24 19:34:09 +03:00
+++ 1.6/sql/sql_cursor.cc	2006-04-07 23:58:12 +04:00
@@ -445,9 +445,8 @@
   if (error == NESTED_LOOP_CURSOR_LIMIT)
     join->resume_nested_loop= TRUE;
 
-#ifdef USING_TRANSACTIONS
     ha_release_temporary_latches(thd);
-#endif
+
   /* Grab free_list here to correctly free it in close */
   thd->restore_active_arena(this, &backup_arena);
 
Thread
bk commit into 5.0 tree (aivanov:1.2140) BUG#15758Alex Ivanov Notebook7 Apr