mariadb/storage/myisam
Ramil Kalimullin 768b9a0ef6 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.
2011-06-07 19:30:43 +04:00
..
ftbench Merge 2010-12-29 00:47:05 +01:00
.cvsignore
ChangeLog
CMakeLists.txt Backport WL#3653 to 5.1 to enable bundled innodb plugin. 2009-06-10 10:59:49 +02:00
ft_boolean_search.c BUG#50351 - ft_min_word_len=2 Causes query to hang 2010-02-02 15:08:49 +04:00
ft_eval.c Moved a lot of old bug fixes and safe cleanups from Maria 5.1 tree to 5.1 2007-10-11 18:07:40 +03:00
ft_eval.h Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-23 20:20:40 +01:00
ft_nlq_search.c Bug#58057: 5.1 libmysql/libmysql.c unused variable/compile failure 2010-11-10 19:14:47 -02:00
ft_parser.c Fix for bug #37756: enabling fulltext indexes with 2009-01-26 10:35:15 +04:00
ft_static.c BUG#33871 - Duplicate "would" in Fulltext Stopwords 2008-01-30 20:14:35 +04:00
ft_stem.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
ft_stopwords.c Bug#11900714 REMOVE LGPL LICENSED FILES IN MYSQL 5.1 2011-03-28 10:47:30 +02:00
ft_test1.c Moved a lot of old bug fixes and safe cleanups from Maria 5.1 tree to 5.1 2007-10-11 18:07:40 +03:00
ft_test1.h Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
ft_update.c Moved a lot of old bug fixes and safe cleanups from Maria 5.1 tree to 5.1 2007-10-11 18:07:40 +03:00
ftdefs.h Fix for bug #37756: enabling fulltext indexes with 2009-01-26 10:35:15 +04:00
fulltext.h Bug#42733: Type-punning warnings when compiling MySQL -- 2010-06-10 17:16:43 -03:00
ha_myisam.cc Bug#11766249 bug#59316: PARTITIONING AND INDEX_MERGE MEMORY LEAK 2011-03-25 12:36:02 +01:00
ha_myisam.h Bug#11766249 bug#59316: PARTITIONING AND INDEX_MERGE MEMORY LEAK 2011-03-25 12:36:02 +01:00
make-ccc
Makefile.am Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
mi_cache.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_changed.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
mi_check.c Bug#11900714 REMOVE LGPL LICENSED FILES IN MYSQL 5.1 2011-03-28 10:47:30 +02:00
mi_checksum.c Moved a lot of old bug fixes and safe cleanups from Maria 5.1 tree to 5.1 2007-10-11 18:07:40 +03:00
mi_close.c merge 5.0-bugteam to 5.1-bugteam 2009-04-06 12:31:17 +05:30
mi_create.c Fix for bug#11766714 (former bug @59888) "debug assertion when 2011-02-15 14:03:05 +03:00
mi_dbug.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
mi_delete.c Merge from 5.0 for 43414 2009-08-28 18:21:54 +02:00
mi_delete_all.c BUG#51868 - crash with myisam_use_mmap and partitioned 2010-03-22 16:30:27 +04:00
mi_delete_table.c BUG#40980 - Drop table can remove another MyISAM table's 2010-04-01 18:49:02 +04:00
mi_dynrec.c Bug#48327: Some crashes specific to FreeBSD ("embedded") 2010-07-16 14:33:35 -03:00
mi_extra.c BUG#51868 - crash with myisam_use_mmap and partitioned 2010-03-22 16:30:27 +04:00
mi_info.c Merge mysql.com:/home/svoj/devel/mysql/BUG27516/mysql-5.0-engines 2007-04-13 12:44:02 +05:00
mi_key.c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris 2007-08-13 16:11:25 +03:00
mi_keycache.c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris 2007-08-13 16:11:25 +03:00
mi_locking.c Bug#45288: pb2 returns a lot of compilation warnings on linux 2010-07-20 15:07:36 -03:00
mi_log.c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris 2007-08-13 16:11:25 +03:00
mi_open.c Bug#53445: Build with -Wall and fix warnings that it generates 2010-07-02 15:30:47 -03:00
mi_packrec.c merge mysql-5.0-bugteam to mysql-5.1-bugteam 2009-12-17 17:15:13 +05:30
mi_page.c Bug#53445: Build with -Wall and fix warnings that it generates 2010-07-02 15:30:47 -03:00
mi_panic.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
mi_preload.c Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.1 2007-05-24 15:26:10 +03:00
mi_range.c Bug#45288: pb2 returns a lot of compilation warnings on linux 2010-09-24 19:13:51 -03:00
mi_rename.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
mi_rfirst.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_rkey.c Merge bk-internal.mysql.com:/home/bk/mysql-5.1 2007-08-14 00:22:34 +03:00
mi_rlast.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_rnext.c BUG#51877 - HANDLER interface causes invalid memory read 2010-03-25 15:49:01 +04:00
mi_rnext_same.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_rprev.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_rrnd.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_rsame.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_rsamepos.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_scan.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
mi_search.c Bug#45288: pb2 returns a lot of compilation warnings on linux 2010-09-24 19:13:51 -03:00
mi_static.c merge mysql-5.0-bugteam to mysql-5.1-bugteam 2009-12-24 12:04:31 +05:30
mi_statrec.c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris 2007-08-13 16:11:25 +03:00
mi_test1.c Bug#11900714 REMOVE LGPL LICENSED FILES IN MYSQL 5.1 2011-03-28 10:47:30 +02:00
mi_test2.c Bug#53445: Build with -Wall and fix warnings that it generates 2010-07-02 15:30:47 -03:00
mi_test3.c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris 2007-08-13 16:11:25 +03:00
mi_test_all.res
mi_test_all.sh Merge 2010-12-29 00:47:05 +01:00
mi_unique.c Bug#53445: Build with -Wall and fix warnings that it generates 2010-07-02 15:30:47 -03:00
mi_update.c Bug#11764487: myisam corruption with insert ignore and invalid spatial data 2011-06-07 19:30:43 +04:00
mi_write.c Bug#11764487: myisam corruption with insert ignore and invalid spatial data 2011-06-07 19:30:43 +04:00
myisam_ftdump.c Bug#42733: Type-punning warnings when compiling MySQL -- 2010-06-10 17:16:43 -03:00
myisamchk.c Bug#45288: pb2 returns a lot of compilation warnings 2010-10-20 16:21:40 -02:00
myisamdef.h Bug#11900714 REMOVE LGPL LICENSED FILES IN MYSQL 5.1 2011-03-28 10:47:30 +02:00
myisamlog.c Bug#42733: Type-punning warnings when compiling MySQL -- 2010-06-10 17:16:43 -03:00
myisampack.c Merge 2010-12-29 00:47:05 +01:00
NEWS
plug.in
rt_index.c Merge 2010-12-29 00:47:05 +01:00
rt_index.h Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
rt_key.c Merge chilla.local:/home/mydev/mysql-5.0-bug25673 2007-03-08 12:13:54 +01:00
rt_key.h Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
rt_mbr.c Merge mysql.com:/home/hf/work/30286/my50-30286 2007-10-05 15:43:15 +05:00
rt_mbr.h Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
rt_split.c Bug#45288: pb2 returns a lot of compilation warnings on linux 2010-09-24 19:13:51 -03:00
rt_test.c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris 2007-08-13 16:11:25 +03:00
sort.c Merge fix for BUG51866 to mysql-5.1-bugteam. 2010-03-25 16:11:16 +04:00
sp_defs.h WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
sp_key.c porting 29070 to 5.1-opt 2007-07-11 13:09:39 +03:00
sp_test.c Bug#11900714 REMOVE LGPL LICENSED FILES IN MYSQL 5.1 2011-03-28 10:47:30 +02:00
test_pack
TODO