1. 12 Jan, 2007 4 commits
  2. 11 Jan, 2007 8 commits
    • evgen@moonbone.local's avatar
      Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 1d92b6cd
      evgen@moonbone.local authored
      into  moonbone.local:/work/23417-bug-5.0-opt-mysql
      1d92b6cd
    • evgen@moonbone.local's avatar
      Bug#23417: Too strict checks against GROUP BY in the ONLY_FULL_GROUP_BY mode. · 19ee0a94
      evgen@moonbone.local authored
      Currently in the ONLY_FULL_GROUP_BY mode no hidden fields are allowed in the
      select list. To ensure this each expression in the select list is checked
      to be a constant, an aggregate function or to occur in the GROUP BY list.
      The last two requirements are wrong and doesn't allow valid expressions like
      "MAX(b) - MIN(b)" or "a + 1" in a query with grouping by a.
      
      The correct check implemented by the patch will ensure that:
      any field reference in the [sub]expressions of the select list 
        is under an aggregate function or
        is mentioned as member of the group list or
        is an outer reference or
        is part of the select list element that coincide with a grouping element.
      
      The Item_field objects now can contain the position of the select list
      expression which they belong to. The position is saved during the
      field's Item_field::fix_fields() call.
      
      The non_agg_fields list for non-aggregated fields is added to the SELECT_LEX
      class. The SELECT_LEX::cur_pos_in_select_list now contains the position in the
      select list of the expression being currently fixed.
      19ee0a94
    • gkodinov/kgeorge@rakia.gmz's avatar
      Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 7eebacad
      gkodinov/kgeorge@rakia.gmz authored
      into  rakia.gmz:/home/kgeorge/mysql/autopush/B25106-5.0-opt
      7eebacad
    • gkodinov/kgeorge@macbook.gmz's avatar
      BUG#25106: A USING clause in combination with a VIEW results in column · 15bcf131
      gkodinov/kgeorge@macbook.gmz authored
                 aliases ignored
      When a column reference to a column in JOIN USING is resolved and a new 
      Item is created for this column the user defined name was lost.
      This fix preserves the alias by setting the name of the new Item to the
      original alias.
      15bcf131
    • evgen@moonbone.local's avatar
      Bug#23409: Arguments of the ENCODE() and the DECODE() functions were not printed · fc0e206c
      evgen@moonbone.local authored
      correctly.
      
      The Item_func::print method was used to print the Item_func_encode and the
      Item_func_decode objects. The last argument to ENCODE and DECODE functions
      is a plain C string and thus Item_func::print wasn't able to print it.
      
      The print() method is added to the Item_func_encode class. It correctly
      prints the Item_func_encode and the Item_func_decode objects.
      fc0e206c
    • evgen@moonbone.local's avatar
      Merge fix for bug#17711 · f35e10d4
      evgen@moonbone.local authored
      f35e10d4
    • evgen@moonbone.local's avatar
      Bug#17711: DELETE doesn't use index when ORDER BY, LIMIT and non-restricting · c17bf5cb
      evgen@moonbone.local authored
      WHERE is present.
      
      If a DELETE statement with ORDER BY and LIMIT contains a WHERE clause
      with conditions that for sure cannot be used for index access (like in
      WHERE @var:= field) the execution always follows the filesort path.    
      It happens currently even when for the above case there is an index that
      can be used to speedup sorting by the order by list.
      
      Now if a DELETE statement with ORDER BY and LIMIT contains such WHERE
      clause conditions that cannot be used to build any quick select then
      the mysql_delete() tries to use an index like there is no WHERE clause at all.
      c17bf5cb
    • holyfoot/hf@mysql.com/hfmain.(none)'s avatar
      Merge bk@192.168.21.1:mysql-5.0-opt · 3ff9dff0
      holyfoot/hf@mysql.com/hfmain.(none) authored
      into  mysql.com:/d2/hf/mr10/my50-mr10
      3ff9dff0
  3. 10 Jan, 2007 10 commits
  4. 09 Jan, 2007 14 commits
  5. 05 Jan, 2007 3 commits
    • kent@mysql.com/kent-amd64.(none)'s avatar
      Merge mysql.com:/home/kent/bk/tmp/mysql-4.1-build · fa5a359f
      kent@mysql.com/kent-amd64.(none) authored
      into  mysql.com:/home/kent/bk/tmp/mysql-5.0-build
      fa5a359f
    • kent@mysql.com/kent-amd64.(none)'s avatar
      mysql.spec.sh, make_binary_distribution.sh: · 528b4576
      kent@mysql.com/kent-amd64.(none) authored
        Add CFLAGS to gcc call with --print-libgcc-file, to make sure the
        correct "libgcc.a" path is returned for the 32/64 bit architecture
      528b4576
    • gkodinov/kgeorge@macbook.gmz's avatar
      Bug #15881: cast problems · a63df24a
      gkodinov/kgeorge@macbook.gmz authored
        The optimizer removes expressions from GROUP BY/DISTINCT
        if they happen to participate in a <expression> = <const>
        predicates of the WHERE clause (the idea being that if
        it's always equal to a constant it can't have multiple 
        values).
        However for predicates where the expression and the 
        constant item are of different result type this is not
        valid (e.g. a string column compared to 0).
        Fixed by additional check of the result types of the 
        expression and the constant and if they differ the 
        expression don't get removed from the group by list.
      a63df24a
  6. 04 Jan, 2007 1 commit