Commit 9ae3dde8 authored by unknown's avatar unknown
Browse files

mi_write: fix for ft2 when found word (in the tree) has different length as the word to insert


myisam/mi_check.c:
  one more correctness check for CHECK of fulltext indexes
parent 946f042d
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -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;
      }
+1 −0
Original line number Diff line number Diff line
@@ -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,