1. 15 Dec, 2007 1 commit
  2. 14 Dec, 2007 4 commits
  3. 13 Dec, 2007 14 commits
  4. 12 Dec, 2007 2 commits
  5. 11 Dec, 2007 5 commits
  6. 10 Dec, 2007 8 commits
  7. 09 Dec, 2007 2 commits
  8. 08 Dec, 2007 4 commits
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · 51c42b31
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug32815
      
      51c42b31
    • unknown's avatar
      Fix for BUG#32694 "NOT NULL table field in a subquery produces invalid results" · b5640b1f
      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.
      b5640b1f
    • unknown's avatar
      Fixed bug #27545. · 5d71f3d8
      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.
      5d71f3d8
    • unknown's avatar
      Fixed bug #32815. · 62b65e98
      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.
      62b65e98