1. 27 Jan, 2006 2 commits
    • marko's avatar
      Import mysql-5.1-new changeset 1.2011.1.1 (Alexander Barkov): · a4f11935
      marko authored
      WL#1324 table name to file name encoding
      
      ha_innobase::create(): do not remove .frm extension
      
      row_is_mysql_tmp_table_name(): replace '#' with '@0023'
      a4f11935
    • marko's avatar
      Import those changes from mysql-5.1-new ChangeSet 1.1979 (Lars Thalmann) · bf58448f
      marko authored
      that were not part of r154.  (Bug #3300)
      
      innodb.test, innodb.result: Remove binlog related tests, because they
      are not InnoDB specific; they merely require a transactional table.
      
      ha_innobase::ha_innobase(): Add HA_PRIMARY_KEY_ALLOW_RANDOM_ACCESS
      to table_flags.
      
      ha_innobase::rnd_init(): Disable semi-consistent read for random access.
      bf58448f
  2. 26 Jan, 2006 2 commits
    • marko's avatar
      Port r142 of branches/5.0 (from MySQL): · f6e30775
      marko authored
      NetWare specific change to increase thread stack size.
      f6e30775
    • marko's avatar
      Implement semi-consistent read to reduce lock conflicts at the cost · e6206072
      marko authored
      of breaking serializability.  (Bug #3300)
      
      ha_innobase::unlock_row(): reset the "did semi consistent read" flag
      
      ha_innobase::was_semi_consistent_read(),
      ha_innobase::try_semi_consistent_read(): new methods
      
      row_prebuilt_t, row_create_prebuilt(): add field row_read_type for
      keeping track of semi-consistent reads
      
      row_vers_build_for_semi_consistent_read(),
      row_sel_build_committed_vers_for_mysql(): new functions
      
      row_search_for_mysql(): implement semi-consistent reads
      e6206072
  3. 24 Jan, 2006 1 commit
    • marko's avatar
      Port r152 from branches/5.0: Account for a race condition when dropping the · 65caba82
      marko authored
      adaptive hash index for a B-tree page.  (Bug #16582)
      
      btr_search_drop_page_hash_index(): Retry the operation if a hash index
      with different parameters was built meanwhile.  Add diagnostics for the
      case that hash node pointers to the page remain.  This fix is from Heikki.
      
      btr_search_info_update_hash(), btr_search_info_update_slow():
      Document the parameter "info" as in/out.
      65caba82
  4. 23 Jan, 2006 1 commit
    • marko's avatar
      Port r150 from branches/5.0: Port r19 from innodb-4.1/trunk: · 382f47da
      marko authored
      Keep track on unflushed modifications to file spaces.  When there are tens
      of thousands of file spaces, flushing all files in fil_flush_file_spaces()
      would be very slow.  (Bug #15653)
      
      fil_flush_file_spaces(): Only flush unflushed file spaces.
      
      fil_space_t, fil_system_t: Add a list of unflushed spaces.
      382f47da
  5. 20 Jan, 2006 1 commit
  6. 19 Jan, 2006 2 commits
    • marko's avatar
      Port r146 from branches/5.0: · 6234dd64
      marko authored
      Make innodb_flush_log_at_trx_commit a settable global variable.
      6234dd64
    • marko's avatar
      Port r145 from branches/5.0: · 34f1d3e6
      marko authored
      Make innodb_thread_concurrency 0 by default, and extend the useable
      range from 0 to 1000 (0 disables the thread throttling).
      
      Remove SRV_CONCURRENCY_THRESHOLD (20).  The magic value to
      disable the thread throttling is 0 from now on.
      34f1d3e6
  7. 18 Jan, 2006 2 commits
  8. 17 Jan, 2006 3 commits
  9. 12 Jan, 2006 5 commits
    • marko's avatar
      Port r132 from branches/5.0: Port r15 from innodb-4.1: · 0695353e
      marko authored
      Do not mistake TABLENAME_ibfk_0 for auto-generated id (Bug #16387).
      
      dict_table_get_highest_foreign_id(): Ignore foreign constraint identifiers
      starting with the pattern TABLENAME_ibfk_0.
      
      innodb.test, innodb.result: Add test case.
      0695353e
    • osku's avatar
      Forward port r123 from branches/5.0: · 86e48ce5
      osku authored
      Replace goto in os_event_wait with a normal loop.
      86e48ce5
    • jan's avatar
      Forward port r127 from branches/5.0: · 1cae2808
      jan authored
      Fixed a bug #16229 MySQL/InnoDB uses full explicit table locks 
      in trigger processing. Take a InnoDB table lock only if user has explicitly
      requested a table lock. Added some additional comments to store_lock() and 
      external_lock(). Added test cases for a bug. Fixed some code style errors.
      1cae2808
    • jan's avatar
      Forward port r108 from from branches/5.0: · 191ae582
      jan authored
      Fixed bug #15308: Problem of Order with Enum Column in 
      Primary Key. Added a new test case for bug #14056.
      191ae582
    • jan's avatar
      Forward port r120 from branches/5.0: · f9425367
      jan authored
      Added diagnostic code trx_print() to 
      innobase_query_caching_of_table_permitted() to find reason
      why we are holding adaptive search latch.
      f9425367
  10. 11 Jan, 2006 1 commit
    • marko's avatar
      Port r125 from branches/5.0: · 2ba82679
      marko authored
      dict_load_columns(): Set the charset-collation code
      DATA_MYSQL_BINARY_CHARSET_COLL for those binary string columns
      that lack a charset-collation code, i.e., the tables were created
      with an older version of MySQL/InnoDB than 4.1.2.  (Bug #16298)
      2ba82679
  11. 10 Jan, 2006 1 commit
  12. 05 Jan, 2006 1 commit
    • marko's avatar
      Port r118 from branches/5.0: · dd42a65a
      marko authored
      Remove some declarations of unused global variables and member variables
      of class ha_innobase.
      dd42a65a
  13. 04 Jan, 2006 1 commit
  14. 03 Jan, 2006 2 commits
    • marko's avatar
      Port r114 from branches/5.0: · 33bc8a79
      marko authored
      lock_rec_unlock(): Initialize local variable release_lock, in order to avoid
      dereferencing an uninitialized pointer when no lock exists on rec.
      
      This bug was introduced in r103 of branches/5.0, ported as r104 to trunk.
      33bc8a79
    • marko's avatar
      Merge r112 from branches/5.0: · 7515828b
      marko authored
      os_file_handle_error(): Map the error codes EXDEV, ENOTDIR, and EISDIR
      to the new code OS_FILE_PATH_ERROR.  Treat this code as OS_FILE_PATH_ERROR.
      This fixes the crash on RENAME TABLE when the .ibd file is a symbolic link
      to a different file system.  (Bug #15991)
      7515828b
  15. 30 Dec, 2005 1 commit
    • marko's avatar
      Port r110 from branches/5.0: · 6162aa39
      marko authored
      Do not log empty binlog file name at transaction commit.
      
      trx_commit_off_kernel(): Do not write empty trx->mysql_log_file_name.
      
      6162aa39
  16. 20 Dec, 2005 2 commits
    • marko's avatar
      Port r106 from branches/5.0: · 8f7f6b3c
      marko authored
      Protect the increment and decrement operations on the statistic variables
      os_n_pending_writes and os_n_pending_reads with os_file_count_mutex.
      8f7f6b3c
    • osku's avatar
      From MySQL: · 2a59184a
      osku authored
      Restore "make dist" for the header files in "innobase/include".
      2a59184a
  17. 16 Dec, 2005 1 commit
    • jan's avatar
      Port r103 from braches/5.0 to trunk. · 78e381b6
      jan authored
      Fixed a bug on unlock_row. In a unlock_row we may unlock
      only the latest lock granted to this transaction to the row.
      78e381b6
  18. 15 Dec, 2005 2 commits
    • osku's avatar
      From MySQL: · 5b2758ca
      osku authored
      Fix for BUG#11704: "Found locks from different thread" warnings:
       The source of warnings was this scenario in OPTIMIZE:
      
           thr1: lock table with TL_WRITE_ONLY (InnoDB converts lock to
           TL_WRITE_ALLOW_WRITE)
      
           thr2: (UPDATE command) obtains a TL_WRITE_ALLOW_WRITE lock
      
           thr1: call mysql_lock_abort(). This function sets type of thr'1 lock
           to TL_WRITE_ONLY
      
           thr2: try to release thr2's lock. See two locks: TL_WRITE_ONLY,
           TL_WRITE_ALLOW_WRITE and produce a warning.
         
      The fix: Make InnoDB not to convert TL_WRITE_ONLY locks to
      TL_WRITE_ALLOW_WRITE in OPTIMIZE TABLE.
      5b2758ca
    • jan's avatar
      Port r100 from branches/5.0 to trunk. · 14876884
      jan authored
      14876884
  19. 14 Dec, 2005 1 commit
    • marko's avatar
      Port r98 from branches/5.0: INCOMPATIBLE CHANGE: · eacc1b5d
      marko authored
      Do not pad VARBINARY or BINARY columns. (Bug #14189)
      
      innodb.test, innodb.result: Add test cases for foreign key constraints
      between VARBINARY and BINARY columns, and between VARCHAR BINARY and
      CHAR BINARY columns.
      
      innobase_init(): Assert that
      DATA_MYSQL_BINARY_CHARSET_COLL == my_charset_bin.number.
      
      dtype_get_pad_char(): Do not pad VARBINARY or BINARY columns.
      
      row_ins_cascade_calc_update_vec(): Refuse ON UPDATE CASCADE
      when trying to change the length of a VARBINARY column
      that refers to or is referenced by a BINARY column.  BINARY
      columns are no longer padded on comparison, and thus they
      cannot be padded on storage either.
      eacc1b5d
  20. 12 Dec, 2005 2 commits
  21. 09 Dec, 2005 2 commits
  22. 08 Dec, 2005 1 commit
    • osku's avatar
      Port r87 from branches/5.0: · 389c33b7
      osku authored
      Work around Bug #12071: Do not call os_file_create_tmpfile() at runtime.
      Instead, create all tempfiles at startup and guard access to them with
      mutexes.
      389c33b7
  23. 02 Dec, 2005 1 commit
  24. 01 Dec, 2005 1 commit
  25. 30 Nov, 2005 1 commit
    • osku's avatar
      From MySQL: · 94cdd5c0
      osku authored
      We new use TABLE_SHARE instead of TABLE when creating engine handlers.
      94cdd5c0