mariadb/storage/myisam
Michael Widenius fa36a7426b Fixed lp:879939 "assertion in ha_maria::enable_indexes with derived_with_keys=on"
Honor unique/not unique when creating keys for internal tempory tables.
Added new variables to be used to limit how keys are created for internal temporary tables.


include/maria.h:
  Added maria_max_key_length() and maria_max_key_segments()
include/myisam.h:
  Added myisam_max_key_length() and myisam_max_key_segments()
mysql-test/r/mysql.result:
  Drop all used tables
mysql-test/r/subselect4.result:
  Added test case for lp:879939
mysql-test/t/mysql.test:
  Drop all used tables
mysql-test/t/subselect4.test:
  Added test case for lp:879939
sql/mysql_priv.h:
  Added internal_tmp_table_max_key_length and internal_tmp_table_max_key_segments to be used to limit how keys for derived tables are created.
sql/mysqld.cc:
  Added internal_tmp_table_max_key_length and internal_tmp_table_max_key_segments to be used to limit how keys for derived tables are created.
sql/share/errmsg.txt:
  Added new error message for internal errors
sql/sql_select.cc:
  Give error if we try to create a wrong key (this error should never happen)
  Honor unique/not unique when creating keys for internal tempory tables.
storage/maria/ha_maria.cc:
  Added change_table_ptr() to ensure that external_ref points always to the correct table.
  (Not having this caused an assert in the included test)
storage/maria/ha_maria.h:
  Added change_table_ptr() to ensure that external_ref points always to the correct table.
storage/maria/ma_check.c:
  Fixed bug in Duplicate key error printing (now row position is printed correctly)
storage/maria/ma_create.c:
  maria_max_key_length() -> _ma_max_key_length()
storage/maria/ma_info.c:
  Added extern function maria_max_key_length() to calculate the max key length based on current block size.
storage/maria/ma_open.c:
  maria_max_key_length() -> _ma_max_key_length()
storage/maria/maria_def.h:
  maria_max_key_length() -> _ma_max_key_length()
storage/myisam/ha_myisam.cc:
  Added change_table_ptr() to ensure that external_ref points always to the correct table.
  (Not having this caused an assert in the included test)
storage/myisam/ha_myisam.h:
  Added change_table_ptr() to ensure that external_ref points always to the correct table.
