1. 10 Feb, 2009 1 commit
    • Luis Soares's avatar
      BUG#13684: SP: DROP PROCEDURE|FUNCTION IF EXISTS not binlogged if routine does not exist · feb6654e
      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).
      feb6654e
  2. 09 Feb, 2009 5 commits
    • Mats Kindahl's avatar
      Merging with 5.1-bugteam. · 8948cb62
      Mats Kindahl authored
      8948cb62
    • Davi Arnaut's avatar
      Merge from upstream 5.1-bugteam. · 9a538660
      Davi Arnaut authored
      9a538660
    • Davi Arnaut's avatar
      Bug#42634: % character in query can cause mysqld signal 11 segfault · df88c8e3
      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.
      df88c8e3
    • Sergey Glukhov's avatar
      Bug#42610 Dynamic plugin broken in 5.1.31 · 5d2a707d
      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
      5d2a707d
    • Vladislav Vaintroub's avatar
      Bug#42427 : MTR v2 fails with "can't write to /tmp/mysql-test-ports.sem" on Windows · 3ff66087
      Vladislav Vaintroub authored
      - /tmp directory is not guaranteed to exist on Windows. 
      Use the value of environment variable TEMP here
      3ff66087
  3. 07 Feb, 2009 5 commits
  4. 06 Feb, 2009 16 commits
    • Joerg Bruehe's avatar
      Merge main 5.0 into 5.0-build · a3e94608
      Joerg Bruehe authored
      a3e94608
    • Joerg Bruehe's avatar
      Final merge of 5.0.72sp1 into 5.0-build · bfadc3d2
      Joerg Bruehe authored
      This involves just the tag, no file changes - they were all present before.
      bfadc3d2
    • Timothy Smith's avatar
      8ce69d9d
    • Tatiana A. Nurnberg's avatar
      auto-merge · 83f44d59
      Tatiana A. Nurnberg authored
      83f44d59
    • Tatiana A. Nurnberg's avatar
      Bug#42525: TIMEDIFF function · d7b158e7
      Tatiana A. Nurnberg authored
      In 37553 we declared longlong results for
      class Item_str_timefunc as per comments/docs,
      but didn't add a method for that. And the
      default just wasn't good enough for some
      cases.
      
      Changeset adds dedicated val_int() to class.
      
      mysql-test/r/func_sapdb.result:
        More tests for casts of TIME() / TIMEDIFF() with negative results.
      mysql-test/t/func_sapdb.test:
        More tests for casts of TIME() / TIMEDIFF() with negative results.
      sql/item_timefunc.h:
        Since we claim to provide longlong results, we should have
        a suitable function to provide them (the default won't do).
        This one matches the val_real() variant.
      d7b158e7
    • Mats Kindahl's avatar
      Bug #36763 · 2dc08879
      Mats Kindahl authored
      TRUNCATE TABLE fails to replicate when stmt-based binlogging is not supported.
      
      There were two separate problems with the code, both of which are fixed with
      this patch:
      
      1. An error was printed by InnoDB for TRUNCATE TABLE in statement mode when
         the in isolation levels READ COMMITTED and READ UNCOMMITTED since InnoDB
         does permit statement-based replication for DML statements. However,
         the TRUNCATE TABLE is not transactional, but is a DDL, and should therefore
         be allowed to be replicated as a statement.
      
      2. The statement was not logged in mixed mode because of the error above, but
         the error was not reported to the client.
      
      This patch fixes the problem by treating TRUNCATE TABLE a DDL, that is, it is
      always logged as a statement and not reporting an error from InnoDB for TRUNCATE
      TABLE.
      
      
      mysql-test/extra/binlog_tests/binlog_truncate.test:
        Adding new test to check that TRUNCATE TABLE is written correctly
        to the binary log.
      mysql-test/extra/rpl_tests/rpl_truncate.test:
        Removing redundant testing by eliminating settings of BINLOG_FORMAT.
      mysql-test/extra/rpl_tests/rpl_truncate_helper.test:
        Replacing slave and master reset code with include file.
        Removing settings of BINLOG_FORMAT.
        Replacing printing of table contents to compare master and slave
        with diff_tables.inc.
      mysql-test/suite/binlog/t/binlog_truncate_innodb.test:
        Adding test for testing that TRUNCATE TABLE is logged correctly for InnoDB
        in all isolation levels.
      mysql-test/suite/binlog/t/binlog_truncate_myisam.test:
        Adding test for testing that TRUNCATE TABLE is logged correctly for MyISAM.
      mysql-test/suite/binlog/t/disabled.def:
        Disabling binlog_truncate_innodb since it does not work (yet).
      sql/sql_base.cc:
        Correcting setting of capabilities flags to make the comparison with 0
        later in the code work correctly.
      sql/sql_delete.cc:
        Re-organizing code to ensure that TRUNCATE TABLE is logged in statement
        format and that row format is not used unless there are rows to log (which
        there are not when delete_all_rows() is called, so this has to be logged
        as a statement).
      2dc08879
    • Timothy Smith's avatar
      Auto merge from main 5.0 · 5c1c439f
      Timothy Smith authored
      5c1c439f
    • Magnus Svensson's avatar
      Bug#42366 server-cert.pem expired: "Not After : Jan 27 08:54:13 2009 GMT · 5b770856
      Magnus Svensson authored
      - remove the disbling of all ssl_* tests now when certs are fixed.
      5b770856
    • Timothy Smith's avatar
      Handle renamed nwbootstrap -> nwbuild · fde1dc7c
      Timothy Smith authored
      fde1dc7c
    • Georgi Kodinov's avatar
      merged 5.0-main -> 5.0-bugteam · a775ca6d
      Georgi Kodinov authored
      a775ca6d
    • Magnus Svensson's avatar
      Merge · 6b140948
      Magnus Svensson authored
      6b140948
    • Davi Arnaut's avatar
      Bug#42524: Function pthread_setschedprio() is defined but seems broken on i5/OS PASE · 3c9fd3cc
      Davi Arnaut authored
      The problem is that MySQL use of pthread_setschedprio is not
      supported by i5/OS and the default system behavior for unsupported
      calls is to emit a SIGILL signal which causes the server to
      abort.
      
      The solution is to treat the pthread_setschedprio as inexistent
      when compiling binaries for i5/OS. This also does not invalidate
      the fix for bug 38477 as the only supported dispatch class is
      SCHED_OTHER (which is passed to pthread_setschedparam).
      
      configure.in:
        Skip pthread_setschedprio check on i5/OS.
      3c9fd3cc
    • Alexey Kopytov's avatar
      Merge from team tree. · e523b182
      Alexey Kopytov authored
      e523b182
    • Alexey Kopytov's avatar
      6d8dff8d
    • Alexey Kopytov's avatar
    • Magnus Svensson's avatar
      Bug#42641 mtr.pl fails to run within JobObject · 21c4c99f
      Magnus Svensson authored
       - Allow the new process to break away from any job that this
         process is part of so that it can be assigned to the new JobObject
         we just created. This is safe since the new JobObject is created with
         the JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE flag, making sure it will be
         terminated when the last handle to it is closed(which is owned by
         this process).
      21c4c99f
  5. 05 Feb, 2009 13 commits
    • unknown's avatar
      Merge from mysql-5.1.31-release · d284d866
      unknown authored
      d284d866
    • Gleb Shchepa's avatar
      d5f99c0d
    • Matthias Leich's avatar
      Fix for Bug#42602 main.status: random failures · 1afb6a0e
      Matthias Leich authored
      + minor improvements
      1afb6a0e
    • Gleb Shchepa's avatar
      after-push test update (bug #39265) · 7bb8b32d
      Gleb Shchepa authored
      7bb8b32d
    • Alexey Kopytov's avatar
      2094822a
    • Alexey Kopytov's avatar
      Merge to team tree. · 1eb14730
      Alexey Kopytov authored
      1eb14730
    • Alexey Kopytov's avatar
      Merge from team tree. · a0566e5e
      Alexey Kopytov authored
      a0566e5e
    • Gleb Shchepa's avatar
      Bug #39265: fix for the bug 33699 should be reverted · bce55632
      Gleb Shchepa authored
      Documented behaviour was broken by the patch for bug 33699
      that actually is not a bug.
      
      This fix reverts patch for bug 33699 and reverts the
      UPDATE of NOT NULL field with NULL query to old
      behavior.
      
      
      mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/include/ps_modify.inc:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/auto_increment.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/csv_not_null.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/null.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/ps_2myisam.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/ps_3innodb.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/ps_4heap.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/ps_5merge.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/r/warnings.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/suite/ndb/r/ps_7ndb.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/suite/rpl/t/rpl_err_ignoredtable.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/t/auto_increment.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/t/csv_not_null.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/t/null.test:
        Bug #39265: fix for the bug 33699 should be reverted
      mysql-test/t/warnings.test:
        Bug #39265: fix for the bug 33699 should be reverted
      sql/sql_update.cc:
        Bug #39265: fix for the bug 33699 should be reverted
      bce55632
    • Gleb Shchepa's avatar
      b673b8ab
    • Gleb Shchepa's avatar
      Bug #42037: Queries containing a subquery with DISTINCT and · 31f74831
      Gleb Shchepa authored
                  ORDER BY could cause a server crash
      
      Dependent subqueries like
      
        SELECT COUNT(*) FROM t1, t2 WHERE t2.b
         IN (SELECT DISTINCT t2.b FROM t2 WHERE t2.b = t1.a)
      
      caused a memory leak proportional to the
      number of outer rows.
      
      
      The make_simple_join() function has been modified to
      JOIN class method to store join_tab_reexec and
      table_reexec values in the parent join only
      (make_simple_join of tmp_join may access these values
      via 'this' pointer of the parent JOIN).
      
      NOTE: this patch doesn't include standard test case (this is
      "out of memory" bug). See bug #42037 page for test cases.
      
      
      sql/sql_select.cc:
        Bug #42037: Queries containing a subquery with DISTINCT and
                    ORDER BY could cause a server crash
        
        The make_simple_join() function has been modified to
        JOIN class method to store join_tab_reexec and
        table_reexec values in the parent join only.
      sql/sql_select.h:
        Bug #42037: Queries containing a subquery with DISTINCT and
                    ORDER BY could cause a server crash
        
        1. The make_simple_join() function has been modified to
           JOIN class method.
        
        2. Type of JOIN::table_reexec field has been changed from
           TABLE** to TABLE *table_reexec[1]: this field always was
           NULL or a pointer to one-element array of pointers, so
           a pointer to a pointer has been replaced with one pointer
           and unnecessary memory allocation has been eliminated.
      31f74831
    • Ramil Kalimullin's avatar
      Fix for bug#42014: Crash, name_const with collate · 91d23568
      Ramil Kalimullin authored
      Problem: some queries using NAME_CONST(.. COLLATE ...)
      lead to server crash due to failed type cast.
      
      Fix: return the underlying item's type in case of
      NAME_CONST(.. COLLATE ...) to avoid wrong casting.
      
      
      mysql-test/r/func_misc.result:
        Fix for bug#42014: Crash, name_const with coll
          - test result.
      mysql-test/t/func_misc.test:
        Fix for bug#42014: Crash, name_const with coll
          - test case.
      sql/item.cc:
        Fix for bug#42014: Crash, name_const with coll
          - in case of NAME_CONST('name', 'value' COLLATE collation)
        Item_name_const::type() returns type of 'value' argument 
        to awoid wrong type casting of the Item_name_const items.
      91d23568
    • Alexey Botchkov's avatar
      merging · 9ce712cb
      Alexey Botchkov authored
      9ce712cb
    • Ramil Kalimullin's avatar
      Auto-merge · f73efac9
      Ramil Kalimullin authored
      f73efac9