1. 08 Nov, 2006 1 commit
    • marko's avatar
      Reduce buffer pool mutex contention under >= 4 big concurrent · 0dda8605
      marko authored
      CPU-bound SELECT queries.  (Bug #15815)
      
      Fix: replace the mutex by one mutex protecting the 'flush list'
      (and the free list) and several mutexes protecting portions of the
      buffer pool, where we keep several indivudual LRU lists of pages.
      
      This patch is from Sunny Bains and Heikki Tuuri.
      0dda8605
  2. 03 Nov, 2006 1 commit
  3. 30 Oct, 2006 2 commits
  4. 26 Oct, 2006 1 commit
    • marko's avatar
      innodb.result, innodb_mysql.result: Merge changes from MySQL AB: · 58fe21c8
      marko authored
      ChangeSet
        2006/10/09 19:51:41+04:00 gkodinov@macbook.local 
        Bug #22781: SQL_BIG_RESULT fails to influence sort plan
         Currently SQL_BIG_RESULT is checked only at compile time.
         However, additional optimizations may take place after
         this check that change the sort method from 'filesort'
         to sorting via index. As a result the actual plan
         executed is not the one specified by the SQL_BIG_RESULT
         hint. Similarly, there is no such test when executing
         EXPLAIN, resulting in incorrect output.
         The patch corrects the problem by testing for
         SQL_BIG_RESULT both during the explain and execution
         phases.
      58fe21c8
  5. 19 Oct, 2006 1 commit
  6. 18 Oct, 2006 1 commit
  7. 16 Oct, 2006 2 commits
  8. 12 Oct, 2006 1 commit
  9. 10 Oct, 2006 2 commits
  10. 09 Oct, 2006 3 commits
  11. 06 Oct, 2006 1 commit
  12. 05 Oct, 2006 2 commits
    • marko's avatar
      Merge changes from MySQL AB. · fcbfbc4c
      marko authored
      dict_col_copy_type_noninline(): Remove the return statement.
      Some compilers do not allow return expressions of void type.
      
      innobase_start_or_create_for_mysql(): Do not cap srv_max_threads to 1000
      on Windows.
      
      Makefile.am (EXTRA_DIST): Add plug.in
      fcbfbc4c
    • marko's avatar
      Merge changes to mysql-test from MySQL AB. · ccc8e799
      marko authored
      innodb_unsafe_binlog, innodb_handler, innodb-big, innodb_cache-master,
      innodb-deadlock, innodb_cache: Remove.  These have been renamed in the
      MySQL tree.
      
      innodb_mysql: Update.
      ccc8e799
  13. 03 Oct, 2006 3 commits
    • marko's avatar
      storage/innobase/handler: Merge changes from MySQL AB: · d3c13fb0
      marko authored
      ChangeSet
        2006/09/30 18:44:42-07:00 brian@zim.(none) 
        Merge zim.(none):/home/brian/mysql/merge-5.1
        into  zim.(none):/home/brian/mysql/arch-5.1
      
      ChangeSet
        2006/09/30 12:49:46-07:00 brian@zim.(none) 
        This patch adds handlerton passing to functions. NDB and Innodb still require a global hanlderton in the main code due to the nature of the sql_cache call back function (should be solveable... another patch).
        Partitioning now has a flag to allow disabling of engines from being compatible with partitioning. Cleaned up heap naming convention on panic call. 
      
      ChangeSet
        2006/09/29 17:19:02-07:00 brian@zim.(none) 
        This removes the passing of global hton to engine instance. 
      
      ChangeSet
        2006/09/28 13:22:56+02:00 gbichot@dl145h.mysql.com 
        Merge gbichot@bk-internal:/home/bk/mysql-5.1-arch
        into  dl145h.mysql.com:/users/gbichot/mysql-5.1-arch
      
      ChangeSet
        2006/09/28 13:19:43+02:00 gbichot@dl145h.mysql.com 
        In the handlerton, cursor creation function don't have an argument
        and so the engine calls current_thd to derive transaction information;
        instead we now pass THD to those functions, it looks more logical
        (it makes the implicit current_thd parameter more visible).
        Approved by Brian and Monty.
      
      ChangeSet
        2006/09/26 22:51:53-07:00 brian@zim.(none) 
        Merge zim.(none):/home/brian/mysql/merge-5.1
        into  zim.(none):/home/brian/mysql/arch-5.1
      d3c13fb0
    • marko's avatar
      setup.sh: Once more. Remember that the glob expansion works relative to · c50358f6
      marko authored
      the current directory.
      c50358f6
    • marko's avatar
  14. 02 Oct, 2006 1 commit
  15. 26 Sep, 2006 2 commits
  16. 22 Sep, 2006 1 commit
  17. 21 Sep, 2006 1 commit
  18. 20 Sep, 2006 5 commits
  19. 19 Sep, 2006 3 commits
  20. 18 Sep, 2006 6 commits
    • marko's avatar
      c6fd683e
    • marko's avatar
      dict_col_t: Copy the fields of "dtype_t type" directly to this structure, · f39237e2
      marko authored
      so that all integer fields can be packed into 64 bits.  (Bug #20877)
      
      dtype_t: Change the type of all bit-fields to unsigned.
      
      dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
      dict_table_get_sys_col(), dict_field_get_col(): Return const
      dict_col_t*, so that changes to dict_col_t can be detected more
      easily.  Add const to many dict_col_t* declarations.
      
      dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
      
      dict_col_get_type(): Replace with dict_col_copy_type().
      
      dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
      dict_col_get_sql_null_size(): New functions.
      
      dtype_get_at_most_n_mbchars(): Replace the parameter dtype
      with the parameters prtype, mbminlen, mbmaxlen.
      
      dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
      cmp_whole_field(): Replace the dtype_t* parameter with the ulint
      parameters mtype, prtype.
      
      dtype_copy(): Add a const qualifier to type2 (the one being copied from).
      
      dtype_set_mblen(): Replaced with dtype_get_mblen().
      
      dtype_get_fixed_size_low(), dtype_get_min_size_low(),
      dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
      dtype_get_min_size(), and dtype_get_max_size().  These are used by the
      dict_col_get_{fixed,min,max}_size() functions.
      
      cmp_types_are_equal(): Replace with cmp_cols_are_equal().
      
      dict_table_get_col_name(): Add a const qualifier parameter to the
      parameter "table".
      
      dtype_binary, dtype_binary_val: Remove.
      
      dtype_is_fixed_size(): Remove.
      f39237e2
    • marko's avatar
      Tweak the bit-field definitions introduced since r813 to address Bug #20877. · 2d96f74a
      marko authored
      rw_lock_t: Do not make writer_is_wait_ex a bit-field.  There are no fields
      yet that could be fused to the same machine word, but we play it safe,
      because the field writer_is_wait_ex may be modified by several threads
      simultaneously.  Such fields should always be allocated an own machine
      word.
      
      dict_table_t: Change the type of all bit-fields to "unsigned".  Make
      "space" a bit-field of 32 bits.  Move name_hash and id_hash after all
      bit-fields, so that the bit-fields can be allocated together.  Do not
      make autoinc_inited a bit-field, as we cannot allocate any field
      from the same machine word.
      
      dict_build_table_def_step(): Pass a local variable to
      fil_create_new_single_table_tablespace() and initialize table->space
      from it after the call, now that table->space is a bit-field.
      2d96f74a
    • osku's avatar
      Add dict_table_get_col_name() in preparation for getting rid of · 53f8a9ff
      osku authored
      dict_col_t::name, and use it instead of col->name everywhere.
      53f8a9ff
    • marko's avatar
    • marko's avatar
      page_align(ptr): New utility function to replace · 5f53f4b4
      marko authored
      ut_align_down(ptr, UNIV_PAGE_SIZE) calls.
      5f53f4b4