1. 19 Oct, 2011 2 commits
  2. 14 Oct, 2011 3 commits
  3. 12 Oct, 2011 7 commits
  4. 10 Oct, 2011 4 commits
  5. 07 Oct, 2011 2 commits
    • Magne Mahre's avatar
      Merge from 5.1-security · e7a8fedf
      Magne Mahre authored
      e7a8fedf
    • Magne Mahre's avatar
      BUG#12589870 CRASHES WITH MULTIQUERY PACKET + USE<DB> + QUERY CACHE · f36e854a
      Magne Mahre authored
       
      A buffer large enough to hold the query _plus_ some additional
      data is allocated before parsing is started.   The additional data 
      is used by the query cache, and consists of the name of the current 
      database and a set of flags.
       
      When a packet containing multiple SQL statements is sent to the
      server and one of the statements changes the current database
      (a "USE <db>" statement), and the name of the new current database 
      is longer than of the previous,  there is not enough space in the 
      buffer for the new name, and we write out over the buffer boundary.
      
      The fix adds an extra field to store the number of bytes
      allocated to the database name in the buffer.  If the current
      database name changes, and the new name is longer than the
      previous one, we refuse to cache the query.
      f36e854a
  6. 06 Oct, 2011 5 commits
  7. 05 Oct, 2011 12 commits
    • Bjorn Munch's avatar
      null upmerge · 52c5c4ad
      Bjorn Munch authored
      52c5c4ad
    • Bjorn Munch's avatar
      merge 5.5-mtr => 5.5 · 2aca5a8d
      Bjorn Munch authored
      2aca5a8d
    • Bjorn Munch's avatar
      merge 5.1-mtr => 5.1 · b84202db
      Bjorn Munch authored
      b84202db
    • Bjorn Munch's avatar
      Silly mistake in gdb output: replaced print with resfile_print, · 83f3aa14
      Bjorn Munch authored
      but the latter only takes one argument, duh!
      Fixed by concatenating the args (replace , with .)
      83f3aa14
    • Bjorn Munch's avatar
      Bug #12844282 62075: MTR TESTS SHOULD NOT HAVE TO SAVE & RESET INNODB_FILE_FORMAT_CHECK · dc265dc4
      Bjorn Munch authored
        This is a redo for 5.5
        Added 'innodb_file_format_max' as variable to ignore change to.
        Tests that had to restore this amended
        Two tests assumed it to be Antelope, make sure these run on a freshly
          started server
      dc265dc4
    • Sergey Glukhov's avatar
      automerge · 59c9d8e6
      Sergey Glukhov authored
      59c9d8e6
    • Sergey Glukhov's avatar
      automerge · 7b3cc8ee
      Sergey Glukhov authored
      7b3cc8ee
    • Sergey Glukhov's avatar
      automerge · 44145ce6
      Sergey Glukhov authored
      44145ce6
    • Sergey Glukhov's avatar
      5.1 -> 5.5 merge · 7141bada
      Sergey Glukhov authored
      7141bada
    • Sergey Glukhov's avatar
      Bug#11747970 34660: CRASH WHEN FEDERATED TABLE LOSES CONNECTION DURING INSERT ... SELECT · 14dc91ff
      Sergey Glukhov authored
      Problematic query:
      insert ignore into `t1_federated` (`c1`) select `c1` from  `t1_local` a
      where not exists (select 1 from `t1_federated` b where a.c1 = b.c1);
      When this query is killed in another connection it could lead to crash.
      The problem is follwing:
      An attempt to obtain table statistics for subselect table in killed query
      fails with an error. So JOIN::optimize() for subquery is failed but
      it does not prevent further subquery evaluation.
      At the first subquery execution JOIN::optimize() is called
      (see subselect_single_select_engine::exec()) and fails with
      an error. 'executed' flag is set to TRUE and it prevents
      further subquery evaluation. At the second call
      JOIN::optimize() does not happen as 'JOIN::optimized' is TRUE
      and in case of uncacheable subquery the 'executed' flag is set
      to FALSE before subquery evaluation. So we loose 'optimize stage'
      error indication (see subselect_single_select_engine::exec()).
      In other words 'executed' flag is used for two purposes, for
      error indication at JOIN::optimize() stage and for an
      indication of subquery execution. And it seems it's wrong
      as the flag could be reset.
      
      
      mysql-test/r/error_simulation.result:
        test case
      mysql-test/t/error_simulation.test:
        test case
      sql/item_subselect.cc:
        added new flag subselect_single_select_engine::optimize_error
        which is used for error detection which could happen at optimize
        stage.
      sql/item_subselect.h:
        added new flag subselect_single_select_engine::optimize_error
      sql/sql_select.cc:
        test case
      14dc91ff
    • Marko Mäkelä's avatar
      Merge mysql-5.1 to mysql-5.5. · 99b36fe6
      Marko Mäkelä authored
      99b36fe6
    • Marko Mäkelä's avatar
      Add InnoDB UNIV_SYNC_DEBUG assertions to rw-lock code. · 16c91952
      Marko Mäkelä authored
      rw_lock_x_lock_func(): Assert that the thread is not already holding
      the lock in a conflicting mode (RW_LOCK_SHARED).
      
      rw_lock_s_lock_func(): Assert that the thread is not already holding
      the lock in a conflicting mode (RW_LOCK_EX).
      16c91952
  8. 04 Oct, 2011 5 commits