diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2020-04-14 18:43:03 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2020-04-14 18:43:03 +0300 |
commit | 2f7d91bb6ce7bb34dd644e30590189bce37fb8f1 (patch) | |
tree | e6e625b3af518a238002d99e39b9e5dfff3794dd /mysql-test/suite/innodb/t/innodb-change-buffer-recovery.test | |
parent | 87a7968c23d32880920d129c0e3f467495dce10d (diff) | |
download | mariadb-git-2f7d91bb6ce7bb34dd644e30590189bce37fb8f1.tar.gz |
MDEV-22242 B-trees can become extremely skewed
The test innodb.innodb_wl6326 that had been disabled in 10.4 due to
MDEV-21535 is failing on 10.5 due to a different reason: the removal
of the MLOG_COMP_END_COPY_CREATED operations in MDEV-12353
commit 276f996af917851b9c5fef4a41f93e68d398af36 caused PAGE_LAST_INSERT
to be set to something nonzero by the function page_copy_rec_list_end().
This in turn would cause btr_page_get_split_rec_to_right() to behave
differently: we would not attempt to split the page at all, but simply
insert the new record into the new, empty, right leaf page.
Even though the change reduced the sizes of some tables, it is better
to aim for balanced trees.
page_copy_rec_list_end(), PageBulk::finishPage():
Preserve PAGE_LAST_INSERT, PAGE_N_DIRECTION, PAGE_DIRECTION.
PageBulk::finish(): Move some common code from PageBulk::finishPage().
Diffstat (limited to 'mysql-test/suite/innodb/t/innodb-change-buffer-recovery.test')
-rw-r--r-- | mysql-test/suite/innodb/t/innodb-change-buffer-recovery.test | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/mysql-test/suite/innodb/t/innodb-change-buffer-recovery.test b/mysql-test/suite/innodb/t/innodb-change-buffer-recovery.test index 9c5acedb620..79d9cc814a0 100644 --- a/mysql-test/suite/innodb/t/innodb-change-buffer-recovery.test +++ b/mysql-test/suite/innodb/t/innodb-change-buffer-recovery.test @@ -35,16 +35,9 @@ ENGINE=InnoDB STATS_PERSISTENT=0; SET GLOBAL innodb_change_buffering_debug = 1; let SEARCH_FILE = $MYSQLTEST_VARDIR/log/mysqld.1.err; -# The removed function page_copy_rec_list_end_to_created_page() would create -# less dense pages than the remaining part of page_copy_rec_list_end(). -# For the INSERT after the DELETE to be buffered, the leftmost page -# must not be too densely packed. -SET GLOBAL innodb_limit_optimistic_insert_debug=700; - # Create enough rows for the table, so that the change buffer will be # used for modifying the secondary index page. There must be multiple # index pages, because changes to the root page are never buffered. - INSERT INTO t1 SELECT 0,'x',1 FROM seq_1_to_8192; BEGIN; |