|
|
|
@ -16,7 +16,7 @@ |
|
|
|
|
|
|
|
/* Functions to compressed records */ |
|
|
|
|
|
|
|
#include "myisamdef.h" |
|
|
|
#include "fulltext.h" |
|
|
|
|
|
|
|
#define IS_CHAR ((uint) 32768) /* Bit if char (not offset) in tree */ |
|
|
|
|
|
|
|
@ -228,11 +228,19 @@ my_bool _mi_read_pack_info(MI_INFO *info, pbool fix_keys) |
|
|
|
{ |
|
|
|
for (i=0 ; i < share->base.keys ; i++) |
|
|
|
{ |
|
|
|
share->keyinfo[i].keylength+=(uint16) diff_length; |
|
|
|
share->keyinfo[i].minlength+=(uint16) diff_length; |
|
|
|
share->keyinfo[i].maxlength+=(uint16) diff_length; |
|
|
|
share->keyinfo[i].seg[share->keyinfo[i].keysegs].length= |
|
|
|
(uint16) rec_reflength; |
|
|
|
MI_KEYDEF *keyinfo= &share->keyinfo[i]; |
|
|
|
keyinfo->keylength+= (uint16) diff_length; |
|
|
|
keyinfo->minlength+= (uint16) diff_length; |
|
|
|
keyinfo->maxlength+= (uint16) diff_length; |
|
|
|
keyinfo->seg[keyinfo->flag & HA_FULLTEXT ? |
|
|
|
FT_SEGS : keyinfo->keysegs].length= (uint16) rec_reflength; |
|
|
|
} |
|
|
|
if (share->ft2_keyinfo.seg) |
|
|
|
{ |
|
|
|
MI_KEYDEF *ft2_keyinfo= &share->ft2_keyinfo; |
|
|
|
ft2_keyinfo->keylength+= (uint16) diff_length; |
|
|
|
ft2_keyinfo->minlength+= (uint16) diff_length; |
|
|
|
ft2_keyinfo->maxlength+= (uint16) diff_length; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|