← Back to team overview

maria-developers team mailing list archive

Rev 2750: Subquery optimization backport: Duplicate Elimination: in file:///home/psergey/dev/maria-5.3-subqueries-r6/

 

At file:///home/psergey/dev/maria-5.3-subqueries-r6/

------------------------------------------------------------
revno: 2750
revision-id: psergey@xxxxxxxxxxxx-20100211215456-u85owf67gwqkkss5
parent: psergey@xxxxxxxxxxxx-20100128134833-9000udjp5wa3tsff
committer: Sergey Petrunya <psergey@xxxxxxxxxxxx>
branch nick: maria-5.3-subqueries-r6
timestamp: Fri 2010-02-12 00:54:56 +0300
message:
  Subquery optimization backport: Duplicate Elimination: 
  process temporary table overflow correctly.
=== modified file 'sql/sql_select.cc'
--- a/sql/sql_select.cc	2010-01-28 13:48:33 +0000
+++ b/sql/sql_select.cc	2010-02-11 21:54:56 +0000
@@ -16250,12 +16250,12 @@
   if (error)
   {
     /* create_internal_tmp_table_from_heap will generate error if needed */
-    if (sjtbl->tmp_table->file->is_fatal_error(error, HA_CHECK_DUP) &&
-        create_internal_tmp_table_from_heap(thd, sjtbl->tmp_table,
+    if (!sjtbl->tmp_table->file->is_fatal_error(error, HA_CHECK_DUP))
+      DBUG_RETURN(1); /* Duplicate */
+    if (create_internal_tmp_table_from_heap(thd, sjtbl->tmp_table,
                                             sjtbl->start_recinfo,
                                             &sjtbl->recinfo, error, 1))
       DBUG_RETURN(-1);
-    DBUG_RETURN(1);
   }
   DBUG_RETURN(0);
 }