summaryrefslogtreecommitdiff
path: root/innobase/row
diff options
context:
space:
mode:
authorunknown <marko@hundin.mysql.fi>2005-04-27 12:28:44 +0300
committerunknown <marko@hundin.mysql.fi>2005-04-27 12:28:44 +0300
commit949112c12a2a74555c5049aa8b82cee87660cbb5 (patch)
treef5c1075fcd5b897aa5c2d97fe24ea10e85c5bba0 /innobase/row
parent4a3a46af13ae0703f590ac058fc1df61aeb946b6 (diff)
downloadmariadb-git-949112c12a2a74555c5049aa8b82cee87660cbb5.tar.gz
Fix bugs found in previous optimizations.
Make rec_get_deleted_flag() return zero/nonzero instead of FALSE/TRUE. innobase/btr/btr0btr.c: btr_page_get_sure_split_rec(): Fix bug caused by optimization (dereferencing null pointer in page_rec_is_supremum()) btr_page_insert_fits(): Correct a debug assertion. innobase/btr/btr0cur.c: Add debug assertions about page_rec_is_comp(). Add UNIV_LIKELY and UNIV_UNLIKELY hints. Note that rec_get_deleted_flag() returns zero/nonzero ulint instead of FALSE/TRUE ibool. innobase/include/page0page.ic: Move debug assertion to proper place. innobase/include/rem0rec.h: rec_get_deleted_flag(), rec_set_deleted_flag(): Make the flag zero/nonzero in order to avoid FALSE/TRUE normalization in every rec_get_deleted_flag() call. innobase/include/rem0rec.ic: rec_get_deleted_flag(), rec_set_deleted_flag(): Make the flag zero/nonzero in order to avoid FALSE/TRUE normalization in every rec_get_deleted_flag() call. innobase/rem/rem0rec.c: rec_init_offsets(): Fix bugs introduced in optimization. innobase/row/row0sel.c: Make debug assertion stricter. innobase/row/row0vers.c: Note that rec_get_deleted_flag() returns zero/nonzero ulint instead of FALSE/TRUE ibool.
Diffstat (limited to 'innobase/row')
-rw-r--r--innobase/row/row0sel.c2
-rw-r--r--innobase/row/row0vers.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/innobase/row/row0sel.c b/innobase/row/row0sel.c
index c2f9e79ca65..a2257e0b72e 100644
--- a/innobase/row/row0sel.c
+++ b/innobase/row/row0sel.c
@@ -3459,7 +3459,7 @@ rec_loop:
/* PHASE 4: Look for matching records in a loop */
rec = btr_pcur_get_rec(pcur);
- ut_ad(!page_rec_is_comp(rec) == !index->table->comp);
+ ut_ad(!!page_rec_is_comp(rec) == index->table->comp);
#ifdef UNIV_SEARCH_DEBUG
/*
fputs("Using ", stderr);
diff --git a/innobase/row/row0vers.c b/innobase/row/row0vers.c
index 68231f6eade..8e747423047 100644
--- a/innobase/row/row0vers.c
+++ b/innobase/row/row0vers.c
@@ -57,8 +57,8 @@ row_vers_impl_x_locked_off_kernel(
dtuple_t* entry = NULL; /* assignment to eliminate compiler
warning */
trx_t* trx;
- ibool vers_del;
- ibool rec_del;
+ ulint vers_del;
+ ulint rec_del;
ulint err;
mtr_t mtr;
ulint comp;