1. 11 Nov, 2010 2 commits
    • Dmitry Shulga's avatar
      444eabca
    • Dmitry Shulga's avatar
      Fixed bug#54375 - Error in stored procedure leaves connection · 871f3635
      Dmitry Shulga authored
      in different default schema.
      
      In strict mode, when data truncation or conversion happens,
      THD::killed is set to THD::KILL_BAD_DATA.
      
      This is abuse of KILL mechanism to guarantee that execution
      of statement is aborted.
      
      The stored procedures execution, on the other hand,
      upon detection that a connection was killed, would
      terminate immediately, without trying to restore the caller's
      context, in particular, restore the caller's current schema.
      
      The fix is, when terminating a stored procedure execution,
      to only bypass cleanup if the entire connection was killed,
      not in case of other forms of KILL.
      
      
      mysql-test/r/sp-bugs.result:
        Added result for a test case for bug#54375.
      mysql-test/t/sp-bugs.test:
        Added test case for bug#54375.
      sql/sp_head.cc:
        sp_head::execute modified: restore saved current db if
        connection is not killed.
      871f3635
  2. 10 Nov, 2010 8 commits
    • Vladislav Vaintroub's avatar
      Fix typo : SVR5=>SVR4 · 2e2f3b1f
      Vladislav Vaintroub authored
      2e2f3b1f
    • Georgi Kodinov's avatar
      7fa9b1e6
    • Georgi Kodinov's avatar
      Bug #57744: sql-common/client.c: Missing DBUG_RETURN macro · 236affe7
      Georgi Kodinov authored
      - added missing DBUG_RETURN
      - fixed whitespace according to coding style.
      236affe7
    • Oystein Grovlen's avatar
      Bug#57704 Cleanup code dies with void TABLE::set_keyread(bool): Assertion `file' failed. · bb356127
      Oystein Grovlen authored
      This bug was introduced in this revision: 
      kostja@sun.com-20100727102553-b4n2ojcyfj79l2x7
      ("A pre-requisite patch for the fix for Bug#52044.")
      
      It happens because close_thread_tables() is now called in
      open_and_lock_tables upon failure.  Hence, table is no longer
      open when optimizer tries to do cleanup.
      
      Fix: Make sure to do cleanup in st_select_lex_unit::prepare()
      upon failure. This way, cleanup() is called before tables are
      released.
      
      mysql-test/r/subselect.result:
        Added test case for Bug#57704.
      mysql-test/t/subselect.test:
        Added test case for Bug#57704.
      sql/sql_union.cc:
        st_select_lex_unit::prepare():  On failure, make sure cleanup()
        is called.
      bb356127
    • Dmitry Shulga's avatar
      null merge. · ebed5380
      Dmitry Shulga authored
      ebed5380
    • Dmitry Shulga's avatar
      Fixed bug#56619 - Assertion failed during · 4b0fe887
      Dmitry Shulga authored
      ALTER TABLE RENAME, DISABLE KEYS.
      
      The code of ALTER TABLE RENAME, DISABLE KEYS could
      issue a commit while holding LOCK_open mutex.
      This is a regression introduced by the fix for
      Bug 54453.
      This failed an assert guarding us against a potential
      deadlock with connections trying to execute
      FLUSH TABLES WITH READ LOCK.
      
      The fix is to move acquisition of LOCK_open outside
      the section that issues ha_autocommit_or_rollback().
      LOCK_open is taken to protect against concurrent
      operations with .frms and the table definition
      cache, and doesn't need to cover the call to commit.
      
      A test case added to innodb_mysql.test.
      
      The patch is to be null-merged to 5.5, which
      already has 54453 null-merged to it.
      
      mysql-test/suite/innodb/r/innodb_mysql.result:
        Added test results for test for bug#56619.
      mysql-test/suite/innodb/t/innodb_mysql.test:
        Added test for bug#56619.
      sql/sql_table.cc:
        mysql_alter_table() modified: moved acquisition of LOCK_open
        after call to ha_autocommit_or_rollback.
      4b0fe887
    • Dmitry Shulga's avatar
      Auto-merge from 5.1-bugteam for bug#57386. · d544b4ed
      Dmitry Shulga authored
      d544b4ed
    • Dmitry Shulga's avatar
      Fixed Bug#57386 - main.execution_constants segfault on MIPS64EL. · 2c16c7e9
      Dmitry Shulga authored
      sql/item_func.cc:
        Item_func::fix_fields modified: increased minimal required stack
        size in call to check_stack_overrun().
      2c16c7e9
  3. 09 Nov, 2010 9 commits
  4. 08 Nov, 2010 10 commits
  5. 07 Nov, 2010 3 commits
    • Dmitry Shulga's avatar
      7cd6bb26
    • Dmitry Shulga's avatar
      A fix and a test case for Bug#47924 -main.log_tables times out · 8f237f58
      Dmitry Shulga authored
      sporadically.
      
      The cause of the sporadic time out was a leaking protection
      against the global read lock, taken by the RENAME statement,
      and not released in case of an error occurred during RENAME.
      The leaking protection counter would lead to the value of
      protect_against_global_read never dropping to 0.
      Consequently FLUSH TABLES in all connections, including the
      one that leaked the protection, could not proceed.
       
      The fix is to ensure that all branchesin RENAME code properly
      release GRL protection.
      
      mysql-test/r/log_tables.result:
        Added results for test for bug#47924.
      mysql-test/t/log_tables.test:
        Added test for bug#47924.
      sql/sql_rename.cc:
        mysql_rename_tables() modified: replaced return from function
        to goto to clean up code block in case of error.
      8f237f58
    • He Zhenxing's avatar
  6. 06 Nov, 2010 1 commit
  7. 05 Nov, 2010 7 commits
    • Mats Kindahl's avatar
      96fba44d
    • Bjorn Munch's avatar
      upmerge 57840 · c4c19809
      Bjorn Munch authored
      c4c19809
    • Bjorn Munch's avatar
      Bug #57840 MTR: parallel execution breaks with smart ordering of test cases · 866cec61
      Bjorn Munch authored
      There were actually more problems in this area:
        Slaves (if any) were unconditionally restarted, this appears unnecessary.
        Sort criteria were suboptimal, included the test name.
      Added logic to "reserve" a sequence of tests with same config for one thread
      Got rid of sort_criteria hash, put it into the test case itself
      Adds little sanity check that expected worker picks up test
      Fixed some tests that may fail if starting on running server
      Some of these fail only if *same* test is repeated.
      Finally, special sorting of tests that do --force-restart
      866cec61
    • Guilhem Bichot's avatar
      Merge of the fix for BUG#57933 "add -Wdeclaration-after-statement to gcc builds" · da6683d3
      Guilhem Bichot authored
      from 5.1; extended here to Cmake builds.
      da6683d3
    • Guilhem Bichot's avatar
      BUG#57933 "add -Wdeclaration-after-statement to gcc builds"; · f6ae96d4
      Guilhem Bichot authored
      first part, for autotools build.
      
      config/ac-macros/maintainer.m4:
        Add the flag. With it, and as we use -Werror, we nicely get
        "error: ISO C90 forbids mixed declarations and code" if
        a declaration follows a statement in C code.
        Note that g++ refuses this flag.
      f6ae96d4
    • Guilhem Bichot's avatar
      Fix for BUG#57316 "It is not clear how to disable autocommit" · 03b9e738
      Guilhem Bichot authored
      add boolean command-line option --autocommit.
      
      mysql-test/mysql-test-run.pl:
        do in --gdb like in --ddd: to let the developer debug the startup
        phase (like command-line options parsing), don't "run".
        It's the third time I do this change, it was previously lost
        by merges, port of 6.0 to next-mr...
      mysql-test/r/mysqld--help-notwin.result:
        new command-line option
      mysql-test/r/mysqld--help-win.result:
        a Linux user's best guess at what the Windows result should be
      mysql-test/suite/sys_vars/inc/autocommit_func2.inc:
        new test
      mysql-test/suite/sys_vars/t/autocommit_func2-master.opt:
        test new option
      mysql-test/suite/sys_vars/t/autocommit_func3-master.opt:
        test new option
      sql/mysqld.cc:
        new --autocommit
      sql/mysqld.h:
        new --autocommit
      sql/sql_partition.cc:
        What matters to this partitioning quote is to have
        the OPTION_QUOTE_SHOW_CREATE flag down, it's all
        that append_identifier() uses. So we make it explicit.
      03b9e738
    • Bjorn Munch's avatar
      Bug #57749 vs-config option of mysql-test-run does not work · cf1b01e2
      Bjorn Munch authored
      Option was incorrectly coded without an argument
      Added the missing =s
      cf1b01e2