List:Commits« Previous MessageNext Message »
From:Ole John Aske Date:January 13 2011 9:20am
Subject:bzr commit into mysql-5.5 branch (ole.john.aske:3236) Bug#58134
View as plain text  
#At file:///net/fimafeng09/export/home/tmp/oleja/mysql/mysql-5.5/ based on revid:georgi.kodinov@stripped

 3236 Ole John Aske	2011-01-13
      Fix for bug#58134: 'Incorrectly condition pushdown inside subquery to NDB engine'
      
      An incorrect 'table_map' containing both the table itself, 
      and possible any outer-refs if this was the last table in 
      the subquery, was presented to make_cond_for_table().
            
      As a pushed condition is only able to refer column from the table
      the condition is pushed to, nothing else than columns from the
      table itself (tab->table->map) may be refered in the pushed condition
      constructed by 'push_cond= make_cond_for_table()'. 
            
      Also fix a minor 'copy and paste' bug in a comment 
      inside make_cond_for_table().
      
      No testcase is possible on mainbranch as the NDB engine is not available (yet)
      on mysql >= 5.5

    modified:
      sql/sql_select.cc
=== modified file 'sql/sql_select.cc'
--- a/sql/sql_select.cc	2011-01-12 09:31:41 +0000
+++ b/sql/sql_select.cc	2011-01-13 09:20:45 +0000
@@ -6480,7 +6480,7 @@ make_join_select(JOIN *join,SQL_SELECT *
               OPTIMIZER_SWITCH_ENGINE_CONDITION_PUSHDOWN)
           {
             COND *push_cond= 
-              make_cond_for_table(tmp, current_map, current_map);
+              make_cond_for_table(tmp, tab->table->map, tab->table->map);
             if (push_cond)
             {
               /* Push condition to handler */
@@ -13099,7 +13099,7 @@ make_cond_for_table(COND *cond, table_ma
 	new_cond->argument_list()->push_back(fix);
       }
       /*
-	Item_cond_and do not need fix_fields for execution, its parameters
+	Item_cond_or do not need fix_fields for execution, its parameters
 	are fixed or do not need fix_fields, too
       */
       new_cond->quick_fix_field();


Attachment: [text/bzr-bundle] bzr/ole.john.aske@oracle.com-20110113092045-88ve30e8uh2bbrlo.bundle
Thread
bzr commit into mysql-5.5 branch (ole.john.aske:3236) Bug#58134Ole John Aske13 Jan