summaryrefslogtreecommitdiff
path: root/myisam
diff options
context:
space:
mode:
authorunknown <brian@avenger.(none)>2004-11-11 22:12:01 -0800
committerunknown <brian@avenger.(none)>2004-11-11 22:12:01 -0800
commit0265f48bfdd753a8381087277ddee9f6e6996388 (patch)
treec1dd85e8c1468a1c3861b8d86982846f010296a5 /myisam
parent04519f434b2f06f448608e6c1c1bb55f712f5913 (diff)
parent0f0935efe81d61a4145df679d04b4b28193903af (diff)
downloadmariadb-git-0265f48bfdd753a8381087277ddee9f6e6996388.tar.gz
Merge avenger.(none):/export/brian/mysql/test/4.1
into avenger.(none):/export/brian/mysql/test/5.0 client/mysqldump.c: Auto merged myisam/mi_check.c: Auto merged
Diffstat (limited to 'myisam')
-rw-r--r--myisam/mi_check.c8
-rw-r--r--myisam/mi_write.c1
2 files changed, 9 insertions, 0 deletions
diff --git a/myisam/mi_check.c b/myisam/mi_check.c
index 1df518a2712..bf684270c0a 100644
--- a/myisam/mi_check.c
+++ b/myisam/mi_check.c
@@ -656,6 +656,14 @@ static int chk_index(MI_CHECK *param, MI_INFO *info, MI_KEYDEF *keyinfo,
if (chk_index_down(param,info,&info->s->ft2_keyinfo,record,
temp_buff,&tmp_keys,key_checksum,1))
goto err;
+ if (tmp_keys + subkeys)
+ {
+ mi_check_print_error(param,"Number of words in the 2nd level tree "
+ "does not match the number in the header. "
+ "Parent word in on the page %s, offset %d",
+ llstr(page,llbuff), old_keypos-buff);
+ goto err;
+ }
(*keys)+=tmp_keys-1;
continue;
}
diff --git a/myisam/mi_write.c b/myisam/mi_write.c
index dc596672a84..e059bbb569f 100644
--- a/myisam/mi_write.c
+++ b/myisam/mi_write.c
@@ -372,6 +372,7 @@ static int w_search(register MI_INFO *info, register MI_KEYDEF *keyinfo,
/* popular word. two-level tree. going down */
my_off_t root=info->dupp_key_pos;
keyinfo=&info->s->ft2_keyinfo;
+ get_key_full_length_rdonly(off, key);
key+=off;
keypos-=keyinfo->keylength+nod_flag; /* we'll modify key entry 'in vivo' */
error=_mi_ck_real_write_btree(info, keyinfo, key, 0,