1. 12 Apr, 2011 3 commits
    • Sergey Glukhov's avatar
      5.1 -> 5.5 merge · 8bf77c3e
      Sergey Glukhov authored
      8bf77c3e
    • Sergey Glukhov's avatar
      Bug#11766270 59343: YEAR(4): INCORRECT RESULT AND VALGRIND WARNINGS WITH MIN/MAX, UNION · 70cf375d
      Sergey Glukhov authored
      When we create temporary result table for UNION
      incorrect max_length for YEAR field is used and
      it leads to incorrect field value and incorrect
      result string length as YEAR field value calculation
      depends on field length.
      The fix is to use underlying item max_length for
      Item_sum_hybrid::max_length intialization.
      
      
      mysql-test/r/func_group.result:
        test case
      mysql-test/t/func_group.test:
        test case
      sql/field.cc:
        added assert
      sql/item_sum.cc:
        init Item_sum_hybrid::max_length with 
        use underlying item max_length for
        INT result type.
      70cf375d
    • Sergey Glukhov's avatar
      Bug#11766212 59270: NOT IN (YEAR( ... ), ... ) PRODUCES MANY VALGRIND WARNINGS · 1c250752
      Sergey Glukhov authored
      Valgrind warning happens due to early null values check
      in Item_func_in::fix_length_and_dec(before item evaluation).
      As result null value items with uninitialized values are
      placed into array and it leads to valgrind warnings during
      value array sorting.
      The fix is to check null value after item evaluation, item
      is evaluated in in_array::set() method.
      
      
      mysql-test/r/func_in.result:
        test case
      mysql-test/t/func_in.test:
        test case
      sql/item_cmpfunc.cc:
        The fix is to check null value after item evaluation.
      1c250752
  2. 11 Apr, 2011 9 commits
  3. 08 Apr, 2011 7 commits
    • Alexander Barkov's avatar
      Bug#11926811 / Bug#60625 Illegal mix of collations · 6d4d2158
      Alexander Barkov authored
      Problem: comparison of a DATETIME sp variable and NOW()
      led to Illegal mix of collations error when 
      character_set_connection=utf8.
      Introduced by "WL#2649 Number-to-string conversions".
      
      Error happened in Arg_comparator::set_compare_func(),
      because the first argument was errouneously converted to utf8,
      while the second argument was not.
      
      Fix: separate agg_arg_charsets_for_comparison() into two functions:
      
      - agg_arg_charsets_for_comparison() - for pure comparison,
        when we don't need to return any string result and therefore
        don't need to convert arguments to @@character_set_connection:
          SELECT a = b;
      
      - agg_arg_charsets_for_string_results_with_comparison() - when
        we need to return a string result, but we also need to do
        comparison internally: SELECT REPLACE(a,b,c)
        If all arguments are numbers:
          SELECT REPLACE(123,2,3) -> 133
        we convert arguments to @@character_set_connection.
      
      
        @ mysql-test/include/ctype_numconv.inc
        @ mysql-test/r/ctype_binary.result
        @ mysql-test/r/ctype_cp1251.result
        @ mysql-test/r/ctype_latin1.result
        @ mysql-test/r/ctype_ucs.result
        @ mysql-test/r/ctype_utf8.result
        Adding tests
      
        @ sql/item.cc
        @ sql/item.h
        @ sql/item_func.cc
        @ sql/item_func.h
        @ sql/item_strfunc.cc
      
        Introducing and using new function
         agg_item_charsets_for_string_result_with_comparison() and
        its Item_func wrapper agg_arg_charsets_for_string_result_with_comparison().
      6d4d2158
    • Alexander Nozdrin's avatar
      A patch for Bug#12325375: THE SERVER ON WINXP DOES NOT ALLOW CONNECTIONS · 9303909a
      Alexander Nozdrin authored
      IF NO DNS-SERVER AVAILABLE.
      
      The thing is that on Windows XP getnameinfo() returns WSANO_DATA
      when hostname-lookup is not available. The problem was that
      this error code was treated as serious error and the client
      connection got rejected.
      
      The fix is to treat all errors from getnameinfo() as not ciritical,
      but add IP-address to the host cache only for EAI_NONAME (or WSANO_DATA).
      9303909a
    • Gleb Shchepa's avatar
      manual merge 5.1-->5.5 (bug 11829681) · 5ffab995
      Gleb Shchepa authored
      5ffab995
    • Gleb Shchepa's avatar
      Bug #11829681 - 60295: ERROR 1356 ON VIEW THAT EXECUTES FINE AS A QUERY · c64d72f3
      Gleb Shchepa authored
      Select from a view with the underlying HAVING clause failed with a
      message: "1356: View '...' references invalid table(s) or column(s)
      or function(s) or definer/invoker of view lack rights to use them"
      
      The bug is a regression of the fix for bug 11750328 - 40825 (similar
      case, but the HAVING cause references an aliased field).
      In the old fix for bug 40825 the Item_field::name_length value has
      been used in place of the real length of Item_field::name. However,
      in some cases Item_field::name_length is not in sync with the
      actual name length (TODO: combine name and name_length into a
      solid String field).
      
      The Item_ref::print() method has been modified to calculate actual
      name length every time.
      
      
      mysql-test/r/view.result:
        Test case for bug #11829681
      mysql-test/t/view.test:
        Test case for bug #11829681
      sql/item.cc:
        Bug #11829681 - 60295: ERROR 1356 ON VIEW THAT EXECUTES FINE AS A QUERY
        
        The Item_ref::print() method has been modified to calculate actual
        name length every time.
      sql/item.h:
        Minor commentary.
      c64d72f3
    • Nirbhay Choubey's avatar
      Adjusting test result for bug#11765157. · da19291f
      Nirbhay Choubey authored
      da19291f
    • Nirbhay Choubey's avatar
      c9e94027
    • Nirbhay Choubey's avatar
      Bug#11765157 - 58090: mysqlslap drops schema specified in · d31a394e
      Nirbhay Choubey authored
                     create_schema if auto-generate-sql also set.
      
      mysqlslap uses a schema to run its tests on and later
      drops it if auto-generate-sql is used. This can be a
      problem, if the schema is an already existing one.
      
      If create-schema is used with auto-generate-sql option,
      mysqlslap while performing the cleanup, drops the specified
      database.
      
      Fixed by introducing an option --no-drop, which, if used,
      will prevent the dropping of schema at the end of the test.
      
      
      client/client_priv.h:
        Bug#11765157 - 58090: mysqlslap drops schema specified in
                       create_schema if auto-generate-sql also set.
        
        Added an option.
      client/mysqlslap.c:
        Bug#11765157 - 58090: mysqlslap drops schema specified in
                       create_schema if auto-generate-sql also set.
        
        Introduced an option 'no-drop' to forbid the removal of schema
        even if 'create' or 'auto-generate-sql' options are used.
      mysql-test/r/mysqlslap.result:
        Added a testcase for Bug#11765157.
      mysql-test/t/mysqlslap.test:
        Added a testcase for Bug#11765157.
      d31a394e
  4. 07 Apr, 2011 8 commits
  5. 06 Apr, 2011 1 commit
  6. 05 Apr, 2011 4 commits
  7. 04 Apr, 2011 4 commits
  8. 02 Apr, 2011 1 commit
  9. 31 Mar, 2011 3 commits
    • Gleb Shchepa's avatar
      Bug #11766094 - 59132: MIN() AND MAX() REMOVE UNSIGNEDNESS · 43a1bda6
      Gleb Shchepa authored
      In the string context the MIN() and MAX() functions don't take
      into account the unsignedness of the UNSIGNED BIGINT argument
      column.
      
      I.e.:
              CREATE TABLE t1 (a BIGINT UNSIGNED);
              INSERT INTO t1 VALUES (18446668621106209655);
              SELECT CONCAT(MAX(a)) FROM t1;
      
      returns -75452603341961.
      
      
      mysql-test/r/func_group.result:
        Test case for bug #11766094.
      mysql-test/t/func_group.test:
        Test case for bug #11766094.
      sql/item.cc:
        Bug #11766094 - 59132: MIN() AND MAX() REMOVE UNSIGNEDNESS
        
        The Item_cache_int::val_str() method has been modified to
        take into account the unsigned_flag value when converting
        data to string.
      43a1bda6
    • Bjorn Munch's avatar
      null-merge · 741433b9
      Bjorn Munch authored
      741433b9
    • Bjorn Munch's avatar
      baa94d64