1. 19 Dec, 2008 7 commits
  2. 18 Dec, 2008 7 commits
  3. 17 Dec, 2008 1 commit
    • John H. Embretsen's avatar
      Fix (preliminary?) for Bug#41502 - MTR v2 should not load plugins during server bootstrap. · 0ea47c97
      John H. Embretsen authored
      Adding --loose-skip-falcon option to the mysqld options provided by MTR (v2) during mysqld bootstrap in order to avoid plugin (in this case Falcon) initialization of static variables etc. Options --loose-skip-innodb and --loose-skip-ndbcluster were already included.
      
      This will fix Bug#41014 (falcon_bug_39708 fails in pushbuild in 6.0-rpl: "succeeded - should have failed")
      in the case of MTR v2 (which currently is available in -rpl branches only). 
      MTR v1 (e.g. in main 6.0 branch) does not have this problem.
      
      It would be more ideal to remove the --loose-skip-* options and provide a single option disabling all plugin initialization instead, or have bootstrap do this by default. Server modifications are (most likely) needed to be able to do that.
      
      
      mysql-test/mysql-test-run.pl:
        Reintroduced the --loose-skip-falcon bootstrap option used by the previous version of this test runner.
      0ea47c97
  4. 13 Dec, 2008 2 commits
  5. 12 Dec, 2008 5 commits
    • Andrei Elkin's avatar
      merge 5.1-rpl repository -> 5.1-rpl local · d964d3f8
      Andrei Elkin authored
      d964d3f8
    • Andrei Elkin's avatar
      Bug #40129 no-threads fails on pushbuild in 6.0-rpl, ps_stm_threadpool · fab8d1b4
      Andrei Elkin authored
            
      The test reacted on the way how mtr orders arguments for the server
      that are gathered from different source. It appeared that the opt-file
      options were parsed before those that supplied to mtr via its command
      line. In effect, the opt-file preferences got overriden by the command
      line and some tests, like no-threads, were caught by surprise: a test
      expects an option value that had been "hardcoded" into its opt-file
      but gets another one.
      This server options ordering problem exists on in the new rpl trees
      mtr.  In option of the author of this patch, the opt-file shall be
      considered as having the highest preference weight. The opt-file is
      merely a part of the header of a test, namely a part that can not be
      technically deployed along the test file.
      It's unnatural for the test writer to provide both the opt file value
      and a guard that guarantees the value will be set on in the run time.
      It's logical to provide either one: the option and its value or the
      guard.
      
      Fixed with relocating parse of the opt file to be the last among
      sources of the sever's options.
      
      A side effect: fixing a small problem of resetting the suite options
      at time the opt file starts parsing.
      
      A side effect: main.log_bin_trust_function_creators_func is disabled to
      be re-enabled with the fixes for bug#41003 will be merged from the main trees.
      
      
      mysql-test/lib/mtr_cases.pm:
        Relocating parse of the opt file to be the last. This ensure the opt file is the last
        provider for the server options so that the opt-file options have the highest preference;
        fixing a separate issue of incorrect resetting the suite options for the server;
      mysql-test/t/disabled.def:
        log_bin_trust_function_creators_func is disabled. Todo: to-reable when fixes for bug#41003
        will be merged from the main trees.
      fab8d1b4
    • Serge Kozlov's avatar
      Bug#41186: Possible reason of bug is waiting any sql error on slave instead · aa78bb30
      Serge Kozlov authored
      exact number of error. The patch does following:
      1) Add new parameter $slave_sql_errno for wait_for_slave_sql_error.inc
      2) Add waiting error 1062 (Duplicate PK) for slave SQL thread in test case.
      aa78bb30
    • Serge Kozlov's avatar
      Bug#41108: It is a testcase timeout bug so the patch fixes test code in places · 4ae3c11c
      Serge Kozlov authored
      where timeout can happen:
      1. Added waiting start/stop slave to make sure that slave works properly.
      2. Added cleanup for slave.
      3. Updated related result files.
      4ae3c11c
    • Serge Kozlov's avatar
      Bug#40142: possible reason of timeout is stopped slave threads before · 755bcd99
      Serge Kozlov authored
      sync_with_master command. The patch add waiting of proper state of slave 
      before sync with master.
      755bcd99
  6. 10 Dec, 2008 1 commit
  7. 08 Dec, 2008 1 commit
  8. 05 Dec, 2008 3 commits
  9. 04 Dec, 2008 1 commit
    • Vladislav Vaintroub's avatar
      Bug#38522: 5 seconds delay when closing application using embedded server · 8f500c52
      Vladislav Vaintroub authored
                        
      The problem here is that embedded server starts handle_thread manager 
      thread  on mysql_library_init() does not stop it on mysql_library_end().
      At shutdown, my_thread_global_end() waits for thread count to become 0,
      but since we did not stop the thread it will give up after 5 seconds.
                   
      Solution is to move shutdown for handle_manager thread from kill_server()
      (mysqld specific) to clean_up() that is used by both embedded and mysqld.
                  
      This patch also contains some refactorings - to avoid duplicate code,
      start_handle_manager() and stop_handle_manager() functions are introduced.
      Unused variables are eliminated. handle_manager does not rely on global
      variable abort_loop anymore to stop (abort_loop is not set for embedded).
                  
      Note: Specifically on Windows and when using DBUG version of libmysqld, 
      the complete solution requires removing obsolete code my_thread_init() 
      from my_thread_var(). This has a side effect that a DBUG statement 
      after my_thread_end() can cause thread counter to be incremented, and 
      embedded will hang for some seconds. Or worse, my_thread_init() will 
      crash if critical sections have been deleted by the global cleanup 
      routine that runs in a different thread. 
      
      This patch also fixes and revert prior changes for Bug#38293 
      "Libmysqld crash in mysql_library_init if language file missing".
      
      Root cause of the crash observed in Bug#38293  was bug in my_thread_init() 
      described above
      
      
      
      
      client/mysql.cc:
        sql_protocol_typelib is not exported from libmysqld
        (does not make sense either)
        thus excluded from embedded client
      dbug/dbug.c:
        revert changes for Bug#38293
      include/my_dbug.h:
        revert changes for Bug#38293
      libmysql/libmysql.c:
        Removed DBUG_POP call, because when called after my_end(), will access
        THR_key_mysys that is already deleted. The result of pthread_get_specific
        is not predictable in this case and hence DBUG_POP can crash.
      libmysqld/examples/CMakeLists.txt:
        Revert changes for Bug#38293.
      libmysqld/lib_sql.cc:
        code to start handle manager is factored out into 
        start_handle_manager() function
      libmysqld/libmysqld.def:
        Revert changes for Bug #38293
        Remove excessive exports from libmysqld, export what API documents.
      mysys/my_thr_init.c:
        Remove windows-DLL-specific workaround for something (old code, no documentation for
        what specifically). The problem is that even after my_thread_end() is finished, 
        DBUG statement can initiate my_thread_init(). This does not happen anywhere else and 
        should not happen on  Windows either.
      sql/mysql_priv.h:
        - new functions start_handle_manager() and stop_handle_manager()
        - move manager_thread_in_use  variable to sql_manager.cc and made
        it static
        - remove manager_status, as it is unused
      sql/mysqld.cc:
        Code to start/stop handle_manager thread is factored out into start_handle_manager()
      8f500c52
  10. 03 Dec, 2008 2 commits
  11. 02 Dec, 2008 4 commits
  12. 01 Dec, 2008 6 commits