diff options
author | holyfoot/hf@mysql.com/hfmain.(none) <> | 2007-11-19 11:03:03 +0400 |
---|---|---|
committer | holyfoot/hf@mysql.com/hfmain.(none) <> | 2007-11-19 11:03:03 +0400 |
commit | 140dd4f322fdbf341af255a4fcce187fbd08f71d (patch) | |
tree | cb2b107014561daee7911fb4fc491dfbb65509b3 /myisam | |
parent | ea3bfdb26d81e974ba08fbe1d74f6128bc61f7d0 (diff) | |
download | mariadb-git-140dd4f322fdbf341af255a4fcce187fbd08f71d.tar.gz |
Bug #30284 spatial key corruption.
SPATIAL key is fine actually, but the chk_key() function
mistakenly returns error. It tries to compare checksums
of btree and SPATIAL keys while the checksum for the SPATIAL isn't
calculated (always 0). Same thing with FULLTEXT keys is handled
using full_text_keys counter, so fixed by counting both
SPATIAL and FULLTEXT keys in that counter.
Diffstat (limited to 'myisam')
-rw-r--r-- | myisam/mi_check.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/myisam/mi_check.c b/myisam/mi_check.c index ce8fb04874e..64aa0b76877 100644 --- a/myisam/mi_check.c +++ b/myisam/mi_check.c @@ -454,7 +454,7 @@ int chk_key(MI_CHECK *param, register MI_INFO *info) if ((!(param->testflag & T_SILENT))) printf ("- check data record references index: %d\n",key+1); - if (keyinfo->flag & HA_FULLTEXT) + if (keyinfo->flag & (HA_FULLTEXT | HA_SPATIAL)) full_text_keys++; if (share->state.key_root[key] == HA_OFFSET_ERROR && (info->state->records == 0 || keyinfo->flag & HA_FULLTEXT)) |