• 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
sql_select.cc 550 KB