List:Commits« Previous MessageNext Message »
From:Sergey Petrunia Date:March 15 2008 8:07pm
Subject:bk commit into 5.2 tree (sergefp:1.2598)
View as plain text  
Below is the list of changes that have just been committed into a local
5.2 repository of psergey. When psergey 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@stripped, 2008-03-15 23:07:21+03:00, sergefp@stripped +2 -0
  Comment out mutex acqusition/release code in DS-MRR implementation
  Fix for join buffering and outer joins from Igor

  sql/handler.cc@stripped, 2008-03-15 23:07:15+03:00, sergefp@stripped +4 -4
    Comment out mutex acqusition/release code in DS-MRR implementation

  sql/sql_select.cc@stripped, 2008-03-15 23:07:15+03:00, sergefp@stripped +1 -0
    Fix for join buffering and outer joins from Igor

diff -Nrup a/sql/handler.cc b/sql/handler.cc
--- a/sql/handler.cc	2007-12-23 04:40:37 +03:00
+++ b/sql/handler.cc	2008-03-15 23:07:15 +03:00
@@ -3535,7 +3535,7 @@ int DsMrr_impl::dsmrr_init(handler *h, K
    
     So we lock the mutex now and will unlock it when doing disk sweeps.
   */
-  pthread_mutex_lock(&dsmrr_mutex);
+  //pthread_mutex_lock(&dsmrr_mutex);
   need_unlock= TRUE;
 
   DBUG_RETURN(0);
@@ -3553,7 +3553,7 @@ void DsMrr_impl::dsmrr_close()
   DBUG_ENTER("DsMrr_impl::dsmrr_close");
   if (need_unlock)
   {
-    pthread_mutex_unlock(&dsmrr_mutex);
+    //pthread_mutex_unlock(&dsmrr_mutex);
     need_unlock= FALSE;
   }
   if (h2)
@@ -3649,7 +3649,7 @@ int DsMrr_impl::dsmrr_next(handler *h, c
     
   do
   {
-    pthread_mutex_unlock(&dsmrr_mutex);
+    //pthread_mutex_unlock(&dsmrr_mutex);
     need_unlock= FALSE;
     if (rowids_buf_cur == rowids_buf_last)
     {
@@ -3679,7 +3679,7 @@ int DsMrr_impl::dsmrr_next(handler *h, c
    
     /* Switching to Sweep read read. Lock the mutex back */
     need_unlock= TRUE;
-    pthread_mutex_lock(&dsmrr_mutex);
+    //pthread_mutex_lock(&dsmrr_mutex);
      
     cur_rowid= rowids_buf_cur;
     rowids_buf_cur += h->ref_length + sizeof(void*) * test(is_mrr_assoc);
diff -Nrup a/sql/sql_select.cc b/sql/sql_select.cc
--- a/sql/sql_select.cc	2007-12-23 02:19:56 +03:00
+++ b/sql/sql_select.cc	2008-03-15 23:07:15 +03:00
@@ -17151,6 +17151,7 @@ enum_nested_loop_state JOIN_CACHE::join_
       restore_record(join_tab->table, s->default_values);
       mark_as_null_row(join_tab->table);  
       /* Check all attached conditions for inner table rows. */
+      join_tab->first_unmatched->found= 1;
       if (join_tab->select && join_tab->select->skip_record())
         continue;
       if (is_last_inner)
Thread
bk commit into 5.2 tree (sergefp:1.2598)Sergey Petrunia15 Mar