summaryrefslogtreecommitdiff
path: root/storage/maria/ma_search.c
diff options
context:
space:
mode:
authorMichael Widenius <monty@askmonty.org>2011-01-11 12:18:03 +0200
committerMichael Widenius <monty@askmonty.org>2011-01-11 12:18:03 +0200
commitfcd3f2cd4b9da71592242d6e09a8493432b6bec2 (patch)
tree8721191d14de98a6fe635e0d5b208ff61372a900 /storage/maria/ma_search.c
parent505c663a1e19af4c8ee726b305691414ab5fc999 (diff)
downloadmariadb-git-fcd3f2cd4b9da71592242d6e09a8493432b6bec2.tar.gz
Safety fix for Aria:
- Set lastinx= ~0 when last_key.keyinfo is set. storage/maria/ma_check.c: Set lastinx= ~0 when last_key.keyinfo is set storage/maria/ma_ft_boolean_search.c: Set lastinx= ~0 when last_key.keyinfo is set storage/maria/ma_rt_index.c: Remove setting of info->lastkey.keyinfo, as this should already be set by caller storage/maria/ma_search.c: Added ASSERT to ensure that info->last_key.keyinfo is properly set storage/maria/ma_unique.c: Set lastinx= ~0 when last_key.keyinfo is set
Diffstat (limited to 'storage/maria/ma_search.c')
-rw-r--r--storage/maria/ma_search.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/storage/maria/ma_search.c b/storage/maria/ma_search.c
index 76e31fc9553..f8ec1292523 100644
--- a/storage/maria/ma_search.c
+++ b/storage/maria/ma_search.c
@@ -97,6 +97,7 @@ int _ma_search(register MARIA_HA *info, MARIA_KEY *key, uint32 nextflag,
@note
Position to row is stored in info->lastpos
+ Last used key is stored in info->last_key
@return
@retval 0 ok (key found)
@@ -122,6 +123,7 @@ static int _ma_search_no_save(register MARIA_HA *info, MARIA_KEY *key,
(ulong) (pos / info->s->block_size),
nextflag, (ulong) info->cur_row.lastpos));
DBUG_EXECUTE("key", _ma_print_key(DBUG_FILE, key););
+ DBUG_ASSERT(info->last_key.keyinfo == key->keyinfo);
if (pos == HA_OFFSET_ERROR)
{