1. 20 Mar, 2009 4 commits
    • unknown's avatar
      Remove redundant code, probably bad automerge · 30f41550
      unknown authored
      30f41550
    • unknown's avatar
      BUG#43418: MTR2: does not notice a memory leak occuring at shutdown of · 8193c327
      unknown authored
      mysqld w/ --valgrind
      
       - Fixed by implementing parsing of error log messages generated outside of
         test case runs (eg. during server shutdown).
      
      Also make mysql-test-run.pl not delete the error log after server restart,
      which looses information about which warnings were found.
      
      Finally, make multi_update2 a --big test.
      
      mysql-test/lib/My/Test.pm:
        Fix home-brewed (and broken) serialization in My::Test to use the standard
        Storable serializer.
      mysql-test/mysql-test-run.pl:
         - Stop mysqld servers gracefully rather than kill -9 when
           warnings are being checked.
        
         - After stopping mysqld servers, do an additional parse of the error
           log to check for any warnings generated during shutdown.
          
         - Fix error log parsing to be careful not to skip parsing part of the
           file, by keeping track of previous file position rather than
           relying on mark_log markers.
        
         - Workers report warnings during shutdown to the master process with
           a new packet 'WARNINGS' which includes a list of names of test that
           might have caused the problem (could be any test run since last
           server start).
          
         - Fail entire test suite if warnings are found.
        
         - When we remove the server data dir before server restart, preserve the
           error log (don't delete it between restarts), as it may contain
           valuable information even for test cases which don't show direct
           failures.
      mysql-test/t/multi_update2.test:
        Make test --big, as it takes a _long_ time to run and only tests a single bug.
      8193c327
    • Michael Widenius's avatar
      Merge with trunk · 806ec1b0
      Michael Widenius authored
      806ec1b0
    • Michael Widenius's avatar
      Avoid compiler warnings on windows · 4dc093ce
      Michael Widenius authored
      include/config-win.h:
        Added missing typedef ssize_t
        Added some other useful defines from MySQL 6.0
      unittest/mysys/waiting_threads-t.c:
        Fixed link failure for 'ftruncate' on Windows
      4dc093ce
  2. 18 Mar, 2009 3 commits
    • unknown's avatar
      Add testing of extra port for pool-of-threads. · ce956c8f
      unknown authored
      The additional test uses up all threads in the pool with SELECT
      SLEEP(), and tests that this makes normal connections block, but
      connections on the extra port still work.
      
      Also test connection limit on extra port with and without
      pool-of-threads enabled.
      
      Add --connect-timeout option to mysqltest program.
      
      Add facility for --extra-port option to ConfigFactory.
      
      Fix regexp typo in ConfigFactory.pm
      ce956c8f
    • Michael Widenius's avatar
      Ignore generated file event-config.h · 2611d3c0
      Michael Widenius authored
      2611d3c0
    • Michael Widenius's avatar
      Added mariadb and mariadb-version as my.conf option tags · 4c83c570
      Michael Widenius authored
      Fixed compiler error when configuring without --lib-event
      
      include/mysql_version.h.in:
        Added mariadb-'version' as a my.cnf option tag for mysqld
      sql/mysqld.cc:
        Added mariadb and mariadb-version as my.conf option tags
      4c83c570
  3. 13 Mar, 2009 1 commit
  4. 12 Mar, 2009 2 commits
    • Michael Widenius's avatar
      Added missing fix from last commit · 67579fd2
      Michael Widenius authored
      67579fd2
    • Michael Widenius's avatar
      Added "pool-of-threads" handling (with libevent) · 4fe34250
      Michael Widenius authored
      This is a backport of code from MySQL 6.0 with cleanups and extensions
      
      The following new options are supported
      configure options:
        --with-libevent                  ; Enable use of libevent, which is needed for pool of threads
      
      mysqld options:
      --thread-handling=pool-of-threads  ; Use a pool of threads to handle queries
      --thread-pool-size=#               ; Define how many threads should be created to handle all queries
      --extra-port=#                     ; Extra tcp port that uses the old one-thread-per-connection method
      --extra-max-connections=#          ; Number of connections to accept to 'extra-port'
      --test-ignore-wrong-options        ; Ignore setting an enum value to a wrong option (for mysql-test-run)
      
      
      
      BUILD/SETUP.sh:
        Added libevents (and thus pool-of-threads) to max builds
      CMakeLists.txt:
        Added libevent
      Makefile.am:
        Added libevents
      config/ac-macros/libevent.m4:
        Libevent code for configure
      config/ac-macros/libevent_configure.m4:
        Libevent code for configure
      configure.in:
        Added libevents
      dbug/dbug.c:
        Added _db_is_pushed(); Needed for pool-of-threads code
      extra/Makefile.am:
        Added libevents
      extra/libevent:
        Libevent initial code
      extra/libevent/CMakeLists.txt:
        Libevent initial code
      extra/libevent/Makefile.am:
        Libevent initial code
      extra/libevent/README:
        Libevent initial code
      extra/libevent/WIN32-Code:
        Libevent initial code
      extra/libevent/WIN32-Code/config.h:
        Libevent initial code
      extra/libevent/WIN32-Code/misc.c:
        Libevent initial code
      extra/libevent/WIN32-Code/misc.h:
        Libevent initial code
      extra/libevent/WIN32-Code/tree.h:
        Libevent initial code
      extra/libevent/WIN32-Code/win32.c:
        Libevent initial code
      extra/libevent/buffer.c:
        Libevent initial code
      extra/libevent/compat:
        Libevent initial code
      extra/libevent/compat/sys:
        Libevent initial code
      extra/libevent/compat/sys/_time.h:
        Libevent initial code
      extra/libevent/compat/sys/queue.h:
        Libevent initial code
      extra/libevent/compat/sys/tree.h:
        Libevent initial code
      extra/libevent/devpoll.c:
        Libevent initial code
      extra/libevent/epoll.c:
        Libevent initial code
      extra/libevent/epoll_sub.c:
        Libevent initial code
      extra/libevent/evbuffer.c:
        Libevent initial code
      extra/libevent/evdns.c:
        Libevent initial code
      extra/libevent/evdns.h:
        Libevent initial code
      extra/libevent/event-config.h:
        Libevent initial code
      extra/libevent/event-internal.h:
        Libevent initial code
      extra/libevent/event.c:
        Libevent initial code
      extra/libevent/event.h:
        Libevent initial code
      extra/libevent/event_tagging.c:
        Libevent initial code
      extra/libevent/evhttp.h:
        Libevent initial code
      extra/libevent/evport.c:
        Libevent initial code
      extra/libevent/evrpc-internal.h:
        Libevent initial code
      extra/libevent/evrpc.c:
        Libevent initial code
      extra/libevent/evrpc.h:
        Libevent initial code
      extra/libevent/evsignal.h:
        Libevent initial code
      extra/libevent/evutil.c:
        Libevent initial code
      extra/libevent/evutil.h:
        Libevent initial code
      extra/libevent/http-internal.h:
        Libevent initial code
      extra/libevent/http.c:
        Libevent initial code
      extra/libevent/kqueue.c:
        Libevent initial code
      extra/libevent/log.c:
        Libevent initial code
      extra/libevent/log.h:
        Libevent initial code
      extra/libevent/min_heap.h:
        Libevent initial code
      extra/libevent/poll.c:
        Libevent initial code
      extra/libevent/select.c:
        Libevent initial code
      extra/libevent/signal.c:
        Libevent initial code
      extra/libevent/strlcpy-internal.h:
        Libevent initial code
      extra/libevent/strlcpy.c:
        Libevent initial code
      include/config-win.h:
        Libevent support
      include/my_dbug.h:
        ADded _db_is_pushed
      include/mysql.h.pp:
        Update to handle new prototypes
      include/typelib.h:
        Split find_type_or_exit() into two functions
      include/violite.h:
        Added vio_is_pending()
      libmysqld/Makefile.am:
        Added libevent
      mysql-test/include/have_pool_of_threads.inc:
        Added test for pool-of-threads
      mysql-test/mysql-test-run.pl:
        Don't abort based on time and don't retry test cases when run under --gdb or --debug
      mysql-test/r/crash_commit_before.result:
        USE GLOBAL for debug variable
      mysql-test/r/have_pool_of_threads.require:
        Added test for pool-of-threads
      mysql-test/r/pool_of_threads.result:
        Added test for pool-of-threads
      mysql-test/r/subselect_debug.result:
        USE GLOBAL for debug variable
      mysql-test/t/crash_commit_before.test:
        USE GLOBAL for debug variable
      mysql-test/t/merge-big.test:
        USE GLOBAL for debug variable
      mysql-test/t/pool_of_threads-master.opt:
        Added test for pool-of-threads
      mysql-test/t/pool_of_threads.test:
        Added test for pool-of-threads
      mysys/typelib.c:
        Split find_type_or_exit() into find_type_with_warning()
      sql/Makefile.am:
        Added libevent
      sql/handler.cc:
        Indentation fix.
        Fixed memory loss bug
        Fixed crash on exit when handler plugin failed
      sql/mysql_priv.h:
        Added extra_max_connections and mysqld_extra_port
        Added extern functions from sql_connect.cc
      sql/mysqld.cc:
        Added support for new mysqld options
        Added code for 'extra-port' and 'extra-max-connections'
        Split some functions into smaller pieces to be able to reuse code
        Added code for test-ignore-wrong-options
      sql/scheduler.cc:
        Updated schduler code from MySQL 6.0
      sql/scheduler.h:
        Updated schduler code from MySQL 6.0
      sql/set_var.cc:
        Added support for changing "extra_max_connections"
      sql/sql_class.cc:
        Iniitalize thread schduler options in THD
      sql/sql_class.h:
        Added to extra_port and scheduler to 'THD'
      sql/sql_connect.cc:
        Use thd->schduler to check number of connections and terminate connection
        Made some local functions global (for scheduler.cc)
      vio/viosocket.c:
        Added 'vio_pending', needed for scheduler..c
      4fe34250
  5. 09 Mar, 2009 1 commit
  6. 05 Mar, 2009 1 commit
  7. 04 Mar, 2009 2 commits
  8. 19 Feb, 2009 1 commit
    • Michael Widenius's avatar
      Merge with mysql-maria tree · 945fa0d9
      Michael Widenius authored
      mysql-test/t/variables.test:
        Reset delay_key_write, otherwise maria.maria test may fail
      sql/set_var.cc:
        Reset ha_open_options if one resets the delay_key_write variable.
        Before there was no way to reset it without restarting mysqld, which caused some tests to fail
      945fa0d9
  9. 18 Feb, 2009 1 commit
  10. 15 Feb, 2009 1 commit
  11. 13 Feb, 2009 1 commit
  12. 12 Feb, 2009 5 commits
    • Guilhem Bichot's avatar
      merge from latest 5.1-maria · b3ea683c
      Guilhem Bichot authored
      b3ea683c
    • Guilhem Bichot's avatar
      998b4ae5
    • Guilhem Bichot's avatar
      Fixing problems of previous 5.1-main->5.1-maria merge: · b90ff534
      Guilhem Bichot authored
      - adding back Serg's "mtr --list-options"
      - safe_mutex deadlock detector started raising wrong deadlock warnings, fixed
      here by a backport from 6.0-main.
      
      include/my_pthread.h:
        Porting changes done to 6.0-main which satisfy the safe_mutex deadlock detector (those
        in 5.1-main don't), see chad@mysql.com-20090126155607-n0j3zbmgbfepnmmo for explanations
      mysql-test/mysql-test-run.pl:
        adding back Serg's --list-options
      mysys/my_init.c:
        Porting changes done to 6.0-main which satisfy the safe_mutex deadlock detector (those
        in 5.1-main don't), see chad@mysql.com-20090126155607-n0j3zbmgbfepnmmo for explanations
      mysys/my_thr_init.c:
        Porting changes done to 6.0-main which satisfy the safe_mutex deadlock detector (those
        in 5.1-main don't), see chad@mysql.com-20090126155607-n0j3zbmgbfepnmmo for explanations
      b90ff534
    • Guilhem Bichot's avatar
      merge of 5.1-main into 5.1-maria. Myisam->Maria change propagation will follow. · 704b4845
      Guilhem Bichot authored
      There were so many changes into mtr (this is the new mtr coming) that I rather
      copied mtr from 6.0-main here (at least this one knows how to run Maria tests).
      I also fixed suite/maria tests to be accepted by the new mtr.
      
      mysys/thr_mutex.c:
        adding DBUG_PRINT here, so that we can locate where the warning is issued.
      704b4845
    • Sergei Golubchik's avatar
      Bug#41092 Maria: timeout in waiting_threads-t · ce8f55fe
      Sergei Golubchik authored
      it was bug in a test program, changed WT_THD's initialization to ensure they have no garbage from the previous run.
      ce8f55fe
  13. 11 Feb, 2009 1 commit
  14. 10 Feb, 2009 2 commits
  15. 09 Feb, 2009 3 commits
    • Guilhem Bichot's avatar
      Callers of translog_deassign_id_from_share() need intern_lock. · 9653feb1
      Guilhem Bichot authored
      Assert that keys don't point to bitmap pages.
      
      storage/maria/ma_blockrec.h:
        assertion
      storage/maria/ma_locking.c:
        With concurrent INSERTs, it is possible that two threads enter _ma_mark_file_changed()
        at the same time, so they should serialize their access to the "changed" state/share
        members; another reason is that this function may call _ma_update_state_lsns_sub()
        which may call translog_deassign_id_from_share() (I saw it during testing of
        online backup) which requires the intern_lock mutex.
        As INSERTs only change from "not changed" to "changed", we can first check without mutex:
        if it says "changed", some other thread has set or is setting the variables now,
        we don't need to do it; if it says "not changed", we serialize and re-check.
      9653feb1
    • Guilhem Bichot's avatar
      Comments. Take bitmap mutex lock when changing bitmap.changed. · 554eb6c2
      Guilhem Bichot authored
      storage/maria/ha_maria.cc:
        comment
      storage/maria/ma_checkpoint.c:
        comment
      storage/maria/ma_extra.c:
        use bitmap mutex when changing bitmap.changed, sounds safer
      storage/maria/ma_pagecache.c:
        comment
      storage/maria/ma_recovery.c:
        comments
      554eb6c2
    • Guilhem Bichot's avatar
      merge with latest 5.1-maria · 790fbc56
      Guilhem Bichot authored
      790fbc56
  16. 06 Feb, 2009 1 commit
  17. 05 Feb, 2009 1 commit
  18. 04 Feb, 2009 2 commits
  19. 03 Feb, 2009 2 commits
  20. 02 Feb, 2009 5 commits
    • Patrick Crews's avatar
      merge 5.0 -> 5.1 · a07a7afe
      Patrick Crews authored
      a07a7afe
    • Patrick Crews's avatar
      Bug#39369: execution of "variables.test" with "check-testcases" show differences. · 9a3afd1a
      Patrick Crews authored
      The original symptoms of this bug have been fixed as a consequence of other bug fixes.
      Taking this time to correct some formatting, such as replacing error numbers with names.
      Beginning this with 5.0
      9a3afd1a
    • Serge Kozlov's avatar
      Bug#38603: · 84a237b9
      Serge Kozlov authored
      The patch adds restart of mysql server and replacing of binlog file 
      when mysql server is stopped.
      84a237b9
    • Andrei Elkin's avatar
      Bug #41732 rpl_ndb_circular_2ch needs an updated configuration file · d34ae8c7
      Andrei Elkin authored
      There are two issues: 
            1. 6.0 uses the obsolate master-*** server options;
            2. the test is not deterministic in that although master vs slave consistency is
               fine, two runs of the test can have different results. The reason of the
               non-determinism is the combination of 
               a chosen way to demo results and the ndb_autoincrement_prefetch_sz feature.
      
      The current patch fixes the 2nd issue by putting out results via diff_table macro
      instead of the former run-sensitive method.
      The 1st issue is going to be fixed by a separate patch to 6.0.
      
      mysql-test/suite/rpl_ndb/r/rpl_ndb_circular_2ch.result:
        results changed
      mysql-test/suite/rpl_ndb/t/rpl_ndb_circular_2ch.test:
        Test is refined to put out results via diff_table macro instead of the former run-sensitive
        method.
      d34ae8c7
    • Tatiana A. Nurnberg's avatar
      auto-merge · 9186df24
      Tatiana A. Nurnberg authored
      9186df24