1. 17 Dec, 2007 4 commits
  2. 15 Dec, 2007 4 commits
  3. 14 Dec, 2007 2 commits
    • unknown's avatar
      Fixed bug #27848. · 3f6073ae
      unknown authored
      In a union without braces, the order by at the end is applied to the 
      overall union. It therefore should not interfere with the individual
      select parts of the union.
      
      Fixed by changing our parser rules appropriately.
      
      
      mysql-test/r/union.result:
        Added a test case for bug #27848.
      mysql-test/t/union.test:
        Added a test case for bug #27848.
      3f6073ae
    • unknown's avatar
      Bug#32798: DISTINCT in GROUP_CONCAT clause fails when ordering by a column · 0c4b3f57
      unknown authored
      with null values
      
      For queries containing GROUP_CONCAT(DISTINCT fields ORDER BY fields), there 
      was a limitation that the DISTINCT fields had to be the same as ORDER BY 
      fields, owing to the fact that one single sorted tree was used for keeping 
      track of tuples, ordering and uniqueness. Fixed by introducing a second 
      structure to handle uniqueness so that the original structure has only to 
      order the result.
      
      
      mysql-test/r/func_gconcat.result:
        Bug#32798:
        - Wrong test result turned correct after fix.
        - Correct test result
      mysql-test/t/func_gconcat.test:
        Bug#32798: Test case
      sql/item_sum.cc:
        Bug#32798: Implementation of fix. Dead code removal.
        
        - removed comment describing this bug
        - replaced body of function group_concat_key_cmp_with_distinct
        - removed function group_concat_key_cmp_with_distinct_and_order
        - Added a Unique object to maintain uniqueness of values.
      sql/item_sum.h:
        Bug#32798: Declarations and comments.
      0c4b3f57
  4. 13 Dec, 2007 9 commits
    • unknown's avatar
      additional fix · 12504d90
      unknown authored
      12504d90
    • unknown's avatar
      valgrind error fix · e51e6097
      unknown authored
      e51e6097
    • unknown's avatar
      after merge fix · f1d98054
      unknown authored
      f1d98054
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/4.1-opt · 4618000b
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
      
      
      include/mysql_com.h:
        Auto merged
      myisam/mi_check.c:
        Auto merged
      4618000b
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/5.0 · 33f82b17
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
      
      
      client/mysql.cc:
        Auto merged
      client/mysqltest.c:
        Auto merged
      include/mysql_com.h:
        Auto merged
      libmysql/CMakeLists.txt:
        Auto merged
      myisam/mi_check.c:
        Auto merged
      mysql-test/r/delayed.result:
        Auto merged
      mysql-test/r/innodb.result:
        Auto merged
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/r/ps.result:
        Auto merged
      mysql-test/t/merge.test:
        Auto merged
      mysql-test/t/myisam.test:
        Auto merged
      mysql-test/t/subselect.test:
        Auto merged
      mysql-test/t/type_datetime.test:
        Auto merged
      mysql-test/t/variables.test:
        Auto merged
      sql/field.cc:
        Auto merged
      sql/ha_myisam.cc:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/item_func.h:
        Auto merged
      sql/mysql_priv.h:
        Auto merged
      sql/mysqld.cc:
        Auto merged
      sql/opt_range.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/set_var.h:
        Auto merged
      sql/sql_class.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      mysql-test/r/func_misc.result:
        manual merge
      mysql-test/r/innodb_mysql.result:
        manual merge
      mysql-test/t/func_misc.test:
        manual merge
      mysql-test/t/innodb_mysql.test:
        manual merge
      sql/sql_insert.cc:
        manual merge
      33f82b17
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0-opt · 196f0c75
      unknown authored
      into  mysql.com:/home/psergey/mysql-5.0-bug32198
      
      
      196f0c75
    • unknown's avatar
      BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly · c6675cd1
      unknown authored
      - Make conditions like "date_col $CMP$ 'datetime-const'" range-sargable
      
      
      mysql-test/r/range.result:
        BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
        - Testcase
      mysql-test/t/range.test:
        BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
        - Testcase
      sql/field.cc:
        BUG#32198: Comparison of DATE with DATETIME still not using indexes correctly
        - Added comments
      c6675cd1
    • unknown's avatar
      Merge mysql.com:/home/gluh/MySQL/Merge/4.1 · 618cb7a8
      unknown authored
      into  mysql.com:/home/gluh/MySQL/Merge/4.1-opt
      
      
      include/mysql_com.h:
        Auto merged
      myisam/mi_check.c:
        Auto merged
      618cb7a8
    • unknown's avatar
      Bug #32858: Erro: "Incorrect usage of UNION and INTO" does not take · 93e3057b
      unknown authored
      subselects into account
      
      It is forbidden to use the SELECT INTO construction inside UNION statements
      unless on the last SELECT of the union. The parser records whether it 
      has seen INTO or not when parsing a UNION statement. But if the INTO was
      legally used in an outer query, an error is thrown if UNION is seen in a
      subquery. Fixed in 5.0 by remembering the nesting level of INTO tokens and 
      mitigate the error unless it collides with the UNION.
      
      
      mysql-test/r/union.result:
        Bug#32858: Test result
      mysql-test/t/union.test:
        Bug#32858: Test case
      sql/sql_class.cc:
        Bug#32858: Initializing new member
      sql/sql_class.h:
        Bug#32858: Added property nest_level to select_result class.
      sql/sql_yacc.yy:
        Bug#32858: The fix.
      93e3057b
  5. 12 Dec, 2007 1 commit
  6. 11 Dec, 2007 3 commits
  7. 10 Dec, 2007 5 commits
  8. 09 Dec, 2007 2 commits
  9. 08 Dec, 2007 4 commits
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · b3f11ed4
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug32815
      
      
      b3f11ed4
    • unknown's avatar
      Fix for BUG#32694 "NOT NULL table field in a subquery produces invalid results" · b3d8ff4e
      unknown authored
        
      The problem was that when convert_constant_item is called for subqueries,
      this happens when we already started executing the top-level query, and
      the field argument of convert_constant_item pointed to a valid table row.
      In turn convert_constant_item used the field buffer to compute the value
      of its item argument. This copied the item's value into the field,
      and made equalities with outer references always true.
        
      The fix saves/restores the original field's value when it belongs to an
      outer table.
      
      
      mysql-test/r/type_datetime.result:
        Test for BUG#32694.
      mysql-test/t/type_datetime.test:
        Test for BUG#32694.
      sql/item_cmpfunc.cc:
        - Changed convert_constant_item() so that it doesn't destroy the contents
          of its field argument when the field originates from table in an outer
          query.
      b3d8ff4e
    • unknown's avatar
      Fixed bug #27545. · b1b2e0d0
      unknown authored
      Both arguments of the function NAME_CONST must be constant expressions.
      This constraint is checked in the Item_name_const::fix_fields method. 
      Yet if the argument of the function was not a constant expression no
      error message was reported. As a result the client hanged waiting for a
      response.
      Now the function Item_name_const::fix_fields reports an error message
      when any of the additional context conditions imposed on the function
      NAME_CONST is not satisfied. 
      
      
      mysql-test/r/func_misc.result:
        Added a test case for bug #26545.
      mysql-test/t/func_misc.test:
        Added a test case for bug #26545.
      b1b2e0d0
    • unknown's avatar
      Fixed bug #32815. · d776054e
      unknown authored
      The index (key_part_1, key_part-2) was erroneously considered as compatible
      with the required ordering in the function test_test_if_order_by_key when 
      a query with an ORDER BY clause contained a condition of the form
        key_part_1=const OR key_part_1 IS NULL 
      and the order list contained only key_part_2. This happened because the value
      of the const_key_parts field in the KEYUSE structure was not formed correctly
      for the keys that could be used for ref_or_null access. 
      This was fixed in the code of the update_ref_and_keys function.
      The problem could not manifest itself for MyISAM databases because the
      implementation of the keys_to_use_for_scanning() handler function always
      returns an empty bitmap for the MyISAM engine.
      
      
      mysql-test/r/innodb_mysql.result:
        Added a test case for bug #32815.
      mysql-test/t/innodb_mysql.test:
        Added a test case for bug #32815.
      sql/sql_select.cc:
        Fixed bug #32815.
        The index (key_part_1, key_part-2) was erroneously considered as compatible
        with the required ordering in the function test_test_if_order_by_key when 
        a query with an ORDER BY clause contained a condition of the form
          key_part_1=const OR key_part_1 IS NULL 
        and the order list contained only key_part_2. This happened because the value
        of the const_key_parts field in the KEYUSE structure was not formed correctly
        for the keys that could be used for ref_or_null access. 
        This was fixed in the code of the update_ref_and_keys function.
      d776054e
  10. 07 Dec, 2007 5 commits
  11. 06 Dec, 2007 1 commit