summaryrefslogtreecommitdiff
path: root/storage/myisam
diff options
context:
space:
mode:
authorRamil Kalimullin <ramil@mysql.com>2011-06-07 19:44:15 +0400
committerRamil Kalimullin <ramil@mysql.com>2011-06-07 19:44:15 +0400
commitab3cae3dce34d4e0a854e79766acbd62ca718ef8 (patch)
tree6e48730293e258d62b64afc6cf096539aea03bc8 /storage/myisam
parente3a43936582985f50ff7f17227d25ef41f541050 (diff)
parent768b9a0ef68b9cf1ff29e46a5a9e0e295da8b8d8 (diff)
downloadmariadb-git-ab3cae3dce34d4e0a854e79766acbd62ca718ef8.tar.gz
Auto-merge from mysql-5.1
Diffstat (limited to 'storage/myisam')
-rw-r--r--storage/myisam/mi_update.c9
-rw-r--r--storage/myisam/mi_write.c2
2 files changed, 6 insertions, 5 deletions
diff --git a/storage/myisam/mi_update.c b/storage/myisam/mi_update.c
index a9aad421235..21e1c5a4d19 100644
--- a/storage/myisam/mi_update.c
+++ b/storage/myisam/mi_update.c
@@ -192,8 +192,8 @@ err:
save_errno=my_errno;
if (changed)
key_changed|= HA_STATE_CHANGED;
- if (my_errno == HA_ERR_FOUND_DUPP_KEY || my_errno == HA_ERR_OUT_OF_MEM ||
- my_errno == HA_ERR_RECORD_FILE_FULL)
+ if (my_errno == HA_ERR_FOUND_DUPP_KEY || my_errno == HA_ERR_RECORD_FILE_FULL ||
+ my_errno == HA_ERR_NULL_IN_SPATIAL || my_errno == HA_ERR_OUT_OF_MEM)
{
info->errkey= (int) i;
flag=0;
@@ -211,8 +211,9 @@ err:
{
uint new_length=_mi_make_key(info,i,new_key,newrec,pos);
uint old_length= _mi_make_key(info,i,old_key,oldrec,pos);
- if ((flag++ && _mi_ck_delete(info,i,new_key,new_length)) ||
- _mi_ck_write(info,i,old_key,old_length))
+ if ((flag++ &&
+ share->keyinfo[i].ck_delete(info, i, new_key, new_length)) ||
+ share->keyinfo[i].ck_insert(info, i, old_key, old_length))
break;
}
}
diff --git a/storage/myisam/mi_write.c b/storage/myisam/mi_write.c
index f3fbb7206e2..0e7df53fd6c 100644
--- a/storage/myisam/mi_write.c
+++ b/storage/myisam/mi_write.c
@@ -204,7 +204,7 @@ err:
else
{
uint key_length=_mi_make_key(info,i,buff,record,filepos);
- if (_mi_ck_delete(info,i,buff,key_length))
+ if (share->keyinfo[i].ck_delete(info, i, buff, key_length))
{
if (local_lock_tree)
mysql_rwlock_unlock(&share->key_root_lock[i]);