An error occurred fetching the project authors.
  1. 06 Aug, 2008 1 commit
  2. 06 Feb, 2008 1 commit
    • marko's avatar
      branches/zip: Introduce UNIV_INTERN, a linkage specifier for InnoDB-global · 2c2b06ad
      marko authored
      symbols.  Use it for all definitions of non-static variables and functions.
      
      lexyy.c, make_flex.sh: Declare yylex as UNIV_INTERN, not static.  It is
      referenced from pars0grm.c.
      
      Actually, according to
      	nm .libs/ha_innodb.so|grep -w '[ABCE-TVXYZ]'
      the following symbols are still global:
      
      * The vtable for class ha_innodb
      * pars0grm.c: The function yyparse() and the variables yychar, yylval, yynerrs
      
      The required changes to the Bison-generated file pars0grm.c will be addressed
      in a separate commit, which will add a script similar to make_flex.sh.
      
      The class ha_innodb is renamed from class ha_innobase by a #define.  Thus,
      there will be no clash with the builtin InnoDB.  However, there will be some
      overhead for invoking virtual methods of class ha_innodb.  Ideas for making
      the vtable hidden are welcome.  -fvisibility=hidden is not available in GCC 3.
      2c2b06ad
  3. 18 Oct, 2007 1 commit
    • marko's avatar
      branches/zip: Remove const warnings reported by GCC 4.2.1. · d967aaa6
      marko authored
      page_cur_set_before_first(), page_cur_set_after_last(),
      page_cur_position(): Add const qualifiers to buf_block_t and rec.
      A better solution would be to define a const_page_cur_t and a
      set of accessors, but it would lead to severe code duplication.
      
      page_rec_get_n_recs_before(): Add const qualifiers.
      
      page_dir_get_nth_slot(): Define as a const-preserving macro.
      
      page_dir_slot_get_rec(), page_dir_slot_get_n_owned(),
      page_dir_find_owner_slot(), page_check_dir(): Add const qualifiers.
      
      page_rec_get_next_low(): Add const qualifiers.
      
      page_rec_get_next_const(), page_rec_get_prev_const(): New functions,
      based on the const-less page_rec_get_next() and page_rec_get_prev().
      
      page_cur_get_page(), page_cur_get_block(), page_cur_get_page_zip(),
      page_cur_get_rec(): Define as const-preserving macros.
      
      page_cur_try_search_shortcut(), page_cur_search_with_match():
      Add const qualifiers.
      
      buf_page_get_mutex(): Add a const qualifier to buf_page_t*.
      
      rec_get_next_ptr_const(): Const variant of rec_get_next_ptr().
      d967aaa6
  4. 05 Oct, 2007 2 commits
  5. 28 Sep, 2007 1 commit
  6. 15 May, 2007 1 commit
    • marko's avatar
      branches/zip: Minor cleanup. · 19569a8b
      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.
      19569a8b
  7. 20 Feb, 2007 1 commit
  8. 19 Feb, 2007 1 commit
  9. 01 Feb, 2007 1 commit
    • marko's avatar
      branches/zip: Split the function page_cur_insert_rec_low(). · f05b0766
      marko authored
      page_cur_insert_rec_zip_reorg(): New function: Recompress or
      reorganize a compressed page.
      
      page_cur_insert_rec_zip(): New function: insert a record to
      a compressed page.
      
      page_cur_insert_rec_low(): Only handle inserts to uncompressed pages.
      f05b0766
  10. 25 Oct, 2006 1 commit
  11. 24 Oct, 2006 1 commit
    • marko's avatar
      branches/zip: Remove all references to buf_block_align() except those · 42dcad50
      marko authored
      from the adaptive hash index [btr_search_guess_on_hash() and
      btr_search_validate()].  Some references to buf_block_align() remain
      in debug builds.
      
      btr_store_big_rec_extern_fields(): Add the parameter rec_block.
      
      page_rec_get_next_low(): Do not assume that the page has been
      allocated from the buffer pool when printing the diagnostic information.
      
      page_cur_insert_rec_low(): Replace the parameter page_zip_des_t* page_zip
      with the parameter buf_block_t* block.
      42dcad50
  12. 23 Oct, 2006 1 commit
    • marko's avatar
      branches/zip: Minor cleanup. · 009533b4
      marko authored
      page_set_max_trx_id(): Replace page_t* parameter with buf_block_t*,
      to avoid a buf_block_align() call.
      
      Replace some occurrences of page_get_page_no() with buf_block_get_page_no().
      
      page_cur_delete_rec(): Replace buf_block_align() with page_cur_get_block().
      009533b4
  13. 20 Oct, 2006 2 commits
    • marko's avatar
      branches/zip: Remove some more buf_block_align() calls. · 8562e752
      marko authored
      btr_cur_t: Move page_block to page_cur_t::block.
      
      page_cur_get_block(), page_cur_get_page_zip(): New functions.
      
      page_cur_position(): Add parameter block.
      
      Remove many page_zip parameters, now that there is page_cur_get_page_zip().
      Replace some page, page_zip parameters with block.
      
      Add some const qualifiers to function parameters and remove casts.
      
      PAGE_HEAP_NO_INFIMUM, PAGE_HEAP_NO_SUPREMUM, PAGE_HEAP_NO_USER_LOW:
      New constants.
      
      Replace some cursor code in low-level diagnostic functions with
      direct management of rec, because buf_block_t::buf_fix_count may be 0
      when the functions are called, and debug assertions would fail.
      8562e752
    • marko's avatar
  14. 18 Oct, 2006 1 commit
    • marko's avatar
      branches/zip: Eliminate many buf_block_align() calls. · c659b59a
      marko authored
      Replace page_t* or page_zip_des_t* parameters in some functions with
      buf_block_t*.
      
      buf_frame_get_page_zip(): Disable unless #ifdef UNIV_DEBUG || UNIV_ZIP_DEBUG.
      
      btr_cur_t: Add buf_block_t* page_block.
      
      btr_pcur_get_block(), btr_cur_get_block(), btr_cur_get_page_zip():
      New functions.
      
      btr_cur_position(): Add the parameter block.
      c659b59a
  15. 13 Oct, 2006 1 commit
    • marko's avatar
      branches/zip: Remove some more buf_block_align() calls. · 70e765ae
      marko authored
      Replace buf_frame_modify_clock_inc() with buf_block_modify_clock_inc().
      Replace buf_frame_get_lock_hash_val() with buf_block_get_lock_hash_val().
      Replace buf_frame_get_lock_mutex() with buf_block_get_lock_mutex().
      
      page_create_zip(), page_create(), page_create_low(), btr_page_free(),
      btr_page_free_low(): Replace page_t with buf_block_t.
      70e765ae
  16. 09 Oct, 2006 1 commit
  17. 29 Sep, 2006 1 commit
    • marko's avatar
      branches/zip: dtuple_convert_big_rec(): Do not store anything locally · 77ebaf6f
      marko authored
      of externally stored columns, and fix bugs introduced in r873.  (Bug #22496)
      
      btr_page_get_sure_split_rec(), btr_page_insert_fits(),
      rec_get_converted_size(), rec_convert_dtuple_to_rec(),
      rec_convert_dtuple_to_rec_old(), rec_convert_dtuple_to_rec_new():
      Add parameters ext and n_ext.  Flag external fields during the
      conversion.
      
      rec_set_field_extern_bits(), rec_set_field_extern_bits_new(),
      rec_offs_set_nth_extern(), rec_set_nth_field_extern_bit_old():
      Remove.  The bits are set by rec_convert_dtuple_to_rec().
      
      page_cur_insert_rec_low(): Remove the parameters ext and n_ext.
      
      btr_cur_add_ext(): New utility function for updating and sorting ext[].
      Low-level functions now expect the array to be in ascending order
      for performance reasons.  Used in btr_cur_optimistic_insert(),
      btr_cur_pessimistic_insert(), and btr_cur_pessimistic_update().
      
      btr_cur_optimistic_insert(): Remove some defensive code, because we cannot
      compute the added parameters of rec_get_converted_size().
      
      btr_push_update_extern_fields(): Sort the array.  Require the array to
      be twice the maximum usage, so that ut_ulint_sort() can be used.
      
      dtuple_convert_big_rec(): Allocate new space for the BLOB pointer,
      to avoid overwriting prefix indexes to the same column.  Adapt
      dtuple_convert_back_big_rec().
      
      row_build_index_entry(): Fetch the columns also for prefix indexes of
      the clustered index.
      
      page_zip_apply_log(), page_zip_decompress_clust(): Allow externally
      stored fields to lack a locally stored part.
      77ebaf6f
  18. 19 Sep, 2006 2 commits
  19. 05 Sep, 2006 1 commit
  20. 29 Aug, 2006 1 commit
  21. 21 Aug, 2006 1 commit
  22. 18 Aug, 2006 2 commits
    • marko's avatar
      branches/zip: page_cur_insert_rec_low(): Replace page_zip_dir_rewrite() · 2c3b9102
      marko authored
      with page_zip_dir_insert().  Pass page_zip to rec_set_n_owned_new()
      and page_dir_slot_set_n_owned().
      
      page_zip_dir_insert(): New function.  Shift the dense page directory and
      write the inserted record there.
      2c3b9102
    • marko's avatar
      branches/zip: Bug fixes. · 49c9bbd8
      marko authored
      data0data.c: Add #include "page0zip.h" that was forgotten from r739.
      
      page_cur_insert_rec_low(): Remove a memory leak when preventing
      extra_size to grow.
      49c9bbd8
  23. 17 Aug, 2006 1 commit
  24. 01 Aug, 2006 1 commit
  25. 03 Jul, 2006 1 commit
    • marko's avatar
      branches/zip: page_cur_insert_rec_low(): Replace page_zip_alloc() · 51fb42bf
      marko authored
      with page_zip_available() in order to avoid an extra page_zip_compress().
      
      page_zip_available(): Make the function public.
      
      page0zip.ic: Sort the inline function declarations in order to avoid
      forward references, which do not work on some compilers.
      51fb42bf
  26. 30 Jun, 2006 1 commit
    • marko's avatar
      branches/zip: Improve assertions related to the linked lists of records · 7279a722
      marko authored
      on B-tree index pages.
      
      page_rec_set_next(): Assert that rec != next.
      
      rec_get_next_ptr(), rec_get_next_offs(): On compact pages, assert that
      there are at least REC_N_NEW_EXTRA_BYTES + 1 between records.
      
      page_cur_insert_rec_write_log(): Replace a buf_frame_align() call
      with ut_align_offset().
      
      page_cur_insert_rec_low(): Assert that current_rec != insert_rec.
      7279a722
  27. 20 Jun, 2006 1 commit
  28. 13 Jun, 2006 1 commit
    • marko's avatar
      branches/zip: Add page_zip_validate() assertions and remove a bogus · 781f1ca5
      marko authored
      page_zip_assertion() failure in page_copy_rec_list_end().
      
      btr_root_raise_and_insert(), btr_lift_page_up(), btr_compress():
      Add page_zip_validate() assertions.
      
      btr_compress(): Only copy FIL_PAGE_PREV when UNIV_BTR_DEBUG is defined.
      
      page_cur_delete_rec(): Document why the page_zip_validate() assertion
      was removed.
      
      page_copy_rec_list_end(): Remove the page_zip_validate() assertion and
      document why.
      
      page_move_rec_list_end(): Add page_zip_validate() assertion.
      781f1ca5
  29. 12 Jun, 2006 1 commit
    • marko's avatar
      branches/zip: Add page_zip_validate() checks. · d2280533
      marko authored
      page_cur_delete_rec(): Do not call page_zip_validate() in the beginning,
      because btr_set_min_rec_mark() in btr_cur_pessimistic_delete() will
      cause a temporary mismatch.
      
      Document temporary mismatches caused by btr_set_min_rec_mark() calls
      and explain why they will not cause any problems.
      d2280533
  30. 07 Jun, 2006 1 commit
  31. 16 May, 2006 2 commits
    • marko's avatar
      branches/zip: Try to reorganize the page when compression fails. · 6c3c7271
      marko authored
      page_zip_compress_write_log(): Make static.
      
      page_zip_compress(): Add optional parameter mtr for redo logging.
      
      page_zip_reorganize(): Low-level counterpart of btr_page_reorganize().
      
      page_zip_copy(): Add debug assertions about mtr_memo_contains.
      
      page_cur_insert_rec_low(): Try page_zip_reorganize() and seek to the
      new position of insert_rec if it succeeds.
      
      page_copy_rec_list_end(), page_copy_rec_list_start():
      Try page_zip_reorganize().
      
      page_move_rec_list_end(): Remove bogus comment.
      6c3c7271
    • marko's avatar
      branches/zip: Shorten the log record MLOG_ZIP_PAGE_COMPRESS. · 00b55da6
      marko authored
      page_zip_copy(), page_zip_compress_write_log(): Add parameter 'index'.
      
      page_zip_parse_write_header(): Check for !page_zip only if page != NULL.
      
      page_zip_compress_write_log(), page_zip_parse_compress(): Omit some
      fields in the page header.  Omit the unused bytes between the modification
      log and the page trailer.
      
      parse_or_apply_log_rec_body(): Remove a bogus debug assertion.
      00b55da6
  32. 02 May, 2006 1 commit
    • marko's avatar
      branches/zip: Prepare for writing compressed and reading pages. · 7bd3aca4
      marko authored
      buf_page_print(): Print also compressed pages.  Add parameter zip_size.
      
      buf_flush_init_for_writing(): Stamp the fields on a compressed B-tree index
      page.
      
      Add the header field FIL_PAGE_ZBLOB_SPACE_ID as an alias of FIL_PAGE_PREV.
      
      page_zip_calc_checksum(): New function.
      
      page_zip_compress(): Avoid copying the fields that are written in
      buf_flush_init_for_writing().
      
      page_zip_header_cmp(): New function for comparing those fields of the
      page header that will not be written in buf_flush_init_for_writing().
      7bd3aca4
  33. 28 Apr, 2006 2 commits
    • marko's avatar
      branches/zip: page_cur_insert_rec_low(): Write a log record of · 7a54aa4d
      marko authored
      recompressing the page.
      7a54aa4d
    • marko's avatar
      branches/zip: Minor improvements. · 0cb4c58f
      marko authored
      buf_flush_init_for_writing(): Calculate the checksum with the actual zip_size.
      
      buf_calc_zblob_page_checksum(): Skip the field FIL_PAGE_SPACE_OR_CHKSUM.
      
      trx_sys_doublewrite_init_or_restore_page(): Use the actual zip_size.
      
      page_cur_insert_rec_low(): If page_zip_alloc() fails, try compressing the
      whole page afterwards.
      0cb4c58f
  34. 26 Apr, 2006 1 commit
    • marko's avatar
      branches/zip: Minor cleanup and bug fixes · b0ae76c5
      marko authored
      btr_page_reorganize_low(): Rename new_page to temp_page.
      
      btr_store_big_rec_extern_fields(): FIL_PAGE_TYPE is 2 bytes, not 4.
      
      buf_page_init(), buf_page_create(), buf_read_page_low(),
      buf_page_init_for_read(): Add parameter zip_size.
      
      buf_page_init_for_backup_restore(),
      recv_apply_log_recs_for_backup(): Enclose in #ifdef UNIV_HOTBACKUP.
      
      Enclose some debug code in #ifdef UNIV_LOG_REPLICATE.
      
      page_zip_write_header_log(): Replace page_zip with a pointer to
      the uncompressed page.
      
      page_zip_write_rec(): Relax an assertion about blob_no + n_ext.
      
      page_copy_rec_list_to_created_page_write_log(): Allow logging to be disabled.
      b0ae76c5