1. 01 Apr, 2010 40 commits
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 624f0884
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6801 | marko | 2010-03-11 13:34:28 +0200 (Thu, 11 Mar 2010) | 2 lines
      branches/zip: mtr_memo_contains(): Relax the assertion of r6800,
      allowing mtr->state == MTR_COMMITTING.
      624f0884
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 923d34a9
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6800 | marko | 2010-03-11 12:02:57 +0200 (Thu, 11 Mar 2010) | 1 line
      branches/zip: Add ut_ad(mtr->state == MTR_ACTIVE) to various places.
      923d34a9
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · eb450e18
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6799 | jyang | 2010-03-11 09:59:42 +0200 (Thu, 11 Mar 2010) | 5 lines
      branches/zip: Once change in bug #47621 merges into zip branch,
      zip only test innodb_bug44571 needs to be updated to reflect the
      column name change would be successful be done in InnoDB as well.
      eb450e18
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 56ce1fc0
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6798 | marko | 2010-03-11 09:53:01 +0200 (Thu, 11 Mar 2010) | 14 lines
      branches/zip: Fix and clarify the latching of some buf_block_t members.
      
      buf_block_t::check_index_page_at_flush: Note that this field is not
      protected by any mutex. Make it a separate field, not a bitfield that
      could share the machine word with other fields.
      
      buf_block_t::lock_hash_val: Note that this field is protected by
      buf_block_t::lock (or during block creation, by buf_pool_mutex and
      buf_block_t::mutex).
      
      buf_block_get_lock_hash_val(): Assert that block->lock is held by the
      current thread.
      
      Issue #465, rb://267 approved by Inaam Rana
      56ce1fc0
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 2b380909
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6792 | marko | 2010-03-10 13:56:41 +0200 (Wed, 10 Mar 2010) | 1 line
      branches/zip: Copy tests from branches/5.1 that were lost in some merge.
      r6793 | marko | 2010-03-10 14:02:19 +0200 (Wed, 10 Mar 2010) | 60 lines
      branches/zip: Merge revisions 6669:6788 from branches/5.1:
      
        ------------------------------------------------------------------------
        r6774 | calvin | 2010-03-03 23:56:10 +0200 (Wed, 03 Mar 2010) | 2 lines
        Changed paths:
           M /branches/5.1/trx/trx0sys.c
      
        branches/5.1: fix bug#51653: outdated reference to set-variable
        Non functional change.
        ------------------------------------------------------------------------
        r6780 | vasil | 2010-03-08 19:13:20 +0200 (Mon, 08 Mar 2010) | 4 lines
        Changed paths:
           M /branches/5.1/plug.in
      
        branches/5.1:
      
        Whitespace fixup.
        ------------------------------------------------------------------------
        r6783 | jyang | 2010-03-09 17:54:14 +0200 (Tue, 09 Mar 2010) | 9 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb_bug21704.result
           A /branches/5.1/mysql-test/innodb_bug47621.result
           A /branches/5.1/mysql-test/innodb_bug47621.test
      
        branches/5.1: Fix bug #47621 "MySQL and InnoDB data dictionaries
        will become out of sync when renaming columns". MySQL does not
        provide new column name information to storage engine to
        update the system table. To avoid column name mismatch, we shall
        just request a table copy for now.
      
        rb://246 approved by Marko.
        ------------------------------------------------------------------------
        r6785 | vasil | 2010-03-10 09:04:38 +0200 (Wed, 10 Mar 2010) | 11 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb_bug38231.test
      
        branches/5.1:
      
        Add the missing --reap statements in innodb_bug38231.test. Probably MySQL
        enforced the presence of those recently and the test started failing like:
      
          main.innodb_bug38231                     [ fail ]
                  Test ended at 2010-03-10 08:48:32
      
          CURRENT_TEST: main.innodb_bug38231
          mysqltest: At line 49: Cannot run query on connection between send and reap
        ------------------------------------------------------------------------
        r6788 | vasil | 2010-03-10 10:53:21 +0200 (Wed, 10 Mar 2010) | 8 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb_bug38231.test
      
        branches/5.1:
      
        In innodb_bug38231.test: replace the fragile sleep 0.2 that depends on timing
        with a more robust condition which waits for the TRUNCATE and LOCK commands
        to appear in information_schema.processlist. This could also break if there
        are other sessions executing the same SQL commands, but there are none during
        the execution of the mysql test.
        ------------------------------------------------------------------------
      2b380909
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 96322594
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6791 | marko | 2010-03-10 13:39:06 +0200 (Wed, 10 Mar 2010) | 1 line
      branches/zip: Add ChangeLog entries for r6789, r6790.
      96322594
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot, fixes BUG#51356. · 1fb84358
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6790 | jyang | 2010-03-10 13:09:41 +0200 (Wed, 10 Mar 2010) | 7 lines
      branches/zip: Fix bug #51356: "many valgrind errors in error messages
      with concurrent ddl". Null terminate the name string returned
      from innobase_convert_identifier() call when reporting DB_DUPLICATE_KEY
      error in create_table_def().
      rb://266 approved by Marko
      1fb84358
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot, fixes BUG#51378. · 56768768
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6789 | jyang | 2010-03-10 11:18:18 +0200 (Wed, 10 Mar 2010) | 10 lines
      branches/zip: If a unique index is on a column prefix, such
      unique index cannot be upgrade to primary index even if there
      is no primary index already defined. Also fix possible corruption
      when initialize "ref_length" value in case there is a mismatch
      between MySQL and InnoDB primary key. Fix bug #51378: "Init
      'ref_length'  to correct value, in case an out of bound MySQL
      primary_key".
      rb://262 approved by Marko.
      56768768
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 179b3380
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6787 | marko | 2010-03-10 10:35:06 +0200 (Wed, 10 Mar 2010) | 10 lines
      branches/zip: recv_parse_log_rec(): Remove a bogus assertion about page_no.
      TODO: We might also consider removing recv_max_parsed_page_no, because
      it does not make much sense with *.ibd files.
      
      recv_report_corrupt_log(), recv_scan_log_recs(): Abort when a
      corrupted log record has been found, unless innodb_force_recovery has
      been set.
      
      This fixes Issue #464.
      rb://265 approved by Heikki Tuuri
      179b3380
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 66acbbe4
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6786 | vasil | 2010-03-10 09:16:50 +0200 (Wed, 10 Mar 2010) | 4 lines
      branches/zip:
      
      Fix typo in comment
      66acbbe4
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · bb8eec69
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6782 | marko | 2010-03-09 14:09:26 +0200 (Tue, 09 Mar 2010) | 1 line
      branches/zip: fil0fil.c: Update comments on table->flags as of r6252.
      bb8eec69
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 7197cab3
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6781 | marko | 2010-03-09 09:41:08 +0200 (Tue, 09 Mar 2010) | 4 lines
      branches/zip: Make SHOW ENGINE INNODB MUTEX display SUM(os_waits)
      for block mutexes and blocks.
      
      Designed by Michael and Marko. rb://188, Issue #358
      7197cab3
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · f37a6329
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6779 | marko | 2010-03-08 14:35:42 +0200 (Mon, 08 Mar 2010) | 6 lines
      branches/zip: Fix IMPORT TABLESPACE of compressed tables.  Previously,
      a wrong parameter was passed to buf_flush_init_for_writing().
      
      fil_reset_too_high_lsns(): Set up page_zip and use it if needed.
      
      rb://264, Issue #352
      f37a6329
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 191c9d26
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6777 | marko | 2010-03-04 13:01:25 +0200 (Thu, 04 Mar 2010) | 2 lines
      branches/zip: trx_undo_update_rec_get_update(): Silence a bogus GCC warning
      about a possibly uninitialized variable.
      191c9d26
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 3b3686b5
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6773 | marko | 2010-03-03 15:31:54 +0200 (Wed, 03 Mar 2010) | 2 lines
      branches/zip: row_raw_format(): Silence a GCC 4.4.2 warning
      of possibly uninitialized variable format_in_hex.
      3b3686b5
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · dd454412
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6771 | marko | 2010-03-03 14:52:43 +0200 (Wed, 03 Mar 2010) | 1 line
      Document r6770.
      dd454412
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 385df076
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6770 | marko | 2010-03-03 12:52:55 +0200 (Wed, 03 Mar 2010) | 12 lines
      branches/zip: Disallow duplicate index name when creating an index.
      This should fix Mantis Issue #461.
      
      innodb.test, innodb.result, innodb-index.test, innodb-index.result:
      Adjust the test result and mention that the introduced restriction
      has been reported as MySQL Bug #51451.
      
      innobase_check_index_keys(): Add a parameter for the InnoDB table and
      check that no duplicate index name is added.  Report errors by
      my_error() instead of sql_print_error().
      
      rb://260 approved by Sunny Bains
      385df076
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · c65a7413
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6768 | vasil | 2010-03-02 18:20:48 +0200 (Tue, 02 Mar 2010) | 5 lines
      branches/zip:
      
      Add a NOTE to the comment of btr_node_ptr_get_child_page_no()
      to prevent mysterious bugs.
      c65a7413
    • Sergey Vojtovich's avatar
      Applying InnoDB snashot, fixes BUG#51587. · c8be9b8f
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6767 | calvin | 2010-03-01 18:16:10 +0200 (Mon, 01 Mar 2010) | 3 lines
      branches/zip: fix bug#51587
      Non-functional change.
      c8be9b8f
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 17f8a9f2
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6754 | marko | 2010-02-24 10:56:43 +0200 (Wed, 24 Feb 2010) | 17 lines
      branches/zip: Allocate the merge sort buffers from a heap, not stack.
      
      The merge sort can use up to 48KiB of buffers when merging blocks.
      That can cause a stack overflow, especially on 64-bit systems when not
      building with inlined functions.  This was reported as Issue #462.
      
      row_merge_dup_report(): Allocate buf and offsets from a heap.
      
      row_merge_heap_create(): Allocate space for buf[3] too. Fix bogus
      sizeof arithmetics that happened to work, because
      sizeof(ulint)==sizeof(void*).
      
      row_merge_blocks(), row_merge_blocks_copy(): Allocate buf[3] from heap.
      
      row_merge_insert_index_tuples(): Allocate buf from graph_heap.
      
      rb://258 approved and tested by Sunny Bains
      17f8a9f2
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 236d0369
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6750 | marko | 2010-02-22 08:57:23 +0200 (Mon, 22 Feb 2010) | 2 lines
      branches/zip: row_fetch_store_uint4(): Remove unused function.
      This was added to trunk in r435.
      236d0369
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 44a0ff6c
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6749 | vasil | 2010-02-20 18:45:41 +0200 (Sat, 20 Feb 2010) | 5 lines
      Non-functional change: update copyright year to 2010 of the files
      that have been modified after 2010-01-01 according to svn.
      
      for f in $(svn log -v -r{2010-01-01}:HEAD |grep "^   M " |cut -b 16- |sort -u) ; do sed -i "" -E 's/(Copyright \(c\) [0-9]{4},) [0-9]{4}, (.*Innobase Oy.+All Rights Reserved)/\1 2010, \2/' $f ; done
      44a0ff6c
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 077d6f06
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6740 | sunny | 2010-02-18 13:44:31 +0200 (Thu, 18 Feb 2010) | 6 lines
      branches/zip: Don't print the entire lock bit set if the block was not
      found in the buffer pool. Only print the bits that are set and that
      information is in the lock and not in the block.
      
      See rb://256 approved by Marko.
      077d6f06
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · b5749212
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6728 | marko | 2010-02-17 18:54:04 +0200 (Wed, 17 Feb 2010) | 3 lines
      branches/zip: Remove UNIV_BASIC_LOG_DEBUG.
      This fixes the FILE_FLUSH_LSN printouts mentioned in Issue #341.
      Suggested by Heikki.
      b5749212
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 4e26411a
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6727 | marko | 2010-02-17 18:50:20 +0200 (Wed, 17 Feb 2010) | 2 lines
      branches/zip: fsp_init_file_page_low(): Declare the page uninitialized
      for Valgrind.
      4e26411a
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · d9ab329e
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6726 | marko | 2010-02-17 18:49:21 +0200 (Wed, 17 Feb 2010) | 3 lines
      branches/zip: FIL_PAGE_FILE_FLUSH_LSN: Note that the field is only valid
      for the first page of each ibdata* file, not *.ibd files.
      Suggested by Heikki, in connection with the LSN warning noted in Issue #341.
      d9ab329e
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot, fixes BUG#50691. · f1b5d853
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6724 | marko | 2010-02-17 15:52:05 +0200 (Wed, 17 Feb 2010) | 11 lines
      branches/zip: Merge revisions 6613:6669 from branches/5.1:
        ------------------------------------------------------------------------
        r6669 | jyang | 2010-02-11 12:24:19 +0200 (Thu, 11 Feb 2010) | 7 lines
      
        branches/5.1: Fix bug #50691, AIX implementation of readdir_r
        causes InnoDB errors. readdir_r() returns an non-NULL value
        in the case of reaching the end of a directory. It should
        not be treated as an error return.
      
        rb://238 approved by Marko
        ------------------------------------------------------------------------
      f1b5d853
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 6a2f4b47
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6723 | marko | 2010-02-17 11:48:34 +0200 (Wed, 17 Feb 2010) | 3 lines
      branches/zip: lock_table_other_has_incompatible():
      Return an incompatible lock or NULL instead of TRUE or FALSE.
      Approved by Sunny over IM.
      6a2f4b47
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 09a8580b
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6718 | marko | 2010-02-16 15:06:16 +0200 (Tue, 16 Feb 2010) | 1 line
      branches/zip: Fix a comment.
      09a8580b
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · f957ec3d
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6717 | marko | 2010-02-16 14:53:20 +0200 (Tue, 16 Feb 2010) | 2 lines
      branches/zip: log_reserve_and_write_fast(): Correct a race condition
      in UNIV_LOG_LSN_DEBUG.  This could have caused Issue #440.
      f957ec3d
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 2eb1bb6b
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6715 | sunny | 2010-02-16 10:14:21 +0200 (Tue, 16 Feb 2010) | 1 line
      branches/zip: Fix comment. Non functional change.
      2eb1bb6b
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 8d04789f
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6714 | sunny | 2010-02-16 10:12:25 +0200 (Tue, 16 Feb 2010) | 2 lines
      branches/zip: Update the comments and fix the whitespace issues.
      See rb://255 Approved by: Marko
      8d04789f
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 745b7e8e
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6713 | sunny | 2010-02-16 10:12:17 +0200 (Tue, 16 Feb 2010) | 7 lines
      branches/zip: Change the bit fields back to ulint. Bit fields were causing
      problems with concurrency on SMP systems because of word packing issues.
      The number of trx_t's in a system is not sufficient enough to require that
      we try and save a few bytes in the data structure.
      
      See rb://255 for details.
      745b7e8e
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 8b3a014e
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6712 | marko | 2010-02-16 10:05:36 +0200 (Tue, 16 Feb 2010) | 2 lines
      branches/zip: trx_lists_init_at_db_start(): Assert that the kernel_mutex
      is held by the caller.
      8b3a014e
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · d74c008d
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6707 | inaam | 2010-02-12 19:22:35 +0200 (Fri, 12 Feb 2010) | 4 lines
      branches/zip
      
      ChangeLog entry for r6674.
      d74c008d
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 84eb1908
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6675 | marko | 2010-02-11 22:41:11 +0200 (Thu, 11 Feb 2010) | 1 line
      branches/zip: Remove bogus debug assertions introduced in r6660.
      84eb1908
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot, fixes BUG#49535. · f6beb765
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6674 | inaam | 2010-02-11 17:54:44 +0200 (Thu, 11 Feb 2010) | 16 lines
      branches/zip bug# 49535
      
      This is a backport of r4924.
      mem_heap_get_size() scans all allocated blocks to calculate the total
      size of the heap. This patch introduces a new, total_size, field in
      mem_block_info_struct. This field is valid only for base block 
      (i.e.: the first block allocated for the heap) and is set to
      ULINT_UNDEFINED in other blocks.
      This considerably improves the performance of redo scan during recovery.
      
      rb://108 issue#216
      
      Approved by: Heikki
      f6beb765
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 08ed716d
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6673 | marko | 2010-02-11 13:09:48 +0200 (Thu, 11 Feb 2010) | 9 lines
      branches/zip: Relax a debug assertion about a missing BLOB. (Issue #452)
      When rolling back an incomplete transaction in purge, tolerate missing
      BLOBs also in update undo, when undoing an INSERT by updating a delete-marked
      record, and the delete-marked record is no longer needed.
      Previously, we only tolerated missing BLOBs in insert undo.
      This merely fixes a debug assertion; the code performed correctly
      without UNIV_DEBUG.
      
      rb://249 approved by Sunny Bains.
      08ed716d
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · d4c7bd2f
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6672 | marko | 2010-02-11 13:01:18 +0200 (Thu, 11 Feb 2010) | 1 line
      branches/zip: Introduce thr_is_recv().
      d4c7bd2f
    • Sergey Vojtovich's avatar
      Applying InnoDB snapshot · 4ccf8bff
      Sergey Vojtovich authored
      Detailed revision comments:
      
      r6660 | marko | 2010-02-11 11:21:11 +0200 (Thu, 11 Feb 2010) | 7 lines
      branches/zip: Clarify the rollback of INSERT by UPDATE of delete-marked rec.
      
      row_undo_mod_remove_clust_low(): Augment the function comment.
      
      row_undo_mod_remove_clust_low(), row_undo_mod_del_mark_or_remove_sec_low(),
      row_undo_mod_del_mark_or_remove_sec(), row_undo_mod_upd_del_sec():
      Add ut_ad(node->rec_type == TRX_UNDO_UPD_DEL_REC);
      4ccf8bff