1. 07 Apr, 2009 3 commits
    • Satya B's avatar
      merge 5.0-bugteam to 5.1-bugteam · 543abcd4
      Satya B authored
      543abcd4
    • Satya B's avatar
      Fix for Bug #43973 - backup_myisam.test fails on 6.0-bugteam · 10350e20
      Satya B authored
            
      The test started failing following the push for BUG#41541.
      Some of the algorithms access bytes beyond the input data
      and this can affect up to one byte less than "word size"
      which is BITS_SAVED / 8. 
            
      Fixed by adding (BITS_SAVED / 8) -1 bytes to buffer size
      (i.e. Memory Segment #2) to avoid accessing un-allocated data.
      
      myisam/mi_packrec.c:
        Fixed _mi_read_pack_info() method to allocate (BITS_SAVED/8) - 1 
        bytes to the Memory Segment #2
      mysql-test/r/myisampack.result:
        Result file for BUG#43973
      mysql-test/t/myisampack.test:
        Testcase for BUG#43973
      10350e20
    • Alexander Barkov's avatar
      Bug#42649 THR_LOCK_charset global mutex abused by InnoDB · 5847be8c
      Alexander Barkov authored
      The patch was originally proposed by Mikael and reviewed by Bar.
      5847be8c
  2. 06 Apr, 2009 1 commit
  3. 03 Apr, 2009 6 commits
    • Serge Kozlov's avatar
      Bug#37716. · a81e21f8
      Serge Kozlov authored
      1. Test case was rewritten completely.
      2. Test covers 3 cases:
       a) do deadlock on slave, wait retries of transaction, unlock slave before lock
      timeout;
       b) do deadlock on slave and wait error 'lock timeout exceed' on slave;
       c) same as b) but if of max relay log size = 0;
      3. Added comments inline.
      4. Updated result file.
      a81e21f8
    • Davi Arnaut's avatar
      Merge Bug#43230 into mysql-5.1-bugteam · 54bf80b6
      Davi Arnaut authored
      54bf80b6
    • Davi Arnaut's avatar
      Bug#43230: SELECT ... FOR UPDATE can hang with FLUSH TABLES WITH READ LOCK indefinitely · 72e97882
      Davi Arnaut authored
      The problem is that a SELECT .. FOR UPDATE statement might open
      a table and later wait for a impeding global read lock without
      noticing whether it is holding a table that is being waited upon
      the the flush phase of the process that took the global read
      lock.
      
      The same problem also affected the following statements:
      
      LOCK TABLES .. WRITE
      UPDATE .. SET (update and multi-table update)
      TRUNCATE TABLE ..
      LOAD DATA ..
      
      The solution is to make the above statements wait for a impending
      global read lock before opening the tables. If there is no
      impending global read lock, the statement raises a temporary
      protection against global read locks and progresses smoothly
      towards completion.
      
      Important notice: the patch does not try to address all possible
      cases, only those which are common and can be fixed unintrusively
      enough for 5.0.
      
      mysql-test/r/lock_multi.result:
        Add test case result for Bug#43230
      mysql-test/t/lock_multi.test:
        Add test case for Bug#43230
      sql/sql_lex.cc:
        Initialize flag.
      sql/sql_lex.h:
        Add a flag to the lexer.
      sql/sql_parse.cc:
        Wait for the global read lock is a write lock is going to be
        taken. The wait is done before opening tables.
      sql/sql_yacc.yy:
        Protect against the GRL if its a SELECT .. FOR UPDATE or LOCK TABLES
        .. WRITE statement.
      72e97882
    • Guangbao Ni's avatar
      AutoMerged from pushbuild mysql-5.1-bugteam · 102de8f5
      Guangbao Ni authored
      102de8f5
    • Guangbao Ni's avatar
      BUG#42640 mysqld crashes when unsafe statements are executed (STRICT_TRANS_TABLESmode) · 173d2953
      Guangbao Ni authored
      Mysql server crashes because unsafe statements warning is wrongly elevated to error,
      which is set the error status of Diagnostics_area of the thread in THD::binlog_query().
      Yet the caller believes that binary logging shouldn't touch the status, so it will
      set the status also later by my_ok(), my_error() or my_message() seperately
      according to the execution result of the statement or transaction.
      But the status of Diagnostics_area of the thread is allowed to set only once.
      
      Fixed to clear the error wrongly set by binary logging, but keep the warning message.
      
      mysql-test/suite/binlog/r/binlog_stm_ps.result:
        Change unsafe warning to NOTE level
      mysql-test/suite/binlog/r/binlog_unsafe.result:
        Test case result for unsafe statements to ensure mysql sever don't crash
      mysql-test/suite/binlog/t/binlog_unsafe.test:
        Test case for unsafe statements to ensure mysql sever don't crash
      mysql-test/suite/rpl/r/rpl_skip_error.result:
        Change unsafe warning to NOTE level
      mysql-test/suite/rpl/r/rpl_stm_loadfile.result:
        Change unsafe warning to NOTE level
      mysql-test/suite/rpl/r/rpl_udf.result:
        Change unsafe warning to NOTE level
      sql/sql_class.cc:
        the error status of the thread is cleared When a warning is elevated to an error
        because of unsafe warning of binary log.
      173d2953
    • Horst Hunger's avatar
      Fix belonging to bug#42838: Though this bug is only for 6.0 I put in some... · 92ea1722
      Horst Hunger authored
      Fix belonging to bug#42838: Though this bug is only for 6.0 I put in some updated result files for 6.0 and this are the corrsponding resul files for 5.1, so that sys_vars should then run successfully also in 5.1.
      92ea1722
  4. 02 Apr, 2009 9 commits
  5. 01 Apr, 2009 16 commits
  6. 31 Mar, 2009 5 commits