1. 06 Jun, 2007 1 commit
  2. 04 Jun, 2007 2 commits
    • marko's avatar
      branches/zip: Minor cleanup. · b2c09f8a
      marko authored
      row_merge_mark_prebuilt_obsolete(): Rename to row_prebuilt_table_obsolete()
      and move from row0merge.c to row0mysql.c.  Remove the parameter trx.
      
      row_merge_print_table(): Remove.
      b2c09f8a
    • marko's avatar
      branches/zip: Minor cleanup. · eddd2aed
      marko authored
      row_remove_indexes_for_mysql(): Rename to row_merge_drop_indexes(),
      move from row0mysql.c to row0merge.c and make the return type void.
      
      row_merge_remove_index(): Rename to row_merge_drop_index() and make
      the return type void.
      eddd2aed
  3. 29 May, 2007 1 commit
  4. 28 May, 2007 1 commit
  5. 24 May, 2007 1 commit
  6. 22 May, 2007 4 commits
  7. 21 May, 2007 1 commit
  8. 18 May, 2007 4 commits
  9. 16 May, 2007 2 commits
    • marko's avatar
      branches/zip: btr_cur_optimistic_insert(): Set the insert buffer free bits · efb74613
      marko authored
      exactly.  Rename the local variable "ulint level" to "ibool leaf".
      Document that if the function returns DB_SUCCESS on a compressed page that
      is covered by the insert buffer, the mini-transaction must be committed
      before latching any further pages.  Verify that this is the case on all
      execution paths.
      efb74613
    • marko's avatar
      branches/zip: Document and obey the rules for modifying the free bits in · 382cb9fd
      marko authored
      the insert buffer bitmap.
      
      ibuf_set_free_bits_func(): Never disable redo logging.
      
      ibuf_update_free_bits_zip(): Remove.
      
      btr_page_reorganize_low(), page_zip_reorganize(): Do not update the insert
      buffer bitmap.  Instead, document that callers will have to take care of it,
      and adapt the callers.
      
      btr_compress(): On error, reset the insert buffer free bits.
      
      btr_cur_insert_if_possible(): Do not modify the insert buffer bitmap.
      
      btr_compress(), btr_cur_optimistic_insert(): On compressed pages,
      reset the insert buffer bitmap.  Document why.
      
      btr_cur_update_alloc_zip(): Document why it is necessary and sufficient
      to reset the insert buffer free bits.
      
      btr_cur_update_in_place(), btr_cur_optimistic_update(),
      btr_cur_pessimistic_update(): Update the free bits in the same
      mini-transaction.  Document that the mini-transaction must be
      committed before latching any further pages.  Verify that this
      is the case in all execution paths.
      
      row_ins_sec_index_entry_by_modify(), row_ins_clust_index_entry_by_modify(),
      row_undo_mod_clust_low(): Because these functions call
      btr_cur_update_in_place(), btr_cur_optimistic_update(), or
      btr_cur_pessimistic_update(), document that the mini-transaction must be
      committed before latching any further pages.  Verify that this is the case
      in all execution paths.
      382cb9fd
  10. 15 May, 2007 1 commit
    • marko's avatar
      branches/zip: Minor cleanup. · d5c198ea
      marko authored
      page_cur_tuple_insert(), page_cur_rec_insert(): Improve the documentation.
      Note that the physical position of page_cursor may change.
      
      page_cur_rec_insert(), page_cur_insert_rec_low(), page_cur_insert_rec_zip():
      Add a const qualifier to the parameter rec.
      d5c198ea
  11. 14 May, 2007 1 commit
  12. 07 May, 2007 1 commit
    • marko's avatar
      branches/zip: Fix two bugs. · fa4f5fcf
      marko authored
      mtr_commit(): Do not acquire the log mutex if no log records are to be written.
      
      ibuf_set_free_bits_func(): Do not clear mtr.modifications, because that would
      prevent the dirty insert buffer bitmap block from being moved to the flush
      list.  Instead, assume that mtr_commit() will not acquire log_sys->mutex
      because redo logging is disabled.
      
      buf_page_init_for_read(): I/O-fix the block before buf_buddy_alloc(), because
      the newly allocated block could otherwise be reused by the compressed page.
      fa4f5fcf
  13. 06 May, 2007 5 commits
    • marko's avatar
      branches/zip: When reading pages for merging buffered inserts, request that · eec93804
      marko authored
      the pages be decompressed.
      
      buf_read_page_low(), buf_page_init_for_read(): Add parameter "unzip".
      eec93804
    • marko's avatar
      branches/zip: ibuf_set_free_bits_func(): Disable redo logging when · 4df65a76
      marko authored
      crash recovery is in progress.  This avoids a hang when
      btr_parse_page_reorganize(), called from an I/O handler thread,
      attempts to acquire log_sys->mutex while it is being held by
      the main thread (the one that runs innobase_init()).  This change
      was committed accidentally.  It may be unsafe to clear
      mtr.modifications, because buf_page_release() at mtr_commit() may
      forget to put modified pages to the flush list.
      
      Cleanup: Remove the "type" parameter from many ibuf functions.
      Let the caller check that !dict_index_is_clust().  This should avoid
      function calls and register spilling.
      
      ibuf_set_free_bits_func(), ibuf_set_free_bits(): Remove the parameter "type".
      
      ibuf_reset_free_bits_with_type(): Rename to ibuf_reset_free_bits().
      Remove the parameter "type".
      
      ibuf_update_free_bits_if_full(), ibuf_update_free_bits_zip(),
      ibuf_update_free_bits_low(), ibuf_update_free_bits_for_two_pages_low():
      Remove the parameter "index".
      4df65a76
    • marko's avatar
    • marko's avatar
      branches/zip: Minor cleanup. · a5608823
      marko authored
      log_write_up_to(): Replace if-else if-else with a switch block.
      
      log_archive_do(): Remove an excess mutex_enter().  Replace if-else if-else
      with a switch block.  (This function is not included unless UNIV_LOG_ARCHIVE
      is defined.)
      a5608823
    • marko's avatar
      2af559b6
  14. 03 May, 2007 1 commit
  15. 02 May, 2007 1 commit
  16. 30 Apr, 2007 2 commits
  17. 17 Apr, 2007 4 commits
    • marko's avatar
      branches/zip: Minor cleanup. · e1c13971
      marko authored
      Add __attribute__((const)) or __attribute__((pure)) to various
      mach_read functions.
      
      dtype_new_read_for_order_and_null_size(): Remove a statement
      without effect: mach_read_from_2(buf + 4).
      e1c13971
    • marko's avatar
      branches/zip: Reintroduce the local variables "sorted" that were removed · 6688b863
      marko authored
      in r1445.  They are needed after all, but apparently the tests do not
      actually verify that the records are sorted.  (Also, a buffer overflow
      will occur in index_merge_innodb.test if MERGE_BLOCK_SIZE is made smaller.)
      6688b863
    • marko's avatar
      branches/zip: Clean up fast index creation. · 366f0aa2
      marko authored
      Correct the language of some comments.  Eliminate the local variables
      "num_of_merges" (renamed to "sorted" in one function).
      366f0aa2
    • marko's avatar
      branches/zip: Clean up. · 8b566bbb
      marko authored
      cmp_rec_rec_with_match(): Initialize ret=0.  Remove assignments ret=0.
      
      rec_init_offsets(): Remove bogus comment.
      8b566bbb
  18. 16 Apr, 2007 4 commits
  19. 13 Apr, 2007 1 commit
  20. 12 Apr, 2007 2 commits
    • marko's avatar
      branches/zip: Clean up fast index creation. · 588f4983
      marko authored
      row_merge_read(), row_merge_write(): Add UNIV_LIKELY hints.
      
      row_merge_sort_linked_list_in_disk(): Reduce the scope of many variables.
      Eliminate the variable "selected".
      588f4983
    • marko's avatar
      branches/zip: Minor cleanup of merge_file_t and merge_block_header_t. · 7dd753ed
      marko authored
      Replace byte offsets of type dulint with block offsets of type ulint.
      Avoid references to MERGE_BLOCK_SIZE.
      
      Improve the language of some comments.
      
      row_merge_insert_index_tuples(), row_merge_sort_linked_list_in_disk():
      Make the offset a ulint.
      
      row_merge_read(), row_merge_write(): Helper functions.  Return the
      status of os_file_read() and os_file_write().  TO DO: check the status
      in the callers.
      7dd753ed