summaryrefslogtreecommitdiff
path: root/myisam/mi_check.c
diff options
context:
space:
mode:
authorunknown <serg@serg.mylan>2004-04-02 20:42:35 +0200
committerunknown <serg@serg.mylan>2004-04-02 20:42:35 +0200
commita66fe8dcd5e7106df8e6ce01b1c2fc10c3990b2c (patch)
treedfc8d7c560515b2d009e6d8800028290852daaba /myisam/mi_check.c
parent7c27065c3e79ad2e39fa71ead9121296008faf10 (diff)
downloadmariadb-git-a66fe8dcd5e7106df8e6ce01b1c2fc10c3990b2c.tar.gz
cleanup of ha_myisam::deactivate_non_unique_index() and Co.
Diffstat (limited to 'myisam/mi_check.c')
-rw-r--r--myisam/mi_check.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/myisam/mi_check.c b/myisam/mi_check.c
index 433724a21e6..d25ffeedff0 100644
--- a/myisam/mi_check.c
+++ b/myisam/mi_check.c
@@ -3966,18 +3966,18 @@ static my_bool mi_too_big_key_for_sort(MI_KEYDEF *key, ha_rows rows)
void mi_disable_non_unique_index(MI_INFO *info, ha_rows rows)
{
MYISAM_SHARE *share=info->s;
- uint i;
- if (!info->state->records) /* Don't do this if old rows */
+ MI_KEYDEF *key=share->keyinfo;
+ uint i;
+
+ DBUG_ASSERT(info->state->records == 0 &&
+ (!rows || rows >= MI_MIN_ROWS_TO_DISABLE_INDEXES));
+ for (i=0 ; i < share->base.keys ; i++,key++)
{
- MI_KEYDEF *key=share->keyinfo;
- for (i=0 ; i < share->base.keys ; i++,key++)
+ if (!(key->flag & (HA_NOSAME | HA_SPATIAL | HA_AUTO_KEY)) &&
+ ! mi_too_big_key_for_sort(key,rows) && info->s->base.auto_key != i+1)
{
- if (!(key->flag & (HA_NOSAME | HA_SPATIAL | HA_AUTO_KEY)) &&
- ! mi_too_big_key_for_sort(key,rows) && info->s->base.auto_key != i+1)
- {
- share->state.key_map&= ~ ((ulonglong) 1 << i);
- info->update|= HA_STATE_CHANGED;
- }
+ share->state.key_map&= ~ ((ulonglong) 1 << i);
+ info->update|= HA_STATE_CHANGED;
}
}
}