1
0
mirror of https://github.com/MariaDB/server.git synced 2025-06-03 07:02:23 +03:00

3 Commits

Author SHA1 Message Date
Marko Mäkelä
4438ff07cd MDEV-20389: Refine the test case
Let us invoke wait_all_purged.inc right before the workload.
Starting with MDEV-12288 in MariaDB Server 10.3, also INSERT
generates purge workload. If we do not ensure that purge has
run to completion, the results on 10.3 and later could be
nondeterministic.
2019-08-20 16:03:43 +03:00
Aleksey Midenkov
2850b8d844 MDEV-20389 The test innodb.innodb_bug84958 fails intermittently
* Ensure no background purge is done;
* Better result showing actual number in case of failure;
* Higher and more safe difference threshold.
2019-08-20 15:58:06 +03:00
Aleksey Midenkov
2347ffd843 MDEV-20301 InnoDB's MVCC has O(N^2) behaviors
If there're multiple row versions in InnoDB, reading one row from PK
may have O(N) complexity and reading from secondary keys may have
O(N^2) complexity.

The problem occurs when there are many pending versions of the same
row, meaning that the primary key is the same, but a secondary key is
different.  The slowdown occurs when the secondary index is
traversed. This patch creates a helper class for the function
row_sel_get_clust_rec_for_mysql() which can remember and re-use
cached_clust_rec & cached_old_vers so that rec_get_offsets() does not
need to be called over and over for the clustered record.

Corrections by Kevin Lewis <kevin.lewis@oracle.com>

MDEV-20341 Unstable innodb.innodb_bug14704286

Removed test that tested the ability of interrupting long query which
is not long anymore.
2019-08-14 19:10:17 +03:00