mariadb/storage/myisam
Sergei Golubchik 69abd43703 MDEV-17070 Table corruption or Assertion table->file->stats.records > 0 || error' or Assertion !is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed upon actions on temporary table
This was caused by a combination of factors:
* MyISAM/Aria temporary tables historically never saved the state
  to disk (MYI/MAI), because the state never needed to persist
* certain ALTER TABLE operations modify the original TABLE structure
  and if they fail, the original table has to be reopened to
  revert all changes (m_needs_reopen=1)

as a result, when ALTER fails and MyISAM/Aria temp table gets reopened,
it reads the stale state from the disk.

As a fix, MyISAM/Aria tables now *always* write the state to disk
on close, *unless* HA_EXTRA_PREPARE_FOR_DROP was done first. And
the server now always does HA_EXTRA_PREPARE_FOR_DROP before dropping
a temporary table.
2019-03-12 09:51:42 +01:00
..
ftbench
mysql-test Merge branch '10.1' into 10.2 2017-08-17 11:38:34 +02:00
ChangeLog
CMakeLists.txt
ft_boolean_search.c Merge branch '10.1' into 10.2 2016-12-29 13:23:18 +01:00
ft_myisam.c Correct FSF address 2017-03-10 18:21:29 +01:00
ft_nlq_search.c
ft_parser.c Bug #25447551: HANDLE_FATAL_SIGNAL (SIG=11) IN 2017-03-15 16:45:21 +05:30
ft_static.c MDEV-10759 Fix Aria to support 2-byte collation IDs 2016-12-02 14:05:16 +02:00
ft_stopwords.c
ft_update.c Fixed compiler warnings and test failures found by buildbot 2016-06-24 02:25:14 +03:00
ftdefs.h
fulltext.h
ha_myisam.cc MDEV-18486 Database crash on a table with indexed virtual column 2019-03-01 13:23:34 -05:00
ha_myisam.h Merge branch '10.1' into 10.2 2017-03-30 12:48:42 +02:00
mi_cache.c
mi_changed.c
mi_check.c Merge 10.1 into 10.2 2018-08-02 08:19:57 +03:00
mi_checksum.c
mi_close.c MDEV-17070 Table corruption or Assertion table->file->stats.records > 0 || error' or Assertion !is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed upon actions on temporary table 2019-03-12 09:51:42 +01:00
mi_create.c Merge branch '10.1' into 10.2 2017-03-30 12:48:42 +02:00
mi_dbug.c
mi_delete.c MDEV-13844 : Fix Windows warnings. Fix DBUG_PRINT. 2017-09-28 17:20:46 +00:00
mi_delete_all.c MDEV-15575 different results when using CTE and big_tables=1. 2018-04-16 07:22:26 -07:00
mi_delete_table.c BUG#25451091:CREATE TABLE DATA DIRECTORY / INDEX DIRECTORY 2017-05-12 09:47:48 +05:30
mi_dynrec.c cleanup: my_off_t mmaped_length -> size_t 2018-02-06 14:51:56 +01:00
mi_extra.c MDEV-17070 Table corruption or Assertion table->file->stats.records > 0 || error' or Assertion !is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed upon actions on temporary table 2019-03-12 09:51:42 +01:00
mi_extrafunc.h
mi_info.c
mi_key.c MDEV-16534 PPC64: Unexpected error with a negative value into auto-increment columns in HEAP, MyISAM, ARIA 2018-06-20 16:36:46 +04:00
mi_keycache.c
mi_locking.c Merge 5.5 into 10.0 2018-07-30 15:09:25 +03:00
mi_log.c
mi_open.c Merge branch '10.1' into 10.2 2018-06-21 23:47:39 +02:00
mi_packrec.c cleanup: my_off_t mmaped_length -> size_t 2018-02-06 14:51:56 +01:00
mi_page.c
mi_panic.c
mi_preload.c Fix some conversion warnings. 2017-09-30 09:26:58 +00:00
mi_range.c
mi_rename.c
mi_rfirst.c
mi_rkey.c MDEV-13844 : Fix Windows warnings. Fix DBUG_PRINT. 2017-09-28 17:20:46 +00:00
mi_rlast.c
mi_rnext.c
mi_rnext_same.c
mi_rprev.c
mi_rrnd.c
mi_rsame.c
mi_rsamepos.c
mi_scan.c
mi_search.c Merge 10.1 into 10.2 2018-01-03 20:42:09 +02:00
mi_static.c Merge branch '5.5' into 10.0 2017-03-03 01:37:54 +02:00
mi_statrec.c
mi_test1.c
mi_test2.c Remove labs() warning from maria and myisam storage engines 2016-12-01 15:01:33 +01:00
mi_test3.c
mi_test_all.res
mi_test_all.sh
mi_unique.c Fixed compiler warnings and test failures found by buildbot 2016-06-24 02:25:14 +03:00
mi_update.c
mi_write.c MDEV-13844 : Fix Windows warnings. Fix DBUG_PRINT. 2017-09-28 17:20:46 +00:00
myisam_ftdump.c
myisamchk.c After-merge fix for commit 98eb9518db 2018-03-16 15:49:53 +02:00
myisamdef.h Remove most 'register' use in C++ 2018-04-24 12:48:27 +03:00
myisamlog.c
myisampack.c After-merge fix for commit 98eb9518db 2018-03-16 15:49:53 +02:00
NEWS
rt_index.c
rt_index.h
rt_key.c
rt_key.h
rt_mbr.c
rt_mbr.h
rt_split.c MDEV-11451: isinf || isnan -> !isfinite 2016-12-05 09:22:00 +11:00
rt_test.c
sort.c Simplify IO_CACHE by removing current_pos and end_pos as self-references 2017-06-28 15:23:36 +03:00
sp_defs.h
sp_key.c
sp_test.c
test_pack
TODO