1. 26 Jun, 2007 1 commit
    • vasil's avatar
      Fix Bug#29097 "fsp_get_available_space_in_free_extents() is capped at 4TB" · 88662a2d
      vasil authored
      by typecasting the variables before multiplying them, so that the result of
      the multiplication is of type "unsigned long long".
      
      I verified this fix by creating a sparse file of 6TB and forcing InnoDB to
      use it without overwriting it with zeroes (by commenting the code that
      overwrites :newraw files).
      
      New type ullint is introduced with the sole purpose of shortening
      "unsigned long long", please do not define it to something else than
      "unsigned long long".
      
      Approved by:	Heikki
      88662a2d
  2. 21 Jun, 2007 2 commits
  3. 14 Jun, 2007 1 commit
  4. 13 Jun, 2007 2 commits
  5. 12 Jun, 2007 2 commits
    • marko's avatar
      Fix a severe bug that was introduced in r1422 when fixing Bug #21101. · 640246e6
      marko authored
      When creating an index containing a too long record, InnoDB would
      dereference a NULL pointer when trying to determine the maximum row length.
      
      innodb_check_for_record_too_big_error(): Replace the dict_table_t*
      parameter with a Boolean flag.  There is not always a dict_table_t object
      when this function is called.
      
      page_get_free_space_of_empty_noninline(): Move the definition and
      declaration from row0mysql (!) to page0page.  Make the signature
      identical with page_get_free_space_of_empty().
      
      create_clustered_index_when_no_primary(): Add the parameter "comp".
      Remove unnecessary casts.
      640246e6
    • vasil's avatar
      Fix some in:/out: comments. · 5ce26f77
      vasil authored
      Approved by:	Marko
      5ce26f77
  6. 06 Jun, 2007 2 commits
  7. 04 Jun, 2007 3 commits
    • vasil's avatar
      Fix Bug#20090 as suggested in the bug followup by Heikki. · 00255d96
      vasil authored
      Approved by:	Heikki
      00255d96
    • marko's avatar
      ha_innobase::innobase_read_and_init_auto_inc(): Remember and restore · a837a4df
      marko authored
      prebuilt->sql_stat_start.  In an ALTER TABLE statement in the innodb_gis
      test, an ut_ad() assertion failed, because no IX lock had been acquired
      on the table, because prebuilt->sql_stat_start was inadvertently reset
      to FALSE, by this function.  This function was called via
      ha_innobase::info() and mysql_prepare_alter_table().
      a837a4df
    • marko's avatar
      Merge changes from MySQL AB: · 935ac4c2
      marko authored
      ChangeSet@2007-05-10 12:59:39+03:00, monty@mysql.com 
        WL#3817: Simplify string / memory area types and make things more consistent
        (first part)
        
        The following type conversions was done:
        
        - Changed byte to uchar
        - Changed gptr to uchar*
        - Change my_string to char *
        - Change my_size_t to size_t
        - Change size_s to size_t
        
        Removed declaration of byte, gptr, my_string, my_size_t and size_s. 
      [...]
      ha_innodb.cc:
        Removed some old types
        Updated hash-get-key function arguments
        Added missing casts for alloc() and printf()
        Removed some not needed casts
      
      ha_innodb.h:
        Removed some old types
      935ac4c2
  8. 01 Jun, 2007 1 commit
    • marko's avatar
      When buffering an insert to a prefix index of a variable-length column, · 3b705b44
      marko authored
      do not incorrectly mark the column as fixed-length.  (Bug #28138)
      
      ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
      dtype_new_store_for_order_and_null_size().  Add debug assertions.
      
      btr_index_rec_validate(): Correct a comment about prefix indexes.
      
      rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
      debug assertions and comments.
      
      dict_col_type_assert_equal(): New debug function.
      3b705b44
  9. 29 May, 2007 6 commits
  10. 28 May, 2007 3 commits
  11. 25 May, 2007 1 commit
  12. 23 May, 2007 2 commits
  13. 21 May, 2007 1 commit
  14. 15 May, 2007 1 commit
  15. 14 May, 2007 5 commits
  16. 11 May, 2007 3 commits
    • vasil's avatar
      Convert innobase_buffer_pool_size and innobase_log_file_size types from · 6f64bbe8
      vasil authored
      longlong to long long because MYSQL_SYSVAR_LONGLONG marco expects long long
      type.
      
      Also change
      ((ulint)innobase_buffer_pool_size) / 1024
      to
      (ulint)(innobase_buffer_pool_size / 1024)
      and remove comment which is no longer true.
      
      Provided that innobase_buffer_pool_size is always 64bits these statements
      are equivalent if ulint is 64 bit (well it will screw up if
      innobase_buffer_pool_size is negative). And if ulint is 32 bit the later
      variant gives a little more chance that the value will fit.
      
      Approved by:	Heikki
      6f64bbe8
    • vasil's avatar
      Fix typo in comment. · 6e893730
      vasil authored
      6e893730
    • marko's avatar
      Add #include <ctype.h>. Apparently, this header is no longer included by · 0188af79
      marko authored
      the common headers.  This may be related to WL#2936
      (pluggable storage engines).
      0188af79
  17. 10 May, 2007 2 commits
    • marko's avatar
      thd_to_trx(), check_trx_exists(): Remove the handlerton parameter. It is a · 9347e855
      marko authored
      singleton object whose address is stored into innodb_hton_ptr.
      9347e855
    • marko's avatar
      Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936 · 82b81a29
      marko authored
      and adapt some things.
      
      Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
      <mysql/plugin.h>.  Until the function is declared there, you can
      uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
      
      Remove storage/innobase/*/Makefile.am.  The whole compilation is driven by
      storage/innobase/Makefile.am and storage/innobase/plug.in.
      
      plug.in: Declare InnoDB as a dynamic plugin.
      
      ha_innodb.h: Remove the declarations of many global variables.  The variables
      are no longer directly referenced outside of storage/innobase.
      
      trx_t: Add the field trx->duplicates.
      
      trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
      
      innobase_query_is_update(): Remove.  Consult trx->duplicates instead.
      82b81a29
  18. 09 May, 2007 1 commit
  19. 08 May, 2007 1 commit