1. 19 Feb, 2009 12 commits
    • Georgi Kodinov's avatar
      merged 5.0-bugteam -> 5.1-bugteam · 0a3baee1
      Georgi Kodinov authored
      0a3baee1
    • Georgi Kodinov's avatar
      merged bug 42419 to 5.0-bugteam · 5e19d075
      Georgi Kodinov authored
      5e19d075
    • Georgi Kodinov's avatar
      Bug #42419: Server crash with "Pure virtual method called" on two concurrent · 7c0b3153
      Georgi Kodinov authored
      connections
      The problem is that tables can enter open table cache for a thread without 
      being properly cleaned up. This can happen if make_join_statistics() fails 
      to read a const table because of e.g. a deadlock. It does set a member of 
      TABLE structure to a value it allocates, but doesn't clean-up this setting 
      on error nor does it set the rest of the members in JOIN to allow for 
      automatic cleanup.
      As a result when such an error occurs and the next statement depends re-uses 
      the table from the open tables cache it will get it with this 
      TABLE::reginfo.join_tab pointing to a memory area that's freed.
      Fixed by making sure make_join_statistics() cleans up TABLE::reginfo.join_tab 
      on error.
      
      mysql-test/r/innodb_mysql.result:
        Bug #42419: test case
      mysql-test/t/innodb_mysql-master.opt:
        Bug #42419: increase the timeout so it covers te conservative 
        sleep 3 in the test
      mysql-test/t/innodb_mysql.test:
        Bug #42419: test case
      sql/sql_select.cc:
        Bug #42419: clean up the members of TABLE on failure in 
                make_join_statisitcs()
      7c0b3153
    • Sergey Glukhov's avatar
      automerge · da9b873b
      Sergey Glukhov authored
      da9b873b
    • Sergey Glukhov's avatar
      5.0-bugteam->5.1-bugteam merge · 7af856a8
      Sergey Glukhov authored
      7af856a8
    • Sergey Glukhov's avatar
      Bug#37601 Cast Is Not Done On Row Comparison · b68e5b66
      Sergey Glukhov authored
      In case of ROW item each compared pair does not
      check if argumet collations can be aggregated and
      thus appropiriate item conversion does not happen.
      The fix is to add the check and convertion for ROW
      pairs.
      
      
      mysql-test/r/row.result:
        test result
      mysql-test/t/row.test:
        test case
      sql/item.cc:
        added agg_item_set_converter() function which was a part of
        agg_item_charsets() func. The only difference is that
        agg_item_set_converter() checks and converts items 
        using already known collation.
      sql/item.h:
        added agg_item_set_converter() function
      sql/item_cmpfunc.cc:
        In case of ROW item each compared pair does not
        check if argumet collations can be aggregated and
        thus appropiriate item conversion does not happen.
        The fix is to add the check and convertion for ROW
        pairs.
      b68e5b66
    • Staale Smedseng's avatar
      Bug#31506 detection of function's availability is wrong in · 5a44f2e3
      Staale Smedseng authored
      configure.in
      
      Replacing AC_CHECK_FUNC+AC_CHECK_LIB combination with
      AC_SEARCH_LIBS.
      5a44f2e3
    • Alexey Kopytov's avatar
      ebfca91c
    • Alexey Kopytov's avatar
      Automerge. · 169fb823
      Alexey Kopytov authored
      169fb823
    • Alexey Kopytov's avatar
      Automerge. · 9da1816e
      Alexey Kopytov authored
      9da1816e
    • Alexey Kopytov's avatar
      Automerge. · 84985951
      Alexey Kopytov authored
      84985951
    • Alexey Kopytov's avatar
      Fix for bug #41078: With CURSOR_TYPE_READ_ONLY mysql_stmt_fetch() · 074b4bad
      Alexey Kopytov authored
      returns short string value. 
       
      Multibyte character sets were not taken into account when 
      calculating max_length in Item_param::convert_str_value(). As a 
      result, string parameters of a prepared statement could be 
      truncated later when calculating string length in characters by 
      dividing length in bytes by the charset's mbmaxlen value (e.g. in 
      Field_varstring::store()). 
       
      Fixed by taking charset's mbmaxlen into account when calculating 
      max_length in Item_param::convert_str_value().
      
      
      sql/item.cc:
        Multiply string's length in characters by charset's mbmaxlen when 
        calculating max_length.
      tests/mysql_client_test.c:
        Added a test case for bug #41078.
      074b4bad
  2. 18 Feb, 2009 5 commits
  3. 17 Feb, 2009 1 commit
  4. 16 Feb, 2009 8 commits
  5. 15 Feb, 2009 3 commits
  6. 14 Feb, 2009 11 commits