- 05 Sep, 2006 3 commits
- 04 Sep, 2006 2 commits
- 31 Aug, 2006 2 commits
-
-
marko authored
of externally stored columns to 108 bytes when possible. This will unmask a bug in the handling of BLOBs on compressed tablespaces, especially of small page sizes. Apparently, the locally stored part must be less than 235 bytes in size for the bug to occur. dict_col_struct: Add field min_prefix. dict_index_build_internal_non_clust(): Adjust min_prefix.
-
marko authored
dtuple_convert_big_rec(). This should never happen, though.
-
- 29 Aug, 2006 2 commits
- 22 Aug, 2006 1 commit
-
-
marko authored
old value of PAGE_N_RECS. page_zip_dir_find_free_low(): Rename to page_zip_dir_find_low(). page_zip_dir_find(): Make use of page_zip_dir_find_low().
-
- 21 Aug, 2006 6 commits
-
-
marko authored
of non-clustered indexes. On these pages, only the bytes rec[-5..-1] will be omitted from the compressed data stream. Save time by not looking for trx_id or externally stored columns.
-
marko authored
externally stored columns. Make some use of the fact in compression and decompression. rec_init_offsets(): Add ut_ad(dict_index_is_clust(index)) before flagging external columns. page_zip_get_trailer_len(): Assert ut_ad(!page_zip->n_blobs) unless dict_index_is_clust(index). page_zip_get_n_prev_extern(): Add ut_ad(dict_index_is_clust(index)). page_zip_compress(), page_zip_decompress_low(): Add dict_index_is_clust() assertions. Allow completely external storage of columns. Simplify the computation of "externs". page_zip_write_rec(): Store leaf node records of non-clustered indexes with one memcpy(), avoiding rec_offs_n_extern() and the for loop. page_zip_write_blob_ptr(): Add ut_ad(dict_index_is_clust(index)). Simplify the computation of "externs". page_zip_clear_rec(): Only attempt to zero out BLOB pointers when the record belongs to a leaf page of a clustered index. page_zip_dir_delete(): Take a fast path when the record is not on a leaf page of a clustered index. Simplify the computation of "externs". page_zip_copy(): Assert that n_blobs is zero on anything else than leaf pages of clustered indexes.
-
marko authored
if and only if the records on the page contain a trx_id column. (Dummy indexes of non-leaf pages will always show up as non-clustered.)
-
marko authored
-
marko authored
referencing it, to prevent a ut_ad() assertion on page_zip_get_trailer_len() from failing. Promote that assertion to ut_a().
-
marko authored
of secondary indexes. (This is just an optimization; the logic in the search loop would never store such records externally.)
-
- 18 Aug, 2006 3 commits
-
-
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.
-
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.
-
marko authored
-
- 17 Aug, 2006 3 commits
-
-
marko authored
the record will fit on an empty compressed page. buf_block_alloc(), buf_block_free(), buf_frame_alloc(), buf_frame_free(): Make inlined.
-
marko authored
according to InnoDB formatting rules.
-
marko authored
record will fit or need external storage. btr_page_get_sure_split_rec(): Estimate the free space of an empty compressed page. page_zip_rec_needs_ext(): New function, to replace existing tests whether external storage is needed.
-
- 16 Aug, 2006 1 commit
-
-
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.
-
- 15 Aug, 2006 5 commits
- 14 Aug, 2006 1 commit
-
-
marko authored
page0page.h: Add #include "page0zip.h" page_dir_slot_get_rec(): Avoid void* arithmetics. trx0undo.ic, trx0sys.ic: Remove unnecessary #include "page0zip.h" page_zip_write_header(): Move prototype from page0types.h to page0zip.h
-
- 11 Aug, 2006 1 commit
-
-
marko authored
-
- 10 Aug, 2006 1 commit
-
-
marko authored
"old_end" with "ret". Otherwise, a page_zip_reorganize() would make lock_move_rec_list_start() fail.
-
- 09 Aug, 2006 2 commits
-
-
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.
-
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.
-
- 07 Aug, 2006 3 commits
-
-
marko authored
MLOG_COMP_REC_MIN_MARK is allowed on a compressed page.
-
marko authored
row_upd_sec_index_entry(): Remove redundant goto. Replace duplicated cleanup code with goto func_exit. mtr_memo_slot_release(): Eliminate the #else branch of #ifdef UNIV_DEBUG by reorganizing the code.
-
marko authored
if rw_latch == RW_NO_LATCH.
-
- 04 Aug, 2006 3 commits
-
-
marko authored
Determine zip_size in kilobytes, pass on in bytes.
-
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.
-
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.
-
- 03 Aug, 2006 1 commit
-
-
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.
-