Commit 06e56579 authored by serg@serg.mylan's avatar serg@serg.mylan

MyISAM was erroneously using max_ref_length when estimating min_pack_length.

parent 147b34e2
...@@ -165,7 +165,9 @@ my_bool _mi_read_pack_info(MI_INFO *info, pbool fix_keys) ...@@ -165,7 +165,9 @@ my_bool _mi_read_pack_info(MI_INFO *info, pbool fix_keys)
diff_length=(int) rec_reflength - (int) share->base.rec_reflength; diff_length=(int) rec_reflength - (int) share->base.rec_reflength;
if (fix_keys) if (fix_keys)
share->rec_reflength=rec_reflength; share->rec_reflength=rec_reflength;
share->base.min_block_length=share->min_pack_length+share->pack.ref_length; share->base.min_block_length=share->min_pack_length+1;
if (share->min_pack_length > 254)
share->base.min_block_length+=2;
if (!(share->decode_trees=(MI_DECODE_TREE*) if (!(share->decode_trees=(MI_DECODE_TREE*)
my_malloc((uint) (trees*sizeof(MI_DECODE_TREE)+ my_malloc((uint) (trees*sizeof(MI_DECODE_TREE)+
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment