1. 15 Oct, 2008 2 commits
    • marko's avatar
      branches/innodb+: Merge revisions 2774:2799 from branches/zip: · a980b544
      marko authored
        ------------------------------------------------------------------------
        r2781 | marko | 2008-10-13 13:40:57 +0300 (Mon, 13 Oct 2008) | 1 line
      
        branches/zip: page_cur_delete_rec(): Call page_zip_validate_low().
        ------------------------------------------------------------------------
        r2783 | vasil | 2008-10-13 18:34:34 +0300 (Mon, 13 Oct 2008) | 9 lines
      
        branches/zip:
      
        Remove mysql-test/patches/bug37312.diff because MySQL "fixed"
        Bug#37312 by removing the test.
      
        http://bugs.mysql.com/37312
        http://lists.mysql.com/commits/54462
        ------------------------------------------------------------------------
        r2784 | marko | 2008-10-13 21:35:30 +0300 (Mon, 13 Oct 2008) | 1 line
      
        branches/zip: Add missing NULL check to the assertion added in r2781.
        ------------------------------------------------------------------------
        r2785 | marko | 2008-10-13 22:29:12 +0300 (Mon, 13 Oct 2008) | 2 lines
      
        branches/zip: page_cur_delete_rec(): Remove the bogus page_zip_validate_low()
        assertion that was added in r2781 and explain why it was bogus.
        ------------------------------------------------------------------------
        r2786 | calvin | 2008-10-14 19:14:47 +0300 (Tue, 14 Oct 2008) | 7 lines
      
        branches/zip: fix Mantis issue #96 Problem compiling ha_innodb.cc
        on 64-bit Windows
      
        Change the definition of srv_replication_delay from ulint to ulong.
        ulint is 64-bit on Win64.
      
        Approved by:	Heikki (on IM)
        ------------------------------------------------------------------------
        r2787 | calvin | 2008-10-14 19:19:41 +0300 (Tue, 14 Oct 2008) | 7 lines
      
        branches/zip: fix compiler warning
      
        Change the definition of add_on from ulint to ullint, to eliminate
        the warning in .\btr\btr0cur.c:
        conversion from 'ullint' to 'ulint', possible loss of data
      
        Approved by:	Heikki (on IM)
        ------------------------------------------------------------------------
        r2793 | marko | 2008-10-15 10:00:06 +0300 (Wed, 15 Oct 2008) | 2 lines
      
        branches/zip: row_create_table_for_mysql(), row_create_index_for_mysql():
        Note that the dictionary object will be freed.
        ------------------------------------------------------------------------
        r2794 | marko | 2008-10-15 10:32:40 +0300 (Wed, 15 Oct 2008) | 9 lines
      
        branches/zip: When invoking page_zip_copy_recs(), update the lock table
        and the adaptive hash index.  This should fix Issue #95 and Issue #87.
      
        page_zip_copy_recs(): Copy PAGE_MAX_TRX_ID as well, to have similar behavior
        to page_copy_rec_list_start() and page_copy_rec_list_end().
      
        btr_root_raise_and_insert(), btr_page_split_and_insert(), btr_lift_page_up():
        Update the lock table and the adaptive hash index.
        ------------------------------------------------------------------------
        r2797 | marko | 2008-10-15 13:21:54 +0300 (Wed, 15 Oct 2008) | 3 lines
      
        branches/zip: Introduce UNIV_ZIP_COPY for invoking page_zip_copy_recs()
        more often in B-tree operations.
        ------------------------------------------------------------------------
        r2799 | marko | 2008-10-15 14:27:42 +0300 (Wed, 15 Oct 2008) | 25 lines
      
        branches/zip: When the server crashes while freeing an externally stored
        column of a compressed table, the BTR_EXTERN_LEN field in the BLOB pointer
        will be written as 0.  Tolerate this in the functions that deal with
        externally stored columns.  This fixes Issue #80 and was posted at rb://26.
      
        Note that the clustered index record is always deleted or purged last,
        after any secondary index records referring to it have been deleted.
      
        btr_free_externally_stored_field(): On an uncompressed table, zero out
        the BTR_EXTERN_LEN, so that half-deleted BLOBs can be detected after
        crash recovery.
      
        btr_copy_externally_stored_field_prefix(): Return 0 if the BLOB has been
        half-deleted.
      
        row_upd_ext_fetch(): Assert that the externally stored column exists.
      
        row_ext_cache_fill(): Allow btr_copy_externally_stored_field_prefix()
        to return 0.
      
        row_sel_sec_rec_is_for_blob(): Return FALSE if the BLOB has been half-deleted.
        This is correct, because the clustered index record would have been deleted
        or purged last, after any secondary index records referring to it had been
        deleted.
        ------------------------------------------------------------------------
      a980b544
    • marko's avatar
      branches/innodb+: btr_cur_search_to_nth_level(): Add a TODO comment that · d6d6f656
      marko authored
      when encountering an empty leaf page, we should advance to the right
      siblings until a non-empty page is found.  Move the initialization of
      cursor->ibuf_cnt to a better place.
      d6d6f656
  2. 11 Oct, 2008 1 commit
  3. 02 Oct, 2008 1 commit
  4. 01 Oct, 2008 1 commit
  5. 30 Sep, 2008 5 commits
    • marko's avatar
      branches/innodb+: row_search_index_entry(): Clean up the call interface · 769969cc
      marko authored
      and add assertions to callers.  Remove the added ibool* parameter and
      return enum row_search_result instead of ibool, to reflect the four
      different outcomes: record found, not found, buffered, and status unknown
      (record not in the buffer pool).
      
      rb://6
      769969cc
    • marko's avatar
      branches/innodb+: ibuf_rec_get_size(): Correct some bugs. rb://17 · 33b5eef5
      marko authored
      This function was created when the delete buffering code was merged from
      branches/fts in r2324.
      
      ibuf_rec_get_size(): Rename the parameter new_format to pre_4_1.  Use
      the correct offsets and accessors for both values of pre_4_1.
      
      ibuf_rec_get_info(): Note that the record must be in 4.1 or later format.
      33b5eef5
    • marko's avatar
      branches/innodb+: page_zip_dir_delete(): Do not clear the last record on · 99d69263
      marko authored
      a secondary index leaf page, because that could break delete buffering.
      
      btr_page_get_father_node_ptr(): Remove a TODO comment regarding this.
      99d69263
    • marko's avatar
      branches/innodb+: Minor cleanup. · 104979bf
      marko authored
      ibuf_set_entry_counter(): Turn a ut_ad() assertion into ut_a().
      
      ibuf_set_del_mark(), ibuf_delete(): Add const qualifiers to read-only
      parameters.
      104979bf
    • marko's avatar
      branches/innodb+: Non-functional changes: · e1580c30
      marko authored
      ibuf_get_entry_counter_low(): Rename from ibuf_set_entry_counter_low().
      This function only reads the counter.  Add const qualifier to the
      rec parameter.
      
      ibuf_set_entry_counter(): Document the entry parameter as in/out.
      e1580c30
  6. 29 Sep, 2008 1 commit
  7. 26 Sep, 2008 1 commit
    • marko's avatar
      branches/innodb+: Minor cleanup. · 5a6b9cf2
      marko authored
      ibuf_rec_get_info(): Eliminate the local variable "mod".  Use switch-case
      instead of if-else if-else.
      
      ibuf_rec_get_op_type(), ibuf_add_ops(), ibuf_print_ops():
      Add const qualifiers to read-only parameters.
      
      ibuf_rec_get_volume(): Remove empty line at end of block.
      5a6b9cf2
  8. 25 Sep, 2008 2 commits
  9. 24 Sep, 2008 5 commits
  10. 23 Sep, 2008 2 commits
  11. 22 Sep, 2008 8 commits
  12. 19 Sep, 2008 3 commits
    • marko's avatar
      branches/innodb+: buf0buf.c: Fix some assertions. · 583a4fb4
      marko authored
      buf_page_get_gen(): Once again, zip_size must always match the
      compressed page size of the tablespace where the page is requested from.
      This seems to hold also for all calls from the insert buffer.
      
      buf_page_optimistic_get_func(): Do not pass mtr to ibuf_page(), because
      there is no guarantee that mtr would contain an x-latch to the insert
      buffer bitmap page that covers (block->page.space, block->page.offset).
      583a4fb4
    • marko's avatar
      branches/innodb+: buf_page_get_gen(): Correct some ut_ad() assertions. · 7aeb05d8
      marko authored
      zip_size should always equal fil_space_get_zip_size(space), even when called
      from ibuf.
      
      ibuf_page() should be called with mtr=NULL to be equivalent to the original
      implementation.  We cannot assume that mtr holds an x-latch on the insert
      buffer bitmap page that covers the page that is being requested.
      7aeb05d8
    • marko's avatar
      branches/innodb+: Undo another white-space change that makes the code · 93fdc0e4
      marko authored
      differ from branches/zip.
      93fdc0e4
  13. 18 Sep, 2008 5 commits
  14. 17 Sep, 2008 3 commits