Commit graph

1093 commits

Author SHA1 Message Date
marko
16938c62c4 branches/innodb+: struct btr_cur_struct: leaf_in_buf_pool: Correct the comment. 2008-09-23 11:56:14 +00:00
marko
d878dfaf47 branches/innodb+: row_purge_remove_sec_if_poss_low(): Remove a suspicious
assignment that was added in r990 to branches/fts and merged in r2324.
2008-09-23 08:03:49 +00:00
marko
365402d771 branches/innodb+: Non-functional change:
ibuf_rec_get_counter(): Rename from ibuf_rec_get_fake_counter().  There is
nothing fake about the counter.  Also add const qualifiers to the pointers.
2008-09-22 10:38:51 +00:00
marko
d22a9e2b71 branches/innodb+: ibuf_index_page_calc_free(): Revert the relaxation of an
assertion.
2008-09-22 10:34:49 +00:00
marko
dcbd036c00 branches/innodb+: Non-functional change: Use dict_index_is_ibuf()
instead of accessing index->type directly.
2008-09-22 10:31:18 +00:00
marko
a957854246 branches/innodb+: Use buf_pool_mutex_own() instead of accessing
buf_pool_mutex directly.
2008-09-22 10:19:47 +00:00
marko
1838b00352 branches/innodb+: Non-functional change: Rename all functions related to the
buf_pool->watch_ fields to start with the common prefix buf_pool_watch,
so that they can be searched easily:

buf_pool_watch_set(): Renamed from buf_pool_add_watch().  The "add" was
misleading, because only one watch can be active at a time.

buf_pool_watch_clear(): Renamed from buf_pool_remove_watch().

buf_pool_watch_occurred(): Renamed from buf_pool_watch_happened().
2008-09-22 09:18:14 +00:00
marko
0f852ae1a5 branches/innodb+: ibuf_print(): Add a missing local variable that has been
missing since the code was merged in r2324 from branches/fts.
2008-09-22 09:10:38 +00:00
marko
5383474770 branches/innodb+: Correct an error introduced in r736 of branches/fts
and merged in r2324:

ibuf_page(): Assert that recv_no_ibuf_operations == FALSE.

fil_io(): Check !recv_no_ibuf_operations before calling ibuf_page().
2008-09-22 08:05:17 +00:00
marko
56d28f1c57 branches/innodb+: Merge 2637:2660 from branches/zip. 2008-09-22 07:57:34 +00:00
marko
583a4fb426 branches/innodb+: buf0buf.c: Fix some assertions.
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).
2008-09-19 14:10:56 +00:00
marko
7aeb05d863 branches/innodb+: buf_page_get_gen(): Correct some ut_ad() assertions.
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.
2008-09-19 14:00:02 +00:00
marko
93fdc0e4ac branches/innodb+: Undo another white-space change that makes the code
differ from branches/zip.
2008-09-19 13:34:12 +00:00
marko
da656b2207 branches/innodb+: buf_print_io(): Replace a TAB in the output with spaces,
so that this will be identical to branches/zip.
2008-09-18 09:30:22 +00:00
marko
c766390485 branches/innodb+: Undo the partial introduction of UNIV_UNUSED, to reduce
differences from branches/zip.  The __attribute__((unused)) should
work on all platforms.  When compiled with something else than GCC,
MySQL supposedly does #define __attribute__(x) /* empty */
so that the attributes will be ignored.
2008-09-18 08:56:13 +00:00
marko
8f3c1d75bc branches/innodb+: Add missing UNIV_INTERN linkage specifiers. 2008-09-18 08:44:32 +00:00
marko
0c4879da3d branches/innodb+: Revert some changes that make the code differ
from branches/zip.

btr_cur_optimistic_delete(): Split a too long line in the way it is
split in branches/zip.

buf_page_get_gen(): Add missing space in the function comment.

buf_print_io(): Restoer a removed space to the printout.

univ.i: Remove C++-style (or C99-style) comments.

buf0buf.h: Undo the white-space changes to the wrapper macros of
buf_page_get_gen().

