summaryrefslogtreecommitdiff
path: root/storage/myisam/mi_write.c
diff options
context:
space:
mode:
Diffstat (limited to 'storage/myisam/mi_write.c')
-rw-r--r--storage/myisam/mi_write.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/storage/myisam/mi_write.c b/storage/myisam/mi_write.c
index b1bbf209e25..53140f2ea4c 100644
--- a/storage/myisam/mi_write.c
+++ b/storage/myisam/mi_write.c
@@ -83,12 +83,15 @@ int mi_write(MI_INFO *info, uchar *record)
goto err2;
/* Calculate and check all unique constraints */
- for (i=0 ; i < share->state.header.uniques ; i++)
+ if (mi_is_any_key_active(share->state.key_map))
{
- if (mi_check_unique(info,share->uniqueinfo+i,record,
- mi_unique_hash(share->uniqueinfo+i,record),
- HA_OFFSET_ERROR))
- goto err2;
+ for (i= 0 ; i < share->state.header.uniques ; i++)
+ {
+ if (mi_check_unique(info, share->uniqueinfo + i, record,
+ mi_unique_hash(share->uniqueinfo + i, record),
+ HA_OFFSET_ERROR))
+ goto err2;
+ }
}
/* Write all keys to indextree */