1. 18 Aug, 2006 3 commits
  2. 17 Aug, 2006 3 commits
  3. 16 Aug, 2006 1 commit
    • marko's avatar
      branches/zip: Clean up debug code. · 41468be9
      marko authored
      struct mtr_struct: Omit unused field "state" unless #ifdef UNIV_DEBUG.
      
      buf_block_buf_fix_inc_debug(): Remove redundant __attribute__((unused))
      and #ifdef UNIV_SYNC_DEBUG.
      41468be9
  4. 15 Aug, 2006 5 commits
  5. 14 Aug, 2006 1 commit
  6. 11 Aug, 2006 1 commit
  7. 10 Aug, 2006 1 commit
  8. 09 Aug, 2006 2 commits
    • marko's avatar
      branches/zip: page_zip_decompress_low(): Clear the node_ptr during · 7255b3fd
      marko authored
      initial decompression, in case the record will be deleted and the
      space will be reused by a smaller record.
      
      page_zip_clear_rec_disable: Note the possibility of a page_zip_validate()
      failure when the space of a deleted record is reused by a smaller record.
      7255b3fd
    • marko's avatar
      branches/zip: Improve diagnostics. · e148206a
      marko authored
      buf_LRU_get_free_block(): When zip_size changes, initialize all fields
      of page_zip.  This avoids an assertion failure in page_create_zip() when
      a block with an originally larger zip_size is reallocated.
      
      fsp_get_space_header(): Assert that the stored space id matches.
      
      xdes_get_state(): Assert that the state is valid.
      e148206a
  9. 07 Aug, 2006 3 commits
  10. 04 Aug, 2006 3 commits
    • marko's avatar
      branches/zip: dict_check_tablespaces_and_store_max_id(): · d97b448b
      marko authored
      Determine zip_size in kilobytes, pass on in bytes.
      d97b448b
    • marko's avatar
      branches/zip: Fix the decompression of deleted records containing externally · bbcdac2c
      marko authored
      stored columns.
      
      page_zip_decompress(): We indeed need to clear the BLOB pointers of deleted
      records twice.  This implies that we also need to invoke rec_get_offsets()
      twice for each record on a leaf page.  Add clarifying comments.
      
      page_zip_clear_rec(): Add the flag page_zip_clear_rec_disable for
      disabling the clearing of deleted records.
      bbcdac2c
    • marko's avatar
      branches/zip: Minor cleanup after r690. One test case still fails. · 8ebc2719
      marko authored
      page_zip_compress_write_log(): Do not invoke page_zip_validate(), since
      this is a static function and the callers already invoke page_zip_validate().
      
      page_zip_decompress_low(): Clear the page #ifdef UNIV_ZIP_DEBUG.
      Optimizations: Remove local variable "last".  Do not clear the BLOB
      pointer until the modification log has been applied.  (Since r690,
      it will be cleared after applying the modification log.)
      Avoid calling rec_get_offsets() a second time if there are no
      uncompressed columns to be restored.
      8ebc2719
  11. 03 Aug, 2006 1 commit
    • marko's avatar
      branches/zip: Zero out the BLOB pointers when decoding deleted records. · b152ee56
      marko authored
      Improve diagnostics.
      
      btr_cur_pessimistic_update(): Add page_zip_validate() assertion.
      
      page_zip_decompress(): Initialize all BLOB pointers.
      
      page_zip_clear_rec(): Add page_zip_header_cmp() assertion.
      
      page_delete_rec_list_end(): Add page_zip_validate() assertion.
      b152ee56
  12. 02 Aug, 2006 1 commit
    • marko's avatar
      branches/zip: Fix some crash recovery bugs. · b355bd0f
      marko authored
      dict_load_table(): Initialize table->flags with zip_size.
      
      mlog_parse_nbytes(), mlog_parse_string(): Add parameter page_zip and
      write the changes also to the compressed page if one is specified.
      Assert that these functions are not called on FIL_PAGE_INDEX pages.
      
      buf_page_io_complete(): Replace block->frame with frame where appropriate.
      
      recv_parse_or_apply_log_rec_body(): Add ut_a(!page_zip) where appropriate.
      
      page_parse_delete_rec_list(): Add parameter page_zip.
      b355bd0f
  13. 01 Aug, 2006 4 commits
    • marko's avatar
      branches/zip: buf_flush_init_for_writing(): Invoke page_zip_calc_checksum() · fbce3ef8
      marko authored
      on page_zip->data, so that the freshly written fields will be included.
      
      page_cur_delete_rec(): Add a page_zip_validate() assertion to the end.
      fbce3ef8
    • marko's avatar
      b6b5f3bb
    • marko's avatar
      branches/zip: Improve debugging. · 81f7884d
      marko authored
      page_zip_decompress(): Move the function body to page_zip_decompress_low(),
      add the parameter do_validate() to enable page_validate() assertion.  Wrap
      page_zip_decompress_low() with do_validate=TRUE.
      
      page_zip_validate(): Invoke page_zip_decompress_low() with do_validate=FALSE,
      as page_validate() may fail when the compressed page is being updated
      in-place.
      
      page_dir_slot_check(): Replace buf_frame_align() with ut_align_down()
      in order to avoid an assertion failure in page_zip_validate(), which
      will now invoke page_validate() via page_zip_decompress().
      81f7884d
    • marko's avatar
      branches/zip: Bug fixes. · a9792eeb
      marko authored
      buf_page_io_complete(): On FIL_PAGE_TYPE_ZBLOB (compressed BLOB pages),
      read the space_id from a different location.
      
      page_zip_compress(), page_zip_write_rec(), page_zip_write_blob_ptr():
      Replace page_simple_validate_new() with page_validate().
      
      page_zip_clear_rec(): When running out of log space, do not attempt to
      recompress the page, because the directory slots might be unbalanced and
      the page_validate() assertion in page_zip_compress() would fail.
      Instead, clear the BLOB pointers of the deleted record on the
      uncompressed page, so that page_zip_validate() will succeed.
      
      page_zip_validate(): Remove the comment about page_zip_clear_rec().
      A mismatch always indicates a serious inconsistency.
      a9792eeb
  14. 31 Jul, 2006 2 commits
  15. 28 Jul, 2006 1 commit
  16. 27 Jul, 2006 1 commit
  17. 07 Jul, 2006 1 commit
  18. 06 Jul, 2006 4 commits
  19. 04 Jul, 2006 2 commits