ibuf_update_free_bits_low(): Revert the changes.  Restore the assertion
that this function must not be invoked on compressed pages.  The function
ibuf_update_free_bits_zip() is for compressed pages.

ibuf_insert_to_index_page(): Undo a white-space change.
2008-09-18 07:01:13 +00:00
marko
e5833be894 branches/innodb+: btr_page_get_father_node_ptr(): Add TODO comments about
accessing a freed record on a compressed page.
2008-09-18 06:56:32 +00:00
marko
717bb18969 branches/innodb+: srv0srv.c: Revert a change from branches/zip.
The variable srv_stats_sample_pages was declared ib_uint64_t in srv0srv.c
and unsigned long long in srv0srv.h.
2008-09-17 20:03:33 +00:00
marko
8638150c6c branches/innodb+: Merge 2579:2637 from branches/zip. 2008-09-17 19:52:30 +00:00
marko
f208759f13 branches/innodb+: buf0buddy.c: Undo changes to white space that make
the file differ from branches/zip.
2008-09-17 19:38:41 +00:00
marko
24f1b3a91e branches/innodb+: Minor cleanup.
btr0cur.c: Undo changes to white space that make the code differ from
branches/zip.

btr_cur_del_unmark_for_ibuf(): Remove this unused function.

btr_cur_set_deleted_flag_for_ibuf(): Add missing UNIV_INTERN specifier.
Correct the function comment.  Call btr_rec_set_deleted_flag() instead
of rec_set_deleted_flag_new(), so that delete buffering will actually
work on ROW_FORMAT=REDUNDANT tables.
2008-09-17 19:31:42 +00:00
marko
37f1f86910 branches/innodb+: ibuf0ibuf.c: Minor cleanup to make the code a little
closer to branches/zip.

ibuf_size_update(): Add const qualifier to the parameter "root".
Remove #ifdef UNIV_SYNC_DEBUG around ut_ad(mutex_own()).

ibuf_page(): Use the variable name local_mtr instead of mtr_local, to
be more like existing functions.  Eliminate the flag use_local_mtr.

ibuf_get_merge_page_nos(): Restore an "if (...) break; else if" to
"if (...) break; if" as in branches/zip.

ibuf_dummy_index_create(), ibuf_dummy_index_add_col(),
ibuf_contract_ext(), ibuf_insert_low(): Revert to the formatting of
branches/zip.
2008-09-15 10:15:25 +00:00
marko
03e1e8f10e branches/innodb+: ibuf_t: Remove the unused array n_ops[].
ibuf_print(): Do not print n_ops[].

ibuf_print_ops(): Output trailing newline.
2008-09-15 10:13:40 +00:00
marko
59e74a139f branches/innodb+: row_purge_remove_sec_if_poss_low(): Apply De Morgan's rule
to eliminate double negation from an assertion.
2008-09-15 06:25:21 +00:00
sunny
d0e8003b2f branches/innodb+: Merge revisions 2460:2579 from branches/zip
The followin mysql-tests failed (and they are known to fail):
main.information_schema        	[ fail ]
main.innodb_file_per_table_basic[ fail ]
main.type_bit_innodb           	[ fail ]

