1. 09 Mar, 2010 1 commit
    • Michael Widenius's avatar
      Added count of my_sync calls (to SHOW STATUS) · 292f6568
      Michael Widenius authored
      tmp_table_size can now be set to 0 (to disable in memory internal temp tables)
      Improved speed for internal Maria temp tables:
      - Don't use packed keys, except with long text fields.
      - Don't copy key all accessed pages during key search.
      Some new benchmark tests to sql-bench (for group by)
      
      BUILD/compile-pentium64-gcov:
        Update script to use same pentium_config flags as other tests
      BUILD/compile-pentium64-gprof:
        Update script to use same pentium_config flags as other tests
      include/my_sys.h:
        Added count of my_sync calls
      mysql-test/r/variables.result:
        tmp_table_size can now be set to 0
      sql-bench/test-select.sh:
        Added some new test for GROUP BY on a not key field and group by with different order by
      sql/mysqld.cc:
        Added count of my_sync calls
        tmp_table_size can now be set to 0 (to disable in memory internal temp tables)
      sql/sql_select.cc:
        If tmp_table_size is 0, don't use in memory temp tables (good for benchmarking MyISAM/Maria temp tables)
        Don't pack keys for Maria tables;  The 8K page size makes packed keys too slow for temp tables.
      storage/maria/ma_key_recover.h:
        Moved definition to maria_def.h
      storage/maria/ma_page.c:
        Moved code used to simplify comparing of identical Maria tables to own function (page_cleanup())
        Fixed that one can read a page with a read lock.
      storage/maria/ma_rkey.c:
        For not exact key reads, cache the page where we found key (to speed up future read-next/read-prev calls)
      storage/maria/ma_search.c:
        Moved code to cache last key page to separate function.
        Instead of copying pages, only get a link to the page. This notable speeds up key searches on bigger tables.
      storage/maria/ma_write.c:
        Added comment
      storage/maria/maria_def.h:
        Moved page_cleanup() to separate function.
      292f6568
  2. 08 Mar, 2010 2 commits
  3. 06 Mar, 2010 1 commit
    • Sergey Petrunya's avatar
      LPBUG#524025 Running RQG outer_join test leads to crash · 81424b5b
      Sergey Petrunya authored
      Save no-records constant tables in JOIN::const_table_map before we invoke
      eliminate_tables(). Failure to do so caused crash when the same table was
      marked as constant two times
      
      mysql-test/r/table_elim.result:
        LPBUG#524025 Running RQG outer_join test leads to crash
        - Testcase
      mysql-test/t/table_elim.test:
        LPBUG#524025 Running RQG outer_join test leads to crash
        - Testcase
      sql/sql_select.cc:
        LPBUG#524025 Running RQG outer_join test leads to crash
        Save no-records constant tables in JOIN::const_table_map before we invoke eliminate_tables(). Failure to do so caused crash when the same table was marked as constant two times.
      81424b5b
  4. 23 Feb, 2010 2 commits
  5. 19 Feb, 2010 1 commit
  6. 18 Feb, 2010 1 commit
    • Sergey Petrunya's avatar
      LPBUG#523593: Running RQG optimizer_no_subquery crashes MariaDB · 69028d51
      Sergey Petrunya authored
      - When analying multiple equalities, take into account that they 
        may not have a single table field that belongs to one of the tables
        that we're trying to eliminate (and they are not useful for table
        elimination in that case)
      
      mysql-test/r/table_elim.result:
        LPBUG#523593: Running RQG optimizer_no_subquery crashes MariaDB
        - Testcase
      mysql-test/t/table_elim.test:
        LPBUG#523593: Running RQG optimizer_no_subquery crashes MariaDB
        - Testcase
      69028d51
  7. 17 Feb, 2010 1 commit
  8. 12 Feb, 2010 1 commit
  9. 11 Feb, 2010 1 commit
  10. 10 Feb, 2010 2 commits
    • Michael Widenius's avatar
      Added option --temporary-tables to test speed of temporary tables · af51917d
      Michael Widenius authored
      mysql-test/suite/parts/t/partition_repair_myisam-master.opt:
        Added missing file from last push
      sql-bench/bench-init.pl.sh:
        Added options:
        --temporary-tables to test speed of temporary tables
      sql-bench/server-cfg.sh:
        Added limit for number of temporary tables one can create
      sql-bench/test-connect.sh:
        Skip test that doesn't work with temporary tables.
      sql-bench/test-create.sh:
        Added limit for number of temporary tables one can create
      af51917d
    • Michael Widenius's avatar
      When one does a drop table, the indexes are not flushed to disk before drop... · d77e3cde
      Michael Widenius authored
      When one does a drop table, the indexes are not flushed to disk before drop anymore (with MyISAM/Maria)
      myisam-recover options changed from OFF to 'DEFAULT' to get less change of data loss when using MyISAM.
      (The disadvantage is that changed MyISAM tables will be checked at access time; Use --myisam-recover=OFF for old behavior)
      Don't call extra(HA_EXTRA_FORCE_REOPEN) in ALTER TABLE if table is locked as this will mark table as crashed!
      Added assert to detect if we accidently would use MyISAM versioning in MySQL
      
      include/my_base.h:
        Mark NOT_USED as USED, as we now use this as a flag to not call extra()
      mysql-test/mysql-test-run.pl:
        Don't write all options when there is something wrong with the arguments
      mysql-test/r/sp-destruct.result:
        Add missing flush of mysql.proc (as the test copied live tables)
      mysql-test/r/variables.result:
        myisam-recover options changed to 'default'
      mysql-test/r/view.result:
        Don't show create time in result
      mysql-test/suite/maria/t/maria-recovery2-master.opt:
        Don't run test with myisam-recover (as this produces extra warnings during simulated death)
      mysql-test/t/sp-destruct.test:
        Add missing flush of mysql.proc (as the test copied live tables)
      mysql-test/t/view.test:
        Don't show create time in result
      sql/lock.cc:
        Added marker if table was deleted to argument list
      sql/mysql_priv.h:
        Added marker if table was deleted to argument list
      sql/mysqld.cc:
        myisam-recover options changed from OFF to 'DEFAULT' to get less change of data loss when using MyISAM
        Allow one to specify OFF as argument to myisam-recover (was default before but one couldn't specify it)
      sql/sql_base.cc:
        Mark if table is going to be deleted
      sql/sql_delete.cc:
        Mark if table is going to be deleted
      sql/sql_table.cc:
        Mark if table is going to be deleted
        Don't call extra(HA_EXTRA_FORCE_REOPEN) in ALTER TABLE if table is locked as this will mark table as crashed!
      sql/table.cc:
        Signal to handler if table is getting deleted as part of getting droped from table cache.
      sql/table.h:
        Added marker if table is going to be deleted.
      storage/maria/ha_maria.cc:
        Don't search for transaction handler if file is not transactional or outside of transaction
        (Fixed possible core dump)
      storage/maria/ma_blockrec.c:
        Don't write changed information if table is going to be deleted.
      storage/maria/ma_close.c:
        Don't write changed information if table is going to be deleted.
      storage/maria/ma_extra.c:
        Mark tables that are deleted as crased, to ensure good behavior on restart if we suddenly crash.
      storage/maria/ma_locking.c:
        Cleanup
      storage/maria/ma_recovery.c:
        We need trnman to be inited during redo phase (to be able to open tables checked with maria_chk)
      storage/maria/maria_def.h:
        Added marker if table is going to be deleted.
      storage/myisam/mi_close.c:
        Don't write changed information if table is going to be deleted.
      storage/myisam/mi_extra.c:
        Mark tables that are deleted as crased, to ensure good behavior on restart if we suddenly crash.
      storage/myisam/mi_open.c:
        Added assert to detect if we accidently would use MyISAM versioning in MySQL
      storage/myisam/myisamdef.h:
        Added marker if table is going to be deleted.
      d77e3cde
  11. 09 Feb, 2010 1 commit
  12. 31 Jan, 2010 2 commits
  13. 30 Jan, 2010 2 commits
  14. 29 Jan, 2010 5 commits
    • Sergei Golubchik's avatar
      hide nm warnings in configure · d25273ed
      Sergei Golubchik authored
      d25273ed
    • Sergei Golubchik's avatar
      Support building with system libevent · f327a37c
      Sergei Golubchik authored
      f327a37c
    • Michael Widenius's avatar
      Patch set contributed by Alex Budovski (MCA) · e9bce6c9
      Michael Widenius authored
      Fix for Bug#31173: mysqlslap.exe crashes if called without any parameters
      
      .bzrignore:
        Fixed .bzrignore rules. Many were simply not ignoring what they were meant to.
      client/mysqlslap.c:
        Fixed bug for Bug#31173: mysqlslap.exe crashes if called without any parameters
        The original patch could cause memory leaks and odd problems depending on how connection was made.
        This code ensures that all mysql_options() are set for each mysql_real_connect().
        (This patch by Monty)
      mysys/my_thr_init.c:
        Fixed multiply-initialized critical section on Windows, due to code incorrectly
        checking the wrong field in an attempt to prevent multiple-initialization.
      sql-common/client.c:
        Don't use shared memory if it's not set (for example after failed mysql_real_connect).
        Ensure that mysql_close() resets all resources so that it's safe to call it twice.
        (Patch by monty, related to Bug#31173: mysqlslap.exe crashes if called without any parameters)
      sql/CMakeLists.txt:
         Added page fault counters for SHOW PROFILE on Windows.
      sql/mysqld.cc:
        Fixed attempt to set a NULL event. The code now only sets the event if appropriate (i.e. shared memory is being used)
      sql/sql_profile.cc:
        Added page fault counters for SHOW PROFILE on Windows.
      sql/sql_profile.h:
        Added page fault counters for SHOW PROFILE on Windows.
      sql/udf_example.def:
        Some cleanup functions were not exported from udf_example.dll, causing them to
        never be executed, and as a result multiple-initialization of kernel objects
        occurred and resources were not being freed correctly.
      storage/maria/ma_close.c:
        Condition variable share->key_del_cond was never being destroyed, while its
        containing heap block was being freed in maria_close(), leaking kernel
        resources.
      e9bce6c9
    • Michael Widenius's avatar
      Auto merge · ea0380f4
      Michael Widenius authored
      ea0380f4
    • Michael Widenius's avatar
      Changed version number from RC to stable · 4847e50d
      Michael Widenius authored
      Fixed bug in Yassle to get correct error messages in case of errors
      Provide better error messages in case of ssl connect failure
      Updated out-of-date ssl certificates to fix failing mysql-test-system (certificates now active for 10 years)
      Fixed bug in query_cache that could cause asserts and hangs in DEBUG builds.
      Fixed bug where one connection did not see changes done by another connection.
      
      configure.in:
        Changed version number from RC to stable
      extra/yassl/src/yassl_error.cpp:
        Fixed bug in Yassle to get correct error messages in case of errors
        - 'error' is an enum that hold more error numbers than the enum was defined for
      include/violite.h:
        Added error output string for sslaccept() and sslconnect() to get reason for connect failure
      mysql-test/mysql-test-run.pl:
        Write failed test cases if mysql-test-run fails because of too many errors
      mysql-test/r/grant.result:
        Update results to reflect new certificates
      mysql-test/r/openssl_1.result:
        Update results to reflect new certificates
      mysql-test/std_data/cacert.pem:
        Update ssl certificate
      mysql-test/std_data/client-cert.pem:
        Update ssl certificate
      mysql-test/std_data/client-key.pem:
        Update ssl certificate
      mysql-test/std_data/server-cert.pem:
        Update ssl certificate
      mysql-test/std_data/server-key.pem:
        Update ssl certificate
      mysql-test/t/grant.test:
        Update test to reflect new certificates
      mysql-test/t/openssl_1.test:
        Update test to reflect new certificates
      mysql-test/t/query_cache_debug.test:
        Remove 'big_test' as test is now fast
      sql-common/client.c:
        Give a better error message if ssl connect fails
      sql/net_serv.cc:
        Fixed compiler warnings
      sql/slave.cc:
        Give a better error message in logs if ssl connect fails
      sql/sql_cache.cc:
        debug_wait_for_kill() now removes the set watch variable after kill signal
        This is needed as invalidate_table() may be called twice for one query.
        Ensure that net->query_cache_query is reset after query. This fixes assert in
        query_cache_end_of_result() if query_cache_query holds results from previous query.
        Removed DBUG_ASSERT(0), as this code can be run by query_cache_debug.test
      sql/sql_connect.cc:
        Give a better error message if ssl connect fails
      sql/sql_parse.cc:
        Fixed bug where one connection did not see changes done by another connection.
        For statements that changes tables, close_thread_tables() MUST be called before
        sending OK as a table handler may not make the changes available for other connections
        before unlock_tables().
      vio/viossl.c:
        Give a better error message if ssl connect fails
      4847e50d
  15. 28 Jan, 2010 4 commits
    • unknown's avatar
      44d2bf54
    • Michael Widenius's avatar
      Fixed compiler warnings & failing test cases · a0417475
      Michael Widenius authored
      When compiling with debug, don't clear buffer in 'net_clear()'
      - This allows us to easier find bugs in the protocol and also get repeatable test failures in test cases where someone forgot to do --reap
      
      client/mysqltest.cc:
        Fixed compiler warning
      mysql-test/t/partition_innodb_semi_consistent.test:
        Added missing --reap (fixes random failure)
      sql/net_serv.cc:
        When compiling with debug, don't clear buffer in 'net_clear()'
        - This allows us to easier find bugs in the protocol and also get repeatable test failures in test cases where someone forgot to do --reap
      storage/myisam/ft_boolean_search.c:
        Fixed compiler warnings
      storage/myisam/ft_parser.c:
        Fixed compiler warnings
      storage/myisam/ft_stopwords.c:
        Fixed compiler warnings
      support-files/compiler_warnings.supp:
        Added a lot of new suppression of not relevant warnings and warnings in systems we are not in charge of
      unittest/mysys/waiting_threads-t.c:
        Fixed compiler warnings
      a0417475
    • Michael Widenius's avatar
      Merge with fixes for compiler warnings and 2 fixed test cases · e926af9b
      Michael Widenius authored
      Fixed some additional compiler warnings from OpenSolaris build.
      
      
      extra/libevent/devpoll.c:
        Fixed compiler warning
      mysys/my_file.c:
        Fixed compiler warning
      sql/mysqld.cc:
        Fixed compiler warning
      sql/rpl_record.cc:
        Removed not used variable
      storage/maria/ma_blockrec.c:
        Fixed compiler warning
      storage/xtradb/buf/buf0buf.c:
        Fixed compiler warning
      storage/xtradb/handler/i_s.cc:
        Fixed compiler warning
      support-files/compiler_warnings.supp:
        Added suppression of compiler warnings in InnoDB/XtraDB
        Added suppression of compiler warnings that can safely be ignored.
      e926af9b
    • unknown's avatar
      automerge windows fixes. · ef0416c1
      unknown authored
      ef0416c1
  16. 27 Jan, 2010 3 commits
    • Michael Widenius's avatar
      Fixed some compiler warnings and errors in test suite found by buildbot · e2efd933
      Michael Widenius authored
      include/ft_global.h:
        Changed string size to 'size_t' (to avoid compiler warnings later)
      include/maria.h:
        Changed string size to 'size_t' (to avoid compiler warnings later)
      mysql-test/r/show_check.result:
        Don't use logging to tables, as there is no guarantee in which order tables are showed in 'show open tables'
      mysql-test/suite/rpl/t/rpl_rotate_logs.test:
        Use HIGH_PRIORITY inserts to avoid problem with concurrent inserts on the slave.
      mysql-test/t/show_check-master.opt:
        Don't use logging to tables, as there is no guarantee in which order tables are showed in 'show open tables'
      sql/item.cc:
        Fixed compiler warning
      storage/maria/ft_maria.c:
        Changed string size to 'size_t' (to avoid compiler warnings later)
      storage/myisam/ft_boolean_search.c:
        Fixed compiler warnings
      storage/myisam/ft_myisam.c:
        Changed string size to 'size_t' (to avoid compiler warnings later)
      storage/myisam/ft_nlq_search.c:
        Changed string size to 'size_t' (to avoid compiler warnings later)
      storage/myisam/ft_parser.c:
        Changed string size to 'size_t' (to avoid compiler warnings)
      storage/myisam/ft_stopwords.c:
        Changed string size to 'size_t' (to avoid compiler warnings)
      storage/myisam/ftdefs.h:
        Changed string size to 'size_t' (to avoid compiler warnings)
      e2efd933
    • unknown's avatar
      Fix test failures due to previous change of not setting TZ by default. · 7c8983e9
      unknown authored
      Fix by explicitly setting timezone for a few more tests that need it.
      (We avoid setting TZ everywhere by default as this breaks some tests
      on windows).
      
      Also add fix of two other windows failures due to non-portable
      suppressions, thanks to Alex Budovski.
      
      mysql-test/mysql-test-run.pl:
        Don't let --timezone option from one test stray into the next test
        (mostly to make results more deterministic rather than depend on
        whatever test happens to run just before).
      mysql-test/suite/maria/r/maria-recover.result:
        Fix suppression pattern to also work with Windows \ path separator.
      mysql-test/suite/maria/t/maria-recover.test:
        Fix suppression pattern to also work with Windows \ path separator.
      mysql-test/suite/parts/inc/partition_timestamp.inc:
        Set timezone explicitly for test that needs it.
      mysql-test/suite/parts/r/partition_recover_myisam.result:
        Fix suppression pattern to also work with Windows \ path separator.
      mysql-test/suite/parts/t/partition_recover_myisam.test:
        Fix suppression pattern to also work with Windows \ path separator.
      mysql-test/t/mysqlbinlog_row-master.opt:
        Set timezone explicitly for test that needs it.
      mysql-test/t/mysqlbinlog_row_innodb-master.opt:
        Set timezone explicitly for test that needs it.
      mysql-test/t/mysqlbinlog_row_myisam-master.opt:
        Set timezone explicitly for test that needs it.
      mysql-test/t/mysqlbinlog_row_trans-master.opt:
        Set timezone explicitly for test that needs it.
      7c8983e9
    • Sergei Golubchik's avatar
      YaSSL cert info buffer overflow fix · 0d09e3a5
      Sergei Golubchik authored
      Apply a diff from
        [Yassl-commit] yassl/taocrypt/src asn.cpp,1.13,1.14
        [Yassl-commit] yassl/taocrypt/include asn.hpp,1.9,1.10
      Original patch
        http://lists.mysql.com/commits/96697
      
      extra/yassl/taocrypt/include/asn.hpp:
        [Yassl-commit] yassl/taocrypt/include asn.hpp,1.9,1.10
      extra/yassl/taocrypt/src/asn.cpp:
        [Yassl-commit] yassl/taocrypt/src asn.cpp,1.13,1.14
      0d09e3a5
  17. 26 Jan, 2010 1 commit
  18. 22 Jan, 2010 1 commit
  19. 19 Jan, 2010 1 commit
    • unknown's avatar
      Fix Windows test failures in binlog tests in certain time zones. · 80ac8858
      unknown authored
      On Unix systems TZ can be set to change the time zone for specific processes only.
      But on Windows this does not fully work. It changes some aspects of time zones
      in the system but not others (notably localtime() vs. file system time stamps).
      
      This causes test failures in Windows in certain time zones (but not all),
      where PURGE BEFORE DATE statements get the wrong files when TZ is set to
      +03:00 by default.
      
      Fix by only setting TZ in the small number of tests that really need it, and leave
      it untouched in the rest.
      
      Thanks to Alex Budovski for helping with this.
      
      mysql-test/include/ps_conv.inc:
        Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
      mysql-test/mysql-test-run.pl:
        Do not set TZ by default, as it causes problems on Windows.
      mysql-test/suite/binlog/r/binlog_unsafe.result:
        Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
      mysql-test/suite/binlog/t/binlog_unsafe.test:
        Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
      mysql-test/suite/rpl/r/rpl_mixed_ddl_dml.result:
        Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
      mysql-test/suite/rpl/t/rpl_mixed_ddl_dml.test:
        Explicitly set TIME_ZONE, as mysql-test-run.pl now does not set it.
      mysql-test/t/mysqlbinlog2-master.opt:
        mysql-test-run.pl no longer sets TZ by default, so set it explicitly for this particular test.
      80ac8858
  20. 18 Jan, 2010 1 commit
    • unknown's avatar
      Fixes for some randomly occuring test failures in Buildbot. · 159ff4c1
      unknown authored
      mysql-test/r/innodb-timeout.result:
        Make test more robust to scheduling delays on the host running the test suite.
      mysql-test/suite/rpl/r/rpl_relayspace.result:
        Apply patch from BUG#25228 and tweak timeout value in an attempt to fix random
        failure of this test in Buildbot (could not repeat locally).
      mysql-test/suite/rpl/t/rpl_relayspace.test:
        Apply patch from BUG#25228 and tweak timeout value in an attempt to fix random
        failure of this test in Buildbot (could not repeat locally).
      mysql-test/t/innodb-timeout.test:
        Make test more robust to scheduling delays on the host running the test suite.
      mysql-test/valgrind.supp:
        Add suppression for Glibc bug.
      159ff4c1
  21. 17 Jan, 2010 3 commits
  22. 16 Jan, 2010 1 commit
    • unknown's avatar
      Result file updates following merge of MySQL 5.1.42 and XtraDB 9. · ccdd2c23
      unknown authored
      mysql-test/suite/funcs_1/r/is_columns_is.result:
        XTRADB_ADMIN_COMMAND table added.
        Column name change: "accessed" -> "access" (XtraDB 9 change).
      mysql-test/suite/funcs_1/r/is_tables_is.result:
        XTRADB_ADMIN_COMMAND table added.
      mysql-test/suite/pbxt/r/func_group.result:
        Update results to be correct following fix of Bug#43668.
      mysql-test/suite/pbxt/r/mysqlshow.result:
        XTRADB_ADMIN_COMMAND table added.
      ccdd2c23
  23. 15 Jan, 2010 2 commits