← Back to team overview

maria-developers team mailing list archive

Rev 2752: Subquery optimization: Duplicate Elimination: process in file:///home/psergey/dev/maria-5.3-subqueries-r3/

 

Hi!

>>>>> "Sergey" == Sergey Petrunya <psergey@xxxxxxxxxxxx> writes:

Sergey> At file:///home/psergey/dev/maria-5.3-subqueries-r3/
Sergey> ------------------------------------------------------------
Sergey> revno: 2752
Sergey> revision-id: psergey@xxxxxxxxxxxx-20100208125530-l0o01n6lxk95cn78
Sergey> parent: psergey@xxxxxxxxxxxx-20100208095616-ar502xdhoqqhe3nk
Sergey> committer: Sergey Petrunya <psergey@xxxxxxxxxxxx>
Sergey> branch nick: maria-5.3-subqueries-r3
Sergey> timestamp: Mon 2010-02-08 14:55:30 +0200
Sergey> message:
Sergey>   Subquery optimization: Duplicate Elimination: process
Sergey>    temporary table overflow correctly.
Sergey> === modified file 'sql/sql_select.cc'
Sergey> --- a/sql/sql_select.cc	2010-01-28 13:48:33 +0000
Sergey> +++ b/sql/sql_select.cc	2010-02-08 12:55:30 +0000
Sergey> @@ -16250,12 +16250,12 @@
Sergey>    if (error)
Sergey>    {
Sergey>      /* create_internal_tmp_table_from_heap will generate error if needed */
Sergey> -    if (sjtbl->tmp_table->file->is_fatal_error(error, HA_CHECK_DUP) &&
Sergey> -        create_internal_tmp_table_from_heap(thd, sjtbl->tmp_table,
Sergey> +    if (!sjtbl->tmp_table->file->is_fatal_error(error, HA_CHECK_DUP))
Sergey> +      DBUG_RETURN(1); /* Duplicate */
Sergey> +    if (create_internal_tmp_table_from_heap(thd, sjtbl->tmp_table,
Sergey>                                              sjtbl->start_recinfo,
Sergey>                                              &sjtbl->recinfo, error, 1))
Sergey>        DBUG_RETURN(-1);

Why -1 here ?

(Tried to check this code in 5.1 tree, but it's not yet pushed so I
couldn't check this myself)

Regards,
Monty



References