2011-10-26 20:25:18 +03:00
..
ftbench Merge 2010-12-29 00:47:05 +01:00
.cvsignore Changes to create storage directory for storage engines. 2005-04-26 18:19:54 -07:00
ChangeLog Changes to create storage directory for storage engines. 2005-04-26 18:19:54 -07:00
CMakeLists.txt merge with 5.1 2011-10-07 00:18:30 +02:00
ft_boolean_search.c Improved speed of thr_alarm from O(N) to O(1). thr_alarm is used to handle timeouts and kill of connections. 2010-07-16 10:33:01 +03: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_myisam.c Fixed some compiler warnings and errors in test suite found by buildbot 2010-01-27 23:53:08 +02:00
ft_nlq_search.c Merge with 5.2 2011-03-09 15:47:59 +02:00
ft_parser.c merge 5.1->5.2 2010-02-01 08:14:12 +02:00
ft_static.c Merge mysql.com:/home/my/mysql-5.1 2008-04-28 19:24:05 +03: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 Merge with MySQL 5.1.57/58 2011-05-02 20:58:45 +03: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 Fixed some compiler warnings and errors in test suite found by buildbot 2010-01-27 23:53:08 +02:00
fulltext.h Bug#42733: Type-punning warnings when compiling MySQL -- 2010-06-10 17:16:43 -03:00
ha_myisam.cc Fixed lp:879939 "assertion in ha_maria::enable_indexes with derived_with_keys=on" 2011-10-26 20:25:18 +03:00
ha_myisam.h Fixed lp:879939 "assertion in ha_maria::enable_indexes with derived_with_keys=on" 2011-10-26 20:25:18 +03:00
make-ccc Changes to create storage directory for storage engines. 2005-04-26 18:19:54 -07:00
Makefile.am Fixed compiler and gmake warnings 2010-11-29 11:27:52 +02:00
mi_cache.c Added error HA_ERR_FILE_TOO_SHORT to be used when files are shorter than expected (by my_read/my_pread) 2007-12-04 23:23:42 +02: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 Compiler warning about assigned but not used variables fixed. 2011-10-18 13:44:12 +03:00
mi_checksum.c First part of redo/undo for key pages 2007-11-14 19:08:06 +02:00
mi_close.c merge LP Bug#686184 2010-12-07 00:14:16 +01:00
mi_create.c Merge with MySQL 5.1.57/58 2011-05-02 20:58:45 +03:00
mi_dbug.c Automatic merge with 5.1 2010-11-04 16:53:10 +02:00
mi_delete.c Merge MySQL 5.1.39 into MariaDB 5.1. 2009-10-15 23:38:29 +02:00
mi_delete_all.c merge 5.1->5.2 2010-06-01 21:52:20 +02: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 Merge with MySQL 5.1.50 2010-08-27 17:12:44 +03:00
mi_extra.c Fix for lp:711565 "Index Condition Pushdown can make a thread hold MyISAM locks as well as be unKILLable for long time" 2011-02-18 17:43:59 +02: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 Fix for lp:711565 "Index Condition Pushdown can make a thread hold MyISAM locks as well as be unKILLable for long time" 2011-02-18 17:43:59 +02:00
mi_keycache.c WL#86: Partitioned key cache for MyISAM. 2010-02-16 08:41:11 -08:00
mi_locking.c Backport Fix for Bug#24509 - 2048 file descriptor limit on windows needs increasing. 2011-06-12 15:52:07 +02:00
mi_log.c Merge hynda.mysql.fi:/home/my/mysql-5.1-main 2007-09-27 17:05:07 +03:00
mi_open.c merge LP Bug#686184 2010-12-07 00:15:27 +01:00
mi_packrec.c Merge MySQL 5.1.44 into MariaDB. 2010-03-04 09:03:07 +01:00
mi_page.c merge with 5.1 2010-09-11 20:43:48 +02:00
mi_panic.c Merge with 5.1 to get in changes from MySQL 5.1.55 2011-02-28 19:39:30 +02:00
mi_preload.c WL#86: Partitioned key cache for MyISAM. 2010-02-16 08:41:11 -08:00
mi_range.c Merge with MySQL 5.1.52 2010-11-23 23:39:59 +02: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 with bugfix 2011-02-18 21:45:32 +02: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 Fix for lp:711565 "Index Condition Pushdown can make a thread hold MyISAM locks as well as be unKILLable for long time" 2011-02-18 17:43:59 +02:00
mi_rnext_same.c Fix for lp:711565 "Index Condition Pushdown can make a thread hold MyISAM locks as well as be unKILLable for long time" 2011-02-18 17:43:59 +02:00
mi_rprev.c Fix for lp:711565 "Index Condition Pushdown can make a thread hold MyISAM locks as well as be unKILLable for long time" 2011-02-18 17:43:59 +02: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 Fix for lp:711565 "Index Condition Pushdown can make a thread hold MyISAM locks as well as be unKILLable for long time" 2011-02-18 17:43:59 +02:00
mi_static.c Fix for lp:711565 "Index Condition Pushdown can make a thread hold MyISAM locks as well as be unKILLable for long time" 2011-02-18 17:43:59 +02:00
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 Merge with MariaDB 5.1 2011-05-03 19:10:10 +03:00
mi_test2.c Reset variable to not access it uninitialized 2011-09-14 12:48:08 +03:00
mi_test3.c WL#86: Partitioned key cache for MyISAM. 2010-02-16 08:41:11 -08:00
mi_test_all.res Merge chilla.local:/home/mydev/mysql-5.0-bug14400-monty 2006-09-19 14:33:29 +02:00
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 Merge MySQL 5.1.39 into MariaDB 5.1. 2009-10-15 23:38:29 +02:00
mi_write.c Merge with MySQL 5.1.57/58 2011-05-02 20:58:45 +03:00
myisam_ftdump.c Bug#42733: Type-punning warnings when compiling MySQL -- 2010-06-10 17:16:43 -03:00
myisamchk.c Fixed that automatic killing of delayed insert thread (in flush, alter table etc) will not abort auto-repair of MyISAM table. 2011-09-09 19:44:07 +03:00
myisamdef.h Merge with MariaDB 5.2 2011-05-10 18:17:43 +03:00
myisamlog.c Merge with MariaDB 5.1.49 2010-08-05 22:56:11 +03:00
myisampack.c Merge with 5.2 2011-03-09 15:47:59 +02:00
NEWS Changes to create storage directory for storage engines. 2005-04-26 18:19:54 -07:00
plug.in remove redundant declarations 2011-10-04 15:01:26 +02:00
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 Fix for Valgrind errors when running rt_test and ma_rt_test, and segmentation fault 2008-06-10 15:44:41 +02:00
sort.c Merge 5.2->5.3 2011-09-02 15:10:10 +03: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 Changes to create storage directory for storage engines. 2005-04-26 18:19:54 -07:00
TODO Changes to create storage directory for storage engines. 2005-04-26 18:19:54 -07:00