• Marko Mäkelä's avatar
    MDEV-20804 Speed up main.index_merge_innodb · 5ef12244
    Marko Mäkelä authored
    The test main.index_merge_innodb is taking very much time,
    especially on later versions (10.2 and 10.3).
    
    Some of this could be attributed to the use of INSERT...SELECT,
    which is time-consumingly creating explicit record locks in InnoDB
    for the locking read in the SELECT part.
    
    In 10.3 and later, some slowness can be attributed to MDEV-12288,
    which makes the InnoDB purge thread spend time to reset transaction
    identifiers in the inserted records. If we prevent purge from
    running before all tables are dropped, the test seems to be
    10% faster on an unoptimized debug build on 10.5. (A proper fix
    would be to implement MDEV-515 and stop writing row-level undo log
    records for inserts into an empty table or partition.)
    
    At the same time, it should not hurt to make main.index_merge_myisam
    to use the sequence engine. Not only could it be a little faster,
    but the test would be slightly more readable.
    5ef12244
index_merge_2sweeps.inc 1.27 KB