Disabling and enabling indexes on a non-empty table grows the
index file.
Disabling indexes just sets a flag per non-unique index and does not
free the index blocks of the affected indexes. Re-enabling indexes
creates new indexes with new blocks. The old blocks remain unused
in the index file.
Fixed by dropping and re-creating all indexes if non-empty disabled
indexes exist when enabling indexes. Dropping all indexes resets
the internal end-of-file marker to the end of the index file header.
It also clears the root block pointers of every index and clears the
deleted blocks chains. This way all blocks are declared as free.
myisam/mi_check.c:
Bug#4692 - DISABLE/ENABLE KEYS waste a space
Added function mi_drop_all_indexes() to support drop of all indexes
in case we want to re-enable non-empty disabled indexes.
Changed mi_repair(), mi_repair_by_sort(), and mi_repair_parallel()
to use the new function instead of duplicate drop index code.
mysql-test/r/myisam.result:
Bug#4692 - DISABLE/ENABLE KEYS waste a space
Added test result.
mysql-test/t/myisam.test:
Bug#4692 - DISABLE/ENABLE KEYS waste a space
Added test.
- Renamed "Using join cache" to "Using join buffer".
- "Using join buffer" is now printed on the last
table that "reads" from the join buffer cache.
mysql-test/r/archive_gis.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/compress.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ctype_utf8.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/derived.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/distinct.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/func_group.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/func_group_innodb.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/gis.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/greedy_optimizer.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/group_by.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/group_min_max.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/index_merge_myisam.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/information_schema.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/innodb_gis.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/innodb_mysql.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/join.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/join_nested.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/key_diff.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/myisam.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ndb_condition_pushdown.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ndb_gis.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/range.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/row.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/select.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ssl.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ssl_compress.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/subselect.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/subselect3.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/union.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/view.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
sql/sql_select.cc:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
into magare.gmz:/home/kgeorge/mysql/work/B28476-5.1-opt
Zero merge all except the new test
mysql-test/r/key.result:
bug #28476: zero-merge to 5.1
mysql-test/r/myisam.result:
bug #28476: merge to 5.1
mysql-test/t/key.test:
bug #28476: zero-merge to 5.1
mysql-test/t/myisam.test:
bug #28476: merge to 5.1
sql/sql_base.cc:
bug #28476: zero-merge to 5.1
sql/sql_select.cc:
bug #28476: zero-merge to 5.1
sql/table.h:
bug #28476: zero-merge to 5.1
When processing the USE/FORCE index hints
the optimizer was not checking if the indexes
specified are enabled (see ALTER TABLE).
Fixed by:
Backporting the fix for bug 20604 to 5.0
mysql-test/r/key.result:
Test for BUG 20604.
The important part of the test is the explain output that
tests what indexes are used.
mysql-test/r/myisam.result:
Bug #28476: test cases
mysql-test/t/key.test:
Bug 20604:
The minimal test case that reveals the bug. The optimizer for
aggregates relies on keys disabled with ALTER TABLE ... DISABLE KEYS
not being in the set TABLE::keys_in_use_for_query.
When the execution engine tries to use a disabled index, MyISAM
returns an error.
mysql-test/t/myisam.test:
Bug #28476: test cases
sql/sql_base.cc:
Bug #28476:
- Ignore disabled indexes in USE/FORCE index
sql/sql_select.cc:
Bug 20604 : The intersection operation between table->s->keys_in_use
and table->keys_in_use_for_query is no longer necessary.
We can trust that the latter is a subset of the former.
sql/table.h:
Bug 20604:
Added comments to TABLE_SHARE::keys_in_use and
TABLE::keys_in_use_for_query.
- added join cache indication in EXPLAIN (Extra column).
- prefer filesort over full scan over
index for ORDER BY (because it's faster).
- when switching from REF to RANGE because
RANGE uses longer key turn off sort on
the head table only as the resulting
RANGE access is a candidate for join cache
and we don't want to disable it by sorting
on the first table only.
mysql-test/r/archive_gis.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/compress.result:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over index for ORDER BY.
mysql-test/r/ctype_utf8.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/derived.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/distinct.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/func_group.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/func_group_innodb.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/gis.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/greedy_optimizer.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/group_by.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/group_min_max.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/index_merge_myisam.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/information_schema.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/innodb_gis.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/innodb_mysql.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/join.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/join_nested.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/key_diff.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/myisam.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/ndb_condition_pushdown.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/ndb_gis.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/range.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/row.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/select.result:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over index for ORDER BY.
mysql-test/r/ssl.result:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over index for ORDER BY.
mysql-test/r/ssl_compress.result:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over index for ORDER BY.
mysql-test/r/subselect.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/subselect3.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/union.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/view.result:
bug #27531: join cache in EXPLAIN
sql/sql_select.cc:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over
index for ORDER BY.
- disable sorting on the first table only
when switching from REF to RANGE.
into chilla.local:/home/mydev/mysql-5.1-axmrg
mysql-test/r/heap_btree.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/t/heap_btree.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysys/thr_alarm.c:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/ha_ndbcluster.h:
Auto merged
sql/item_func.cc:
Auto merged
storage/heap/hp_write.c:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisam/mi_range.c:
Auto merged
storage/myisam/mi_search.c:
Auto merged
storage/ndb/include/ndbapi/NdbIndexScanOperation.hpp:
Auto merged
storage/ndb/include/ndbapi/NdbScanOperation.hpp:
Auto merged
storage/ndb/src/ndbapi/NdbScanOperation.cpp:
Auto merged
sql/mysqld.cc:
Manual merge
into chilla.local:/home/mydev/mysql-5.0-axmrg
myisam/mi_range.c:
Auto merged
myisam/mi_search.c:
Auto merged
mysql-test/r/heap_btree.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/item_func.cc:
Auto merged
mysql-test/r/myisam.result:
Manual merge from 4.1
mysql-test/t/heap_btree.test:
Manual merge from 4.1
when index is used
When the table contained TEXT columns with empty contents
('', zero length, but not NULL) _and_ strings starting with
control characters like tabulator or newline, the empty values
were not found in a "records in range" estimate. Hence count(*)
missed these records.
The reason was a different set of search flags used for key
insert and key range estimation.
I decided to fix the set of flags used in range estimation.
Otherwise millions of databases around the world would require
a repair after an upgrade.
The consequence is that the manual must be fixed, which claims
that TEXT columns are compared with "end space padding". This
is true for CHAR/VARCHAR but wrong for TEXT. See also bug 21335.
myisam/mi_range.c:
Bug#26231 - select count(*) on myisam table returns wrong value
when index is used
Added SEARCH_UPDATE to the search flags so that it compares
like write/update/delete operations do. Only so it expects
the keys at the place where they have been inserted.
myisam/mi_search.c:
Bug#26231 - select count(*) on myisam table returns wrong value
when index is used
Added some comments to explain how _mi_get_binary_pack_key()
works.
mysql-test/r/myisam.result:
Bug#26231 - select count(*) on myisam table returns wrong value
when index is used
Added a test.
mysql-test/t/myisam.test:
Bug#26231 - select count(*) on myisam table returns wrong value
when index is used
Added test result.
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
mysql-test/r/innodb.result:
Auto merged
mysql-test/r/insert_update.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/subselect3.result:
Auto merged
mysql-test/r/type_blob.result:
Auto merged
mysql-test/t/insert_update.test:
Auto merged
mysql-test/t/select.test:
Auto merged
BitKeeper/deleted/.del-bdb.result:
Auto merged
mysql-test/extra/binlog_tests/blackhole.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/blackhole/ha_blackhole.cc:
Auto merged
mysql-test/r/binlog_stm_blackhole.result:
manual merge
mysql-test/r/insert_select.result:
manual merge
mysql-test/r/subselect.result:
manual merge
mysql-test/r/update.result:
manual merge
mysql-test/t/insert_select.test:
manual merge
mysql-test/t/subselect.test:
manual merge
sql/sql_help.cc:
manual merge
sql/sql_insert.cc:
manual merge
sql/sql_update.cc:
manual merge
were evaluated.
According to the new rules for string comparison partial indexes on text
columns can be used in the same cases when partial indexes on varchar
columns can be used.
mysql-test/r/endspace.result:
Adjusted results after the fix for bug #25971.
mysql-test/r/innodb.result:
Adjusted results after the fix for bug #25971.
mysql-test/r/myisam.result:
Adjusted results after the fix for bug #25971.
mysql-test/r/select.result:
Added a test case for bug #25971.
mysql-test/r/type_blob.result:
Adjusted results after the fix for bug #25971.
mysql-test/t/select.test:
Added a test case for bug #25971.
into chilla.local:/home/mydev/mysql-4.1-axmrg
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/symlink.test:
Auto merged
mysql-test/r/myisam.result:
Manual merged
mysql-test/t/myisam.test:
Manual merged
into mysql.com:/home/svoj/devel/mysql/merge/mysql-5.1-engines
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/symlink.test:
Auto merged
sql/lock.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/table.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
storage/myisam/mi_packrec.c:
Auto merged
mysql-test/r/myisam.result:
Manually merged.
mysql-test/t/myisam.test:
Manually merged.
into mysql.com:/home/svoj/devel/mysql/merge/mysql-5.0-engines
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/symlink.test:
Auto merged
sql/table.cc:
Auto merged
mysql-test/r/myisam.result:
Manually merged.
mysql-test/t/myisam.test:
Manually merged.
Fixed test. On 32-bit machines which compile without
-DBIG_TABLES, MAX_ROWS is truncated to a 32-bit value.
Using a value below 4G is portable.
mysql-test/r/myisam.result:
Bug#24607 - MyISAM pointer size determined incorrectly
Fixed test results.
Bug #25000 myisam.test fails on 'pb-valgrind-*' Valgrind
- Move tests that need symlink to symlink.test
mysql-test/r/myisam.result:
- Move tests that need symlink to symlink.test
mysql-test/r/symlink.result:
- Move tests that need symlink to symlink.test
mysql-test/t/myisam.test:
- Move tests that need symlink to symlink.test
mysql-test/t/symlink.test:
- Move tests that need symlink to symlink.test
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint-greener
Makefile.am:
Auto merged
configure.in:
Auto merged
include/mysql.h:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/lib/mtr_cases.pl:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysqlbug.sh:
Auto merged
server-tools/instance-manager/Makefile.am:
Auto merged
sql/event_queue.cc:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/item_sum.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_plugin.cc:
Auto merged
sql/sql_show.cc:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
mysql-test/r/warnings.result:
Manual merge.
mysql-test/t/warnings.test:
Manual merge.
strings/ctype-extra.c:
Manual merge.
The function mi_get_pointer_length() computed too small
pointer size for very large tables.
Inserted missing 'else' between the branches for very
large tables.
myisam/mi_create.c:
Bug#24607 - MyISAM pointer size determined incorrectly
Inserted missing 'else' between the branches for very
large tables.
Harmonized literals "(longlong) 1" and "1L" to "ULL(1)"
where they are used for "ulonglong file_length".
mysql-test/r/myisam.result:
Bug#24607 - MyISAM pointer size determined incorrectly
Added the test result.
mysql-test/t/myisam.test:
Bug#24607 - MyISAM pointer size determined incorrectly
Added the test.
An update that used a join of a table to itself and modified the
table on one side of the join reported the table as crashed or
updated wrong rows.
Fixed by creating temporary table for self-joined multi update statement.
mysql-test/r/myisam.result:
A test case for BUG#21310.
mysql-test/t/myisam.test:
A test case for BUG#21310.
sql/lock.cc:
Exclude 'table' param from check.
sql/sql_update.cc:
Disabling record cache for self-joined multi update statement is wrong.
The join must only see the table as it was at the beginning of the statement.
safe_update_on_fly check if it is safe to update first table on the fly, that is
not creating temporary table. It is possible in case a row from this table is
never read more than once. safe_update_on_fly now detect self-joined table and
refuse to update this table on the fly.
into siva.hindu.god:/usr/home/tim/m/bk/51
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/symlink.test:
Auto merged
scripts/mysqld_safe.sh:
Auto merged
mysql-test/r/myisam.result:
Manual merge
mysql-test/t/myisam.test:
Manual merge
mysql-test/r/myisam.result:
Fix results file - a test was moved from the .test file, but the results were not updated.
mysql-test/r/symlink.result:
echo End of 4.1 tests while I'm here
mysql-test/t/myisam.test:
echo End of 4.1 tests while I'm here
mysql-test/t/symlink.test:
echo End of 4.1 tests while I'm here
into kpdesk.mysql.com:/home/thek/dev/bug17489/my51-bug17498
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/symlink.test:
Auto merged
mysql-test/r/myisam.result:
SCCS merged
Merged 4.1->5.0. Updated myisam.test
mysql-test/r/myisam.result:
updated result file
mysql-test/t/myisam.test:
Removing symlink specific test from myisam test
Added the promised test case.
mysql-test/r/myisam.result:
Bug#22119 - Changing MI_KEY_BLOCK_LENGTH makes a wrong myisamchk
Added test result.
mysql-test/t/myisam.test:
Bug#22119 - Changing MI_KEY_BLOCK_LENGTH makes a wrong myisamchk
Added test case.
into dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
mysql-test/r/myisam.result:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_select.cc:
Auto merged
into dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
mysql-test/r/myisam.result:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_select.cc:
Auto merged
into dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
BitKeeper/deleted/.del-bdb.result:
Auto merged
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/group_min_max.result:
Auto merged
mysql-test/r/innodb.result:
Auto merged
mysql-test/r/merge.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/olap.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/type_decimal.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
mysql-test/t/group_min_max.test:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/opt_range.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.cc:
Auto merged
include/my_base.h:
SCCS merged
mysql-test/include/mix1.inc:
SCCS merged
mysql-test/r/group_by.result:
SCCS merged
mysql-test/r/innodb_mysql.result:
SCCS merged
mysql-test/t/group_by.test:
SCCS merged
sql/sql_select.cc:
SCCS merged
into chilla.local:/home/mydev/mysql-5.1-bug8283
include/my_sys.h:
Auto merged
include/myisam.h:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
storage/myisam/mi_open.c:
Auto merged
storage/myisam/mi_packrec.c:
Auto merged
storage/myisam/myisamdef.h:
Auto merged
storage/myisam/mi_check.c:
SCCS merged
storage/myisam/sort.c:
SCCS merged
into chilla.local:/home/mydev/mysql-5.0-bug8283
include/my_sys.h:
Auto merged
include/myisam.h:
Auto merged
myisam/mi_check.c:
Auto merged
myisam/mi_open.c:
Auto merged
myisam/mi_packrec.c:
Auto merged
myisam/sort.c:
Auto merged
mysql-test/t/myisam.test:
Auto merged
myisam/myisamdef.h:
Bug#8283 - OPTIMIZE TABLE causes data loss
Merge from 4.1
mysql-test/r/myisam.result:
Bug#8283 - OPTIMIZE TABLE causes data loss
Merge from 4.1
mysys/mf_iocache.c:
Bug#8283 - OPTIMIZE TABLE causes data loss
Merge from 4.1
into chilla.local:/home/mydev/mysql-4.1-bug8283-one
myisam/mi_check.c:
Auto merged
myisam/mi_packrec.c:
Auto merged
myisam/sort.c:
Auto merged
mysql-test/r/myisam.result:
Bug#8283 - OPTIMIZE TABLE causes data loss
Manual merge
mysql-test/t/myisam.test:
Bug#8283 - OPTIMIZE TABLE causes data loss
Manual merge