diff options
author | Ramil Kalimullin <ramil@mysql.com> | 2011-06-07 19:30:43 +0400 |
---|---|---|
committer | Ramil Kalimullin <ramil@mysql.com> | 2011-06-07 19:30:43 +0400 |
commit | 768b9a0ef68b9cf1ff29e46a5a9e0e295da8b8d8 (patch) | |
tree | e60195f4ea766b179476883c1646b11de9e310d5 /sql | |
parent | b502a64bba3143a77632042f02876086ab7dff7b (diff) | |
download | mariadb-git-768b9a0ef68b9cf1ff29e46a5a9e0e295da8b8d8.tar.gz |
Bug#11764487: myisam corruption with insert ignore and invalid spatial data
Problem: in case of wrong data insert into indexed GEOMETRY fields
(e.g. NULL value for a not NULL field) MyISAM reported
"ERROR 126 (HY000): Incorrect key file for table; try to repair it"
due to misuse of the key deletion function.
Fix: always use R-tree key functions for R-tree based indexes
and B-tree key functions for B-tree based indexes.
mysql-test/r/gis-rtree.result:
Bug#11764487: myisam corruption with insert ignore and invalid spatial data
- test result.
mysql-test/t/gis-rtree.test:
Bug#11764487: myisam corruption with insert ignore and invalid spatial data
- test case.
storage/myisam/mi_update.c:
Bug#11764487: myisam corruption with insert ignore and invalid spatial data
- handling update errors check for HA_ERR_NULL_IN_SPATIAL as well to be
consistent with mi_write();
- always use keyinfo->ck_delete()/ck_insert() instead of _mi_ck_delete()/_mi_ck_write()
to handle index properly, as it may be of B-tree or R-tree type.
storage/myisam/mi_write.c:
Bug#11764487: myisam corruption with insert ignore and invalid spatial data
- always use keyinfo->ck_delete() instead of _mi_ck_delete() to handle
index properly, as it may be of B-tree or R-tree type.
Diffstat (limited to 'sql')
0 files changed, 0 insertions, 0 deletions