Tested against : MYSQL_SERVER_VERSION  "5.1.28"
2008-08-09 00:15:46 +00:00
sunny
4abda95a36 branches/innodb+: Fix a debug assertion. 2008-06-16 03:12:16 +00:00
sunny
093fb51fb4 branches/innodb+: Fix typo in comment. 2008-06-16 03:11:30 +00:00
sunny
0f4e11587a branches/innodb+: zip_size can be 0 when called from ibuf. 2008-06-10 09:45:36 +00:00
sunny
9628867518 branches/innodb+: The debug assertion should check for the case where the
zip size can be 0.
2008-06-10 01:41:40 +00:00
inaam
f870d4996d branches/innodb+: Merge revisions r2460:2461 from branches/zip 2008-05-17 22:37:07 +00:00
inaam
08d705a71c branches/innodb+: Merge revisions r2455:r2459 from branches/zip
(These changes remove the POSIX AIO stuff)
2008-05-16 14:49:22 +00:00
inaam
c5dacc2914 branches/innodb+: Merge revisions 2344:2454 from branches/zip 2008-05-14 15:43:19 +00:00
marko
0c5b8df908 branches/innodb+: Merge revisions 2340:2343 from branches/zip 2008-03-03 12:57:07 +00:00
marko
db0d73fe6f branches/innodb+: Add posix_fadvise() caching hints to the temporary files
that are used in merge sort when creating indexes.
2008-03-03 10:27:57 +00:00
marko
5cf58ce919 branches/innodb+: Merge revisions 2322:2340 from branches/zip 2008-03-03 10:25:27 +00:00
sunny
a8824182b8 branches/innodb+: Port red-black tree code from branches/fts:r2283 2008-02-27 10:28:20 +00:00
sunny
fceb78e698 branches/innodb+: Delete buffer port from branches/fts:r2283 2008-02-27 07:03:34 +00:00
sunny
57fc43166d branches/innodb+: Merge revisions 2315:2322 from branches/zip 2008-02-27 06:50:51 +00:00
vasil
fb30a2032b branches/innodb+:
Fix Bug#25640:

Introduce an user visible parameter innodb_stats_sample (default 8,
min 1, max 1000) and use that parameter instead of the
BTR_KEY_VAL_ESTIMATE_N_PAGES macro. Remove this macro.

Approved by:	Heikki
2008-02-19 14:21:05 +00:00
marko
5ad9e41b91 branches/innodb+: Copy from branches/zip r2315. 2008-02-18 20:09:38 +00:00
marko
36a5b2cd37 branches/zip: Merge 2263:2295 from branches/5.1. 2008-02-18 20:09:03 +00:00
marko
c31fb8dad9 branches/zip: Remove the unused function os_thread_join(). 2008-02-18 19:14:09 +00:00
marko
b48d0c64e2 branches/zip: trx_undo_prev_version_build(): Remove the unnecessary
and incorrect "BLOB bug fix" that was suggested by Heikki.  Explain in
a comment why no such fix is needed.
2008-02-18 18:57:24 +00:00
marko
bddb5a0cca branches/zip: Add a UNIV_INTERN qualifier to every global function declaration
in *.h files, so that the function signatures in the *.h and *.c files fully
match each other.

ut_dulint_sort(): Add a UNIV_INTERN qualifier also to the function definition.
2008-02-18 18:38:33 +00:00
marko
9966023451 branches/zip: Minor fixes.
lock_rec_restore_from_page_infimum(): Correct the comment of the parameter rec.

lock_sec_rec_read_check_and_lock(): Add the debug assertion
ut_ad(mode == LOCK_X || mode == LOCK_S).
2008-02-18 15:45:17 +00:00
marko
da54bec75b branches/zip: Minor fixes.
buf_LRU_old_adjust_len(): Replace a constant ut_ad() with a preprocessor check.

buf_LRU_free_block(): Remove the check for the unlikely case
buf_pool->LRU_old == prev_b in order to simplify the function.
The check was implemented as part of r2306.
2008-02-18 15:43:16 +00:00
marko
6aa400bee4 branches/zip: trx_undo_prev_version_build(): Remove the fix that was
suggested by Heikki, because it breaks row_vers_impl_x_locked_off_kernel();
see Mantis issue #10.

However, now that Heikki's fix has been removed, the code may break elsewhere
when it tries to dereference half-freed or completely freed externally
stored columns.
2008-02-18 15:35:00 +00:00
marko
7a41306bc5 branches/zip: Minor improvements.
lock_update_delete(): Add the debug assertion ut_ad(page == page_align(rec)).

lock_rec_insert_check_and_lock(): Determine next_rec_heap_no before
acquiring the kernel mutex.  Require the table to be at least S-locked
in fast index creation.
2008-02-18 09:53:08 +00:00
marko
060a95bea6 branches/zip: buf_LRU_free_block(): When freeing the uncompressed page
corresponding to a compressed page, do not flag the block as recently
used, but maintain the position of the control block on the LRU list.
2008-02-16 10:33:15 +00:00