1. 30 Mar, 2010 2 commits
  2. 29 Mar, 2010 3 commits
  3. 19 Feb, 2010 4 commits
  4. 25 Mar, 2010 1 commit
    • Michael Widenius's avatar
      simple speed & space optimization: · 2c77c9ea
      Michael Widenius authored
      - Avoid full inline of mark_trx_read_write() for many functions
      - Avoid somewhat expensive tests for every write/update/delete row 
      
      sql/handler.h:
        Adde ha_start_of_new_statement() to reset internal variables as part of the code in "open_table" that resets TABLE object for the new statement
        Faster mark_trx_read_write_part()
      sql/sql_base.cc:
        Don't manipulate table->file internal structs directly
      2c77c9ea
  5. 23 Mar, 2010 1 commit
  6. 21 Mar, 2010 1 commit
  7. 20 Mar, 2010 1 commit
  8. 16 Mar, 2010 1 commit
    • Sergei Golubchik's avatar
      fixes for the status_user.test in ps protocol · a117dfb0
      Sergei Golubchik authored
      sql/sql_class.cc:
        reset userstat_running after the data were colleced to prevent double accounting.
        don't assert for COM_QUERY, many more are possible.
        don't update_stats() here, it's too late, lex->sql_command may be already reset
      sql/sql_parse.cc:
        update_stats() here, when the current arena is still valid
      a117dfb0
  9. 19 Mar, 2010 2 commits
  10. 18 Mar, 2010 1 commit
  11. 17 Mar, 2010 1 commit
    • Igor Babaev's avatar
      Fixed bug #539643. · 014ec6db
      Igor Babaev authored
      The cause of the problem is a bad merge MariaDB-5.1=>MariaDB-5.2.
      
      Added the vcol suite to the list of the default suites run 
      by mysql-test-run.pl.
      014ec6db
  12. 15 Mar, 2010 1 commit
  13. 12 Mar, 2010 2 commits
  14. 10 Mar, 2010 6 commits
    • Michael Widenius's avatar
      Fix for Bug #534626 MyISAM table created in MariaDB not readable by MySQL · e14291c1
      Michael Widenius authored
      storage/myisam/mi_create.c:
        Don't set HA_OPTION_NULL_FIELDS if table is not using CHECKSUM as this makes the table incompatible with MySQL.
      e14291c1
    • Michael Widenius's avatar
      Automatic merge · 7e269592
      Michael Widenius authored
      7e269592
    • Michael Widenius's avatar
      Fix for: Bug#44987 DELETE IGNORE and FK constraint · 77afc2be
      Michael Widenius authored
      - Now DELETE IGNORE skips over rows with a foreign key constraints (as it was supposed to do)
      
      
      mysql-test/r/foreign_key.result:
        Test case for Bug#44987 DELETE IGNORE and FK constraint
      mysql-test/t/foreign_key.test:
        Test case for Bug#44987 DELETE IGNORE and FK constraint
      sql/sql_delete.cc:
        Firx for Bug#44987 DELETE IGNORE and FK constraint
        Now DELETE IGNORE skips over rows with a foreign key constraints (as it was supposed to do)
        Bug fix inspired by: Moritz Mertinkat
      77afc2be
    • unknown's avatar
      Fix some compiler warnings seen in Buildbot. · 3e32ba3f
      unknown authored
      Add some extra error output and code cleanup in an attempt to fix/debug
      a rare random testsuite problem in check_warnings, where the exit code
      from mysqltest is somehow corrupted inside mysql-test-run.pl.
      
      include/my_global.h:
        Fix compiler warnings on some platforms.
      mysql-test/lib/My/SafeProcess.pm:
        Move dereference of $? subprocess exit code closer to where it is generated,
        to make the code more robust and on the chance that this will fix the
        occasional problems in check_warnings we see in Buildbot.
      mysql-test/mysql-test-run.pl:
        When check_warnings failed, also log the mysqld server for which it failed.
      sql/sql_lex.cc:
        Fix compiler warning about possibly uninitialised value, by rewriting a for()
        loop that is always executed at least once into a do .. while() loop with an
        assert.
      sql/table.cc:
        Fix compiler warning about uninitialised value.
      storage/federatedx/ha_federatedx.cc:
        Fix uninitialised variable.
      storage/maria/ma_delete.c:
        Fix compiler warning about uninitialised value.
      storage/maria/ma_loghandler.c:
        Fix compiler warning about uninitialised value.
      storage/myisam/ft_stopwords.c:
        Fix compiler warning.
      storage/myisam/mi_write.c:
        Fix compiler warning about possibly uninitialised value, by rewriting a while()
        loop that is always executed at least once into a do .. while() loop with an
        assert.
      storage/xtradb/btr/btr0cur.c:
        Fix compiler warning about possibly uninitialised value.
      support-files/compiler_warnings.supp:
        Fix warning suppression to cover all cases in yassl.
      vio/viossl.c:
        Fix compiler warning.
      3e32ba3f
    • unknown's avatar
      4d7b6a6e
    • unknown's avatar
      Fixes for two test failures in Buildbot. · b1a62979
      unknown authored
       - Adjust timing in test case, to avoid test failures caused by high load
         on machines and consequent race conditions in the test case.
      
       - Add another variant of Valgrind suppressions for memory leak in system
         libraries when unloading dynamic object files.
      
      
      mysql-test/r/information_schema.result:
        Adjust timing to avoid test failures due to races.
      mysql-test/t/information_schema.test:
        Adjust timing to avoid test failures due to races.
      mysql-test/valgrind.supp:
        Add another variant of valgrind suppression for leak in system libs.
      b1a62979
  15. 09 Mar, 2010 4 commits
    • unknown's avatar
      Fix a buildbot memory leak due to JOIN::destroy() not being called for EXPLAIN · 0230d51b
      unknown authored
      query:
      - When subquery is located in ORDER BY, EXPLAIN will run as follows:
        select_describe() will run JOIN::prepare()/optimize() for the subquery;
        then at some point subselect_single_select_engine::prepare() will be called,
        which will create another join and run join->prepare().
      
        In mainline mysql this is not a problem because subquery's join will be 
        destroyed after the first call. 
        In MariaDB, it won't (table elimination needs to keep JOIN objects around
        for longer in order to know which tables were eliminated when constructing
        EXPLAIN EXTENDED warning).
      
        Fix the problem of memory leak by calling select_lex->cleanup() in 
        subselect_single_select_engine::prepare().
      0230d51b
    • unknown's avatar
      Automerge MySQL 5.1.44 merge into MariaDB trunk. · 214edde8
      unknown authored
      214edde8
    • 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
    • unknown's avatar
      A number of after-merge fixes following merge of MySQL 5.1.44 into MariaDB. · c9dffa99
      unknown authored
      Bug#46949: memory leak with failed alter table to create partitions based on extract()
      
      Bug#51830: Incorrect partition pruning on range partition (regression)
      
      Fixed valgrind failure in select_describe(), read of uninitialized 
        Item_subselect::eliminated.
      
      PBXT test file updates to reflect changes done in MySQL.
      
      mysql-test/suite/pbxt/r/partition_error.result:
        Result file update following MySQL 5.1.44 changes.
      mysql-test/suite/pbxt/r/partition_pruning.result:
        Result file update following MySQL 5.1.44 changes.
      mysql-test/suite/pbxt/t/partition_error.test:
        Test file update following MySQL 5.1.44 changes.
      sql/item_subselect.cc:
          Fixed valgrind failure in select_describe(), read of uninitialized 
          Item_subselect::eliminated: 
          - it turns out we can call select_describe() without having fixed 
            subquery items for child subselects. These are not the kind of subqueries
            that we could eliminate, so the fix is to ensure that 
            item_subselect->eliminated==FALSE even before fix_fields is called.
            Also added code to reset item_subselect->eliminated back to FALSE in
            Item::reset() call.
      sql/item_subselect.h:
          Fixed valgrind failure in select_describe(), read of uninitialized 
          Item_subselect::eliminated: 
          - it turns out we can call select_describe() without having fixed 
            subquery items for child subselects. These are not the kind of subqueries
            that we could eliminate, so the fix is to ensure that 
            item_subselect->eliminated==FALSE even before fix_fields is called.
            Also added code to reset item_subselect->eliminated back to FALSE in
            Item::reset() call.
      sql/sql_partition.cc:
        Fix Bug#51830: Revert part of the patch for Bug#49742, which caused the regression.
      sql/table.cc:
        Fix Bug#46949: memory leak in failed ALTER TABLE with partitioning.
      c9dffa99
  16. 08 Mar, 2010 2 commits
  17. 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
  18. 04 Mar, 2010 1 commit
  19. 03 Mar, 2010 1 commit
  20. 23 Feb, 2010 2 commits
  21. 19 Feb, 2010 1 commit
  22. 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