1. 27 Oct, 2010 1 commit
    • Sergey Glukhov's avatar
      Bug#57477 SIGFPE when dividing a huge number a negative number · 378f0378
      Sergey Glukhov authored
      The problem is dividing by const value when
      the result is out of supported range.
      The fix:
      -return LONGLONG_MIN if the result is out of supported range for DIV operator.
      -return 0 if divisor is -1 for MOD operator.
      
      
      mysql-test/r/func_math.result:
        test case
      mysql-test/t/func_math.test:
        test case
      sql/item_func.cc:
        -return LONGLONG_MIN if the result is out of supported range for DIV operator.
        -return 0 if divisor is -1 for MOD operator.
      378f0378
  2. 25 Oct, 2010 1 commit
  3. 21 Oct, 2010 1 commit
  4. 18 Oct, 2010 2 commits
    • Sergey Glukhov's avatar
      Bug#56814 Explain + subselect + fulltext crashes server · 210e6311
      Sergey Glukhov authored
      create_sort_index() function overwrites original JOIN_TAB::type field.
      At re-execution of subquery overwritten JOIN_TAB::type(JT_ALL) is
      used instead of JT_FT. It misleads test_if_skip_sort_order() and
      the function tries to find suitable key for the order that should
      not be allowed for FULLTEXT(JT_FT) table.
      The fix is to restore JOIN_TAB strucures for subselect on re-execution
      for EXPLAIN.
      Additional fix:
      Update TABLE::maybe_null field which
      affects list_contains_unique_index() behaviour as it
      could have the value(maybe_null==TRUE) based on the
      assumption that this join is outer
      (see setup_table_map() func).
      
      
      mysql-test/r/explain.result:
        test case
      mysql-test/t/explain.test:
        test case
      sql/item_subselect.cc:
        Make subquery uncacheable in case of EXPLAIN. It allows to keep
        original JOIN_TAB::type(see JOIN::save_join_tab) and restore it
        on re-execution.
      sql/sql_select.cc:
        -restore JOIN_TAB strucures for subselect on re-execution for EXPLAIN
        -Update TABLE::maybe_null field as it could have
         the value(maybe_null==TRUE) based on the assumption
         that this join is outer(see setup_table_map() func).
         This change is not related to the crash problem but
         affects EXPLAIN results in the test case.
      210e6311
    • Sergey Glukhov's avatar
      Bug#54484 explain + prepared statement: crash and Got error -1 from storage engine · 5060b387
      Sergey Glukhov authored
      Subquery executes twice, at top level JOIN::optimize and ::execute stages.
      At first execution create_sort_index() function is called and
      FT_SELECT object is created and destroyed. HANDLER::ft_handler is cleaned up
      in the object destructor and at second execution FT_SELECT::get_next() method
      returns error.
      The fix is to reinit HANDLER::ft_handler field before re-execution of subquery.
      
      
      mysql-test/r/fulltext.result:
        test case
      mysql-test/t/fulltext.test:
        test case
      sql/item_func.cc:
        reinit ft_handler before re-execution of subquery
      sql/item_func.h:
        Fixed method name
      sql/sql_select.cc:
        reinit ft_handler before re-execution of subquery
      5060b387
  5. 17 Oct, 2010 2 commits
  6. 15 Oct, 2010 2 commits
  7. 12 Oct, 2010 2 commits
    • Ramil Kalimullin's avatar
      Fix for bug#57283: inet_ntoa() crashes · bc84be59
      Ramil Kalimullin authored
      Problem: some call of INET_NTOA() function may lead 
      to a crash due to missing its character set initialization.
      
      Fix: explicitly set the character set.
      
      
      mysql-test/r/func_misc.result:
        Fix for bug#57283: inet_ntoa() crashes
          - test result.
      mysql-test/t/func_misc.test:
        Fix for bug#57283: inet_ntoa() crashes
          - test case.
      sql/item_strfunc.cc:
        Fix for bug#57283: inet_ntoa() crashes
          - explicitly set buffer's character set.
      bc84be59
    • Ramil Kalimullin's avatar
      Fix for bug#57272: crash in rpad() when using utf8 · b6346b44
      Ramil Kalimullin authored
      Problem: if multibyte and binary string arguments passed to 
      RPAD(), LPAD() or INSERT() functions, they might return 
      wrong results or even lead to a server crash due to missed
      character set convertion.
      
      Fix: perform the convertion if necessary.
      
      
      mysql-test/r/ctype_utf8.result:
        Fix for bug#57272: crash in rpad() when using utf8
          - test result.
      mysql-test/t/ctype_utf8.test:
        Fix for bug#57272: crash in rpad() when using utf8
          - test case.
      sql/item_strfunc.cc:
        Fix for bug#57272: crash in rpad() when using utf8
          - convert multibyte argument's character set to binary in case of
        FUNCTION(MULTIBYTE_ARG, .., BINARY_ARG,..) for RPAD(), LPAD() and 
        INSERT() functions.
      b6346b44
  8. 11 Oct, 2010 5 commits
  9. 07 Oct, 2010 1 commit
  10. 06 Oct, 2010 2 commits
  11. 05 Oct, 2010 9 commits
  12. 04 Oct, 2010 5 commits
  13. 03 Oct, 2010 2 commits
  14. 01 Oct, 2010 5 commits