1. 22 Aug, 2007 4 commits
  2. 20 Aug, 2007 1 commit
  3. 15 Aug, 2007 3 commits
    • marko's avatar
      Merge r1264 from branches/zip: Avoid memory fragmentation when · 2b70474c
      marko authored
      adding column definitions to tables.
      
      dict_mem_table_add_col(): Add the parameter "heap" for temporary memory
      allocation.  Allow it and "name" to be NULL.  These parameters are NULL
      when creating dummy indexes.
      
      dict_add_col_name(): Remove calls to ut_malloc() and ut_free().
      
      dict_table_get_col_name(): Allow table->col_names to be NULL.
      
      dict_table_add_system_columns(), dict_table_add_to_cache():
      Add the parameter "heap".
      ---
      Additional changes that had to be merged from branches/zip:
      
      dict_table_add_system_columns(): New function, factored out from
      dict_table_add_to_cache().
      
      mlog_parse_index(): Add some consistency checks, and make use of
      dict_table_add_system_columns().
      2b70474c
    • marko's avatar
      Replace mysql_byte with uchar and remove the #define mysql_byte from · a4d40087
      marko authored
      ha_innodb.cc.  This cleanup was made possible as of r1550:
      
      Merge changes from MySQL AB:
      
      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
      ...
      a4d40087
    • marko's avatar
      ibuf0ibuf.c: Remove the unused prototype for dict_index_print_low() · 5067639b
      marko authored
      that was inadvertently added in r832.
      5067639b
  4. 14 Aug, 2007 1 commit
  5. 01 Aug, 2007 1 commit
  6. 31 Jul, 2007 5 commits
    • marko's avatar
      check_trx_exists(): Remove a redundant function call and assignment that · bb75aaa4
      marko authored
      was added by someone at MySQL.
      bb75aaa4
    • marko's avatar
      3cbebd96
    • marko's avatar
      Merge a change from MySQL AB: · da301ec1
      marko authored
      ChangeSet@1.1810.3176.1  2007-07-20 14:17:15+03:00  gkodinov@magare.gmz
      
      Bug #29644: alter table hangs if records locked in share mode 
      by long running transaction
      
      On Windows opened files can't be deleted. There was a special
      upgraded lock mode (TL_WRITE instead of TL_WRITE_ALLOW_READ) 
      in ALTER TABLE to make sure nobody has the table opened
      when deleting the old table in ALTER TABLE. This special mode
      was causing ALTER TABLE to hang waiting on a lock inside InnoDB.
      This special lock is no longer necessary as the server is 
      closing the tables it needs to delete in ALTER TABLE.
      Fixed by removing the special lock.
      Note that this also reverses the fix for bug 17264 that deals with
      another consequence of this special lock mode being used.
      
      ha_innodb.cc@1.202.46.1  2007-07-20 14:17:14+03:00  gkodinov@magare.gmz
      
      Bug #29644: reverse the (now excessive) fix
      for bug 17264 (but leave the test case).
      da301ec1
    • marko's avatar
      Fix the innodb.test failure mentioned in r1654. · a97acd6e
      marko authored
      a97acd6e
    • marko's avatar
      Merge changes from MySQL AB, as of the following changeset: · 80f54592
      marko authored
      ChangeSet@1.2567, 2007-07-27 14:44:31+05:00, svoj@june.mysql.com +3 -0
        Merge mysql.com:/home/svoj/devel/mysql/BUG29957/mysql-5.0-engines
        into  mysql.com:/home/svoj/devel/mysql/BUG29957/mysql-5.1-engines
        MERGE: 1.1810.2871.44
      
      One test case in innodb.test fails because of auto-increment
      changes in r1562:1653:
      
      $diff innodb.result innodb.reject
      504c504
      < 3	test2		this will work
      ---
      > 4	test2		this will work
      80f54592
  7. 30 Jul, 2007 1 commit
  8. 24 Jul, 2007 2 commits
    • vasil's avatar
      * Use START_REV instead of $(($1 + 1)) and END_REV instead of $2 · d69d10ac
      vasil authored
      * Use standard while-loop instead of the seq command
      d69d10ac
    • sunny's avatar
      Fix for bug# 16979, this is a major change in InnoDB auto-inc handling. There · 7fc6a02a
      sunny authored
      is one test that fails as of this commit. The updated test case should be
      part of the snapshot from MySQL shortly.
      
      Fix for bug# 27950 - Init AUTOINC from delete_row().
      
      Fix for bug# 28781 - Use value specified by MySQL, in update_row().
      
      Summary of structural changes:
      ==============================
      InnoDB needs to hold a table level lock for AUTOINC allocations to overcome
      the non-determinism inherent in MySQL SBR for INSERT ... SELECT. In this fix 
      for simple INSERT statements (including multi-value inserts), we try and avoid
      acquiring the special AUTOINC table level lock unless another transaction has
      already reserved the AUTOINC table level lock, in which case we fall back
      to the old behavior of acquiring the AUTOINC table level lock.
      
      The max AUTOINC value is now read directly using the low level interface
      of InnoDB.
      7fc6a02a
  9. 17 Jul, 2007 5 commits
  10. 16 Jul, 2007 3 commits
  11. 13 Jul, 2007 3 commits
  12. 10 Jul, 2007 1 commit
  13. 09 Jul, 2007 1 commit
  14. 27 Jun, 2007 1 commit
  15. 26 Jun, 2007 2 commits
    • inaam's avatar
      Bug#23710 · 3f2da00e
      inaam authored
      At InnoDB startup consider the case where log scan went beyond checkpoint_lsn as a crash and initiate crash recovery code path.
      
      reviewed by: Heikki
      3f2da00e
    • vasil's avatar
      Fix Bug#29097 "fsp_get_available_space_in_free_extents() is capped at 4TB" · 4b325712
      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
      4b325712
  16. 21 Jun, 2007 2 commits
  17. 14 Jun, 2007 1 commit
  18. 13 Jun, 2007 2 commits
  19. 12 Jun, 2007 1 commit
    • marko's avatar
      Fix a severe bug that was introduced in r1422 when fixing Bug #21101. · 3b074d7b
      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.
      3b074d7b