summaryrefslogtreecommitdiff
path: root/innobase/btr
diff options
context:
space:
mode:
authorunknown <marko@hundin.mysql.fi>2005-06-14 12:21:40 +0300
committerunknown <marko@hundin.mysql.fi>2005-06-14 12:21:40 +0300
commit113c6278516f56f5f4a9356b8ffb234d618e782b (patch)
tree5f613660fc16b61d9f313e49873ef3e4235f21bb /innobase/btr
parent59332c86c005227b0e85423a5dcfb594a2738dcf (diff)
downloadmariadb-git-113c6278516f56f5f4a9356b8ffb234d618e782b.tar.gz
InnoDB: Cleanup and after review fixes.
innobase/btr/btr0btr.c: Code formatting: add blank line before "goto", do not indent labels innobase/btr/btr0cur.c: Code formatting: add blank line before "goto" innobase/btr/btr0pcur.c: btr_pcur_restore_position(): Replace assertion on cursor->pos_state with if condition, to provide better diagnostics. Restore ut_a() assertions on cursor->old_rec and cursor->old_n_fields. innobase/btr/btr0sea.c: btr_search_check_guess(): Declare prev_rec and next_rec closer to usage. Add blank lines before goto statements.
Diffstat (limited to 'innobase/btr')
-rw-r--r--innobase/btr/btr0btr.c6
-rw-r--r--innobase/btr/btr0cur.c1
-rw-r--r--innobase/btr/btr0pcur.c12
-rw-r--r--innobase/btr/btr0sea.c46
4 files changed, 35 insertions, 30 deletions
diff --git a/innobase/btr/btr0btr.c b/innobase/btr/btr0btr.c
index 6ca0077523f..2d84586216a 100644
--- a/innobase/btr/btr0btr.c
+++ b/innobase/btr/btr0btr.c
@@ -1160,12 +1160,13 @@ btr_page_get_split_rec_to_right(
next_rec = page_rec_get_next(insert_point);
if (page_rec_is_supremum(next_rec)) {
- split_at_new:
+split_at_new:
/* Split at the new record to insert */
*split_rec = NULL;
} else {
rec_t* next_next_rec = page_rec_get_next(next_rec);
if (page_rec_is_supremum(next_next_rec)) {
+
goto split_at_new;
}
@@ -1274,6 +1275,7 @@ btr_page_get_sure_split_rec(
if (rec == ins_rec) {
rec = NULL;
+
goto func_exit;
} else if (rec == NULL) {
next_rec = page_rec_get_next(ins_rec);
@@ -1286,7 +1288,7 @@ btr_page_get_sure_split_rec(
}
}
- func_exit:
+func_exit:
if (UNIV_LIKELY_NULL(heap)) {
mem_heap_free(heap);
}
diff --git a/innobase/btr/btr0cur.c b/innobase/btr/btr0cur.c
index 85d6194055f..98d90ecf18a 100644
--- a/innobase/btr/btr0cur.c
+++ b/innobase/btr/btr0cur.c
@@ -1381,6 +1381,7 @@ btr_cur_parse_update_in_place(
ptr = row_upd_index_parse(ptr, end_ptr, heap, &update);
if (!ptr || !page) {
+
goto func_exit;
}
diff --git a/innobase/btr/btr0pcur.c b/innobase/btr/btr0pcur.c
index 7cc883a6696..cb398b4afab 100644
--- a/innobase/btr/btr0pcur.c
+++ b/innobase/btr/btr0pcur.c
@@ -205,15 +205,15 @@ btr_pcur_restore_position(
ulint old_mode;
mem_heap_t* heap;
- ut_ad(cursor->pos_state == BTR_PCUR_WAS_POSITIONED
- || cursor->pos_state == BTR_PCUR_IS_POSITIONED);
- if (UNIV_UNLIKELY(cursor->old_stored != BTR_PCUR_OLD_STORED)) {
+ if (UNIV_UNLIKELY(cursor->old_stored != BTR_PCUR_OLD_STORED)
+ || UNIV_UNLIKELY(cursor->pos_state != BTR_PCUR_WAS_POSITIONED
+ && cursor->pos_state != BTR_PCUR_IS_POSITIONED)) {
ut_print_buf(stderr, (const byte*)cursor, sizeof(btr_pcur_t));
if (cursor->trx_if_known) {
trx_print(stderr, cursor->trx_if_known);
}
- ut_a(0);
+ ut_error;
}
if (UNIV_UNLIKELY(cursor->rel_pos == BTR_PCUR_AFTER_LAST_IN_TREE
@@ -233,8 +233,8 @@ btr_pcur_restore_position(
return(FALSE);
}
- ut_ad(cursor->old_rec);
- ut_ad(cursor->old_n_fields);
+ ut_a(cursor->old_rec);
+ ut_a(cursor->old_n_fields);
page = btr_cur_get_page(btr_pcur_get_btr_cur(cursor));
diff --git a/innobase/btr/btr0sea.c b/innobase/btr/btr0sea.c
index 742a02b1de4..f705fee4275 100644
--- a/innobase/btr/btr0sea.c
+++ b/innobase/btr/btr0sea.c
@@ -545,8 +545,6 @@ btr_search_check_guess(
mtr_t* mtr) /* in: mtr */
{
rec_t* rec;
- rec_t* prev_rec;
- rec_t* next_rec;
ulint n_unique;
ulint match;
ulint bytes;
@@ -609,6 +607,7 @@ btr_search_check_guess(
bytes = 0;
if ((mode == PAGE_CUR_G) || (mode == PAGE_CUR_GE)) {
+ rec_t* prev_rec;
ut_ad(!page_rec_is_infimum(rec));
@@ -617,6 +616,7 @@ btr_search_check_guess(
if (page_rec_is_infimum(prev_rec)) {
success = btr_page_get_prev(
buf_frame_align(prev_rec), mtr) == FIL_NULL;
+
goto exit_func;
}
@@ -631,32 +631,34 @@ btr_search_check_guess(
}
goto exit_func;
- }
-
- ut_ad(!page_rec_is_supremum(rec));
+ } else {
+ rec_t* next_rec;
+
+ ut_ad(!page_rec_is_supremum(rec));
- next_rec = page_rec_get_next(rec);
+ next_rec = page_rec_get_next(rec);
- if (page_rec_is_supremum(next_rec)) {
- if (btr_page_get_next(buf_frame_align(next_rec), mtr)
- == FIL_NULL) {
+ if (page_rec_is_supremum(next_rec)) {
+ if (btr_page_get_next(
+ buf_frame_align(next_rec), mtr) == FIL_NULL) {
- cursor->up_match = 0;
- success = TRUE;
- }
+ cursor->up_match = 0;
+ success = TRUE;
+ }
- goto exit_func;
- }
+ goto exit_func;
+ }
- offsets = rec_get_offsets(next_rec, cursor->index, offsets,
+ offsets = rec_get_offsets(next_rec, cursor->index, offsets,
n_unique, &heap);
- cmp = page_cmp_dtuple_rec_with_match(tuple, next_rec,
- offsets, &match, &bytes);
- if (mode == PAGE_CUR_LE) {
- success = cmp == -1;
- cursor->up_match = match;
- } else {
- success = cmp != 1;
+ cmp = page_cmp_dtuple_rec_with_match(tuple, next_rec,
+ offsets, &match, &bytes);
+ if (mode == PAGE_CUR_LE) {
+ success = cmp == -1;
+ cursor->up_match = match;
+ } else {
+ success = cmp != 1;
+ }
}
exit_func:
if (UNIV_LIKELY_NULL(heap)) {