1. 12 Feb, 2009 5 commits
    • V Narayanan's avatar
      Bug#40675 MySQL 5.1 crash with index merge algorithm and Merge tables · e80537b7
      V Narayanan authored
                  
      A Query in the MyISAM merge table was crashing 
      if the index merge algorithm was being used
      
      Index Merge optimization requires the reading of 
      multiple indexes at the same time. Reading multiple 
      indexes at once with current SE API means that we 
      need to have handler instance for each to-be-read 
      index. This is done by creating clones of the handlers 
      instances. The clone internally does a open of the handler.
      
      The open for a MERGE engine is handled in the following 
      phases
      
      1) open parent table
      2) generate list of underlying
         table
      3) attach underlying tables
      
      But the current implementation does only the first 
      phase (i.e.) open parent table.
      
      The current patch fixes this at the MERGE engine level, 
      by handling the clone operation within the MERGE engine 
      rather than in the storage engine API. It opens and 
      attaches the MyISAM tables on the MyISAM storage engine 
      interface directly within the MERGE engine. The new MyISAM 
      table instances, as well as the MERGE clone itself, are not 
      visible in the table cache. This is not a problem because
      all locking is handled by the original MERGE table from which
      this is cloned of.
      
      mysql-test/r/merge.result:
        updated the result file to reflect the new tests
        added to test the fix
      mysql-test/t/merge.test:
        Added new tests to verify that the index merge
        algorithm does not crash in the merge engine.
      storage/myisammrg/ha_myisammrg.cc:
        Implement the clone method, that handles
        
        1) Cloning the handler
        2) Opening underlying MYISAM child tables
        3) Copies the state of the original handler and the children
           into the cloned instances
        4) Sets the appropriate flags
      storage/myisammrg/ha_myisammrg.h:
        Added a flag that is set to indicate that the current 
        instance is cloned. Also added the prototype or the clone 
        method.
      storage/myisammrg/myrg_open.c:
        Since we do now again use myrg_open() in the server
        removed the comments marking this as deadcode.
      e80537b7
    • Georgi Kodinov's avatar
      merged bug 33813 to 5.1-bugteam · ccca4fec
      Georgi Kodinov authored
      ccca4fec
    • Georgi Kodinov's avatar
      merged bug 33813 to 5.0-bugteam · 7df0e72c
      Georgi Kodinov authored
      7df0e72c
    • Chad MILLER's avatar
      Merge from bug tree. · b8149f09
      Chad MILLER authored
      b8149f09
    • Chad MILLER's avatar
      Merge from bug tree. · 392c53b6
      Chad MILLER authored
      392c53b6
  2. 11 Feb, 2009 5 commits
  3. 10 Feb, 2009 14 commits
    • Mats Kindahl's avatar
      Merging with 5.1-bugteam · d7439092
      Mats Kindahl authored
      d7439092
    • Mats Kindahl's avatar
      Bug #36763 · 93ef74bf
      Mats Kindahl authored
      TRUNCATE TABLE fails to replicate when stmt-based binlogging is not supported.
      
      Correcting some tests that was failing in pushbuild as well as fixing result
      file for some tests that are not executed in the default MTR run.
      
      mysql-test/suite/binlog/t/binlog_truncate_innodb.test:
        Need to reset master to avoid the check to be for the wrong binlog file.
      mysql-test/suite/binlog/t/binlog_truncate_myisam.test:
        Need to reset master to avoid the check to be for the wrong binlog file.
      93ef74bf
    • Georgi Kodinov's avatar
      merged 5.0-bugteam to 5.1-bugteam · 50b19265
      Georgi Kodinov authored
      50b19265
    • Georgi Kodinov's avatar
      fixed a libedit compilation problem · 45681525
      Georgi Kodinov authored
      45681525
    • Mats Kindahl's avatar
      Merging with 5.1-bugteam · 9fd1d146
      Mats Kindahl authored
      9fd1d146
    • Chad MILLER's avatar
      Merge from bugteam team tree. · 52db1b81
      Chad MILLER authored
      52db1b81
    • Mats Kindahl's avatar
      BUG#36763: TRUNCATE TABLE fails to replicate when stmt-based binlogging is not supported. · 9b612d2c
      Mats Kindahl authored
      Post-merge fixes. Changes to some result sets.
      
      mysql-test/r/commit_1innodb.result:
        TRUNCATE TABLE does not cause the binary log to do commits any more.
      mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result:
        TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself.
      mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result:
        TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself.
      mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result:
        TRUNCATE TABLE is not transactional, hence does not have BEGIN/COMMIT around itself.
      mysql-test/suite/rpl/r/rpl_truncate_2myisam.result:
        STOP SLAVE was replaced with include file.
      mysql-test/suite/rpl/r/rpl_truncate_3innodb.result:
        STOP SLAVE was replaced with include file.
      9b612d2c
    • Chad MILLER's avatar
      Bug#30261: "mysqld --help" no longer possible for root · d8808625
      Chad MILLER authored
      The check for root-ness would signal an error.  Errors would make the
      server exit before usage (help) information was printed.
      
      Now, test for whether we want help regardless of whether we're going
      to exit with an error.  If plugins are not initialized by the time we 
      print usage information, inform the user that some parameters are 
      missing.
      d8808625
    • Georgi Kodinov's avatar
      merged 5.0-bugteam -> 5.1-bugteam · 29f898bb
      Georgi Kodinov authored
      29f898bb
    • Georgi Kodinov's avatar
      From jperkin : Merge libedit 2.11 and related files, · fab053cc
      Georgi Kodinov authored
      based on NetBSD CVS as of 2009/02/06 20:09:00.
      fab053cc
    • Vladislav Vaintroub's avatar
      merge · b17a310a
      Vladislav Vaintroub authored
      b17a310a
    • Luis Soares's avatar
      BUG#13684: SP: DROP PROCEDURE|FUNCTION IF EXISTS not binlogged if routine does not exist · b7b6773f
      Luis Soares authored
      There is an inconsistency with DROP DATABASE IF EXISTS, DROP
      TABLE IF EXISTS and DROP VIEW IF EXISTS: those are binlogged even
      if the DB or TABLE does not exist, whereas DROP PROCEDURE IF
      EXISTS does not. It would be nice or at least consistent if DROP
      PROCEDURE/STATEMENT worked the same too.
            
      Fixed DROP PROCEDURE|FUNCTION IF EXISTS by adding a call to
      write_bin_log in mysql_execute_command. Checked also if all
      documented "DROP (...) IF EXISTS" get binlogged. Left out DROP
      SERVER IF EXISTS because it seems that it only gets binlogged when
      using row event (see BUG#25705).
      b7b6773f
    • Bjorn Munch's avatar
      Bug #42590 MTR v1 crashes under Active State Perl · 46f91045
      Bjorn Munch authored
      Perl crashes when MTR 2 tries to start v1
      Replaced require with system()
      46f91045
    • Georgi Kodinov's avatar
      Bug #33813: Schema names are case-sensitive in DROP FUNCTION · 0669b793
      Georgi Kodinov authored
      The parser was not using the correct fully-qualified-name
      production for DROP FUNCTION.
      Fixed by copying the production from DROP PROCEDURE.
      Tested in the windows specific suite to make sure it's 
      tested on a case-insensitive file system.
      
      mysql-test/r/windows.result:
        Bug #33813: test case
      mysql-test/t/windows.test:
        Bug #33813: test case
      sql/sql_yacc.yy:
        Bug #33813: use the correct production for the name in
        DROP PROCEDURE
      0669b793
  4. 09 Feb, 2009 6 commits
    • Mats Kindahl's avatar
      Merging with 5.1-bugteam. · 8a98664d
      Mats Kindahl authored
      8a98664d
    • Davi Arnaut's avatar
      Merge from upstream 5.1-bugteam. · 86a11e6a
      Davi Arnaut authored
      86a11e6a
    • Vladislav Vaintroub's avatar
      Bug#42709: safe_process_win.cc does not print correct system error messages. · 20e57195
      Vladislav Vaintroub authored
      Fix: use FormatMessage() to output system errors , not strerror()
      20e57195
    • Davi Arnaut's avatar
      Bug#42634: % character in query can cause mysqld signal 11 segfault · bab4ff1a
      Davi Arnaut authored
      The problem is that a unfiltered user query was being passed as
      the format string parameter of sql_print_warning which later
      performs printf-like formatting, leading to crashes if the user
      query contains formatting instructions (ie: %s). Also, it was
      using THD::query as the source of the user query, but this
      variable is not meaningful in some situations -- in a delayed
      insert, it points to the table name.
      
      The solution is to pass the user query as a parameter for the
      format string and use the function parameter query_arg as the
      source of the user query.
      
      mysql-test/suite/binlog/r/binlog_unsafe.result:
        Add test case result for Bug#42634
      mysql-test/suite/binlog/t/binlog_unsafe.test:
        Add test case for Bug#42634
      sql/sql_class.cc:
        Don't pass the user query as a format string.
      bab4ff1a
    • Sergey Glukhov's avatar
      Bug#42610 Dynamic plugin broken in 5.1.31 · 4d0557a2
      Sergey Glukhov authored
      added ignore-builtin-innodb option which disabled
      initialization of builtin InnoDB plugin
      
      mysql-test/r/innodb_ignore_builtin.result:
        test case
      mysql-test/t/innodb_ignore_builtin-master.opt:
        test case
      mysql-test/t/innodb_ignore_builtin.test:
        test case
      sql/mysql_priv.h:
        added ignore-builtin-innodb option which disabled
        initialization of builtin InnoDB plugin
      sql/mysqld.cc:
        added ignore-builtin-innodb option which disabled
        initialization of builtin InnoDB plugin
      sql/set_var.cc:
        added ignore-builtin-innodb option which disabled
        initialization of builtin InnoDB plugin
      sql/sql_plugin.cc:
        added ignore-builtin-innodb option which disabled
        initialization of builtin InnoDB plugin
      4d0557a2
    • Vladislav Vaintroub's avatar
      Bug#42427 : MTR v2 fails with "can't write to /tmp/mysql-test-ports.sem" on Windows · 461cad77
      Vladislav Vaintroub authored
      - /tmp directory is not guaranteed to exist on Windows. 
      Use the value of environment variable TEMP here
      461cad77
  5. 07 Feb, 2009 5 commits
  6. 06 Feb, 2009 5 commits