mirror of
https://github.com/percona/percona-toolkit.git
synced 2025-09-20 10:55:01 +00:00
PT-2138 - fix tests for pt table checksum (#568)
* PT-2138 - Fix tests for pt-table-checksum - Updated t/pt-table-checksum/samples/default-results-8.0.txt and t/pt-table-checksum/samples/static-chunk-size-results-8.0.txt to support latest MySQL 8.0 version. Tests are now incompatible with elder 8.0 releases. - Put fix for PT-136 into package RowChecksum - Added execution bit for pt-online-schema-change * PT-2138 - Fix tests for pt-table-checksum - Fixed percona_test.load_data, so it really tests if LOAD DATA LOCAL INFILE is enabled - Fixed option --[no]create-replicate-table, broken by commitc9836d5962
* PT-2138 - Fix tests for pt-table-checksum - Enabled t/pt-table-checksum/error_handling.t for MySQL 8.0 - Fixed test t/pt-table-checksum/fnv_64.t and it's samples file t/pt-table-checksum/samples/fnv64-sakila-city.txt to reflect new function name convention and changes after62d84e5dba
* PT-2138 - Fix tests for pt-table-checksum - Fixed t/pt-table-checksum/issue_1485195.t, so it checks only one table and isn't get broken when we add tables into percona_test database - Fixed typo in error output of bin/pt-table-checksum - Skipped issue_47.t in 8.0 until https://jira.percona.com/browse/PT-1805 is fixed * PT-2138 - Fix tests for pt-table-checksum - Disabled pt-131.t for 8.0, because it does not have the QUERY_RESPONSE_TIME plugins - Added SLOW_TESTS check to pt-1616.t - Updated pt-226.t to include the fix for PT-1766 - For replication_filters.t: excluded false positive expression for tests 10 and 11 and added sys schema to the list of checked databases for 8.0 - Changed get_slaves in lib/MasterSlave.pm, so it returns slave's parent, required for wait_for_slaves in pt-table-checksum to work properly with chained slaves * PT-2138 - Fix tests for pt-table-checksum - Modified pt-204.t to support 8.0 and diffs in system tables due to timestamps Moved the fix for PT-1616 into the proper place: lib/NibbleIterator.pm * PT-2138 - Fix tests for pt-table-checksum - pxc.t -added mysql.proxies_priv into ignore list, because its timestamp is different on node - pxc.t - removed FORK=pxc from statup options for slave (non-cluster) nodes - pxc.t - disabled wsrep replication with help of the variable wsrep_on: sql_log_bin doesn't disable wsrep replication anymore. See https://jira.percona.com/browse/PXC-3464 for details - Removed data.tar.gz from 5.7 sandbox configuration, because it has an outdated definition for Performance Schema - Disabled pxc.t for version 8.0 until PT-1699 is fixed - start-sandbox - removed the first line (ALTER USER) from the init file, because it was rewritten by the next echo command, and then repeated later. * PT-2138 - Fix tests for pt-table-checksum - Adopted issue_1485195.t and basics.t for MyRocks-enabled setup - replication_filters.t - added sys schema to the list of expected schemas for 5.7 and 8.0 - issue_1485195.t - added checks for the existence of mysql.plugin, func, and proxies_priv tables - added samples/pt-131-wipe.sql that uninstalls QRT plugin if it was earlier installed by this test -adjusted return code in pt-204.t, because expected differences in mysql.proxies_priv * Update lib/PerconaTest.pm removed diagnostic code Co-authored-by: Carlos Salguero <carlos.salguero@percona.com> Co-authored-by: Carlos Salguero <carlos.salguero@percona.com>
This commit is contained in:
@@ -69,11 +69,16 @@ sub reset_repl_db {
|
||||
# ############################################################################
|
||||
|
||||
# 1
|
||||
# We need to remove mysql.plugin and percona_test.checksums tables from the
|
||||
# result and the sample, because they have different number of rows than default
|
||||
# if run test with enabled MyRocks or TokuDB SE
|
||||
ok(
|
||||
no_diff(
|
||||
sub { pt_table_checksum::main(@args) },
|
||||
"$sample/default-results-$sandbox_version.txt",
|
||||
post_pipe => 'awk \'{print $2 " " $3 " " $4 " " $7 " " $9}\'',
|
||||
sed_out => '\'/mysql.plugin$/d; /percona_test.checksums$/d\'',
|
||||
post_pipe => 'sed \'/mysql.plugin$/d; /percona_test.checksums$/d\' | ' .
|
||||
'awk \'{print $2 " " $3 " " $4 " " $7 " " $9}\'',
|
||||
),
|
||||
"Default checksum"
|
||||
);
|
||||
@@ -88,18 +93,23 @@ my $max_chunks = $sandbox_version < '5.7' ? 60 : 100;
|
||||
|
||||
ok(
|
||||
$row->[0] > 25 && $row->[0] < $max_chunks,
|
||||
'Between 25 and 60 chunks'
|
||||
"Between 25 and $max_chunks chunks"
|
||||
) or diag($row->[0]);
|
||||
|
||||
# ############################################################################
|
||||
# Static chunk size (disable --chunk-time)
|
||||
# ############################################################################
|
||||
# 3
|
||||
# We need to remove mysql.plugin and percona_test.checksums tables from the
|
||||
# result and the sample, because they have different number of rows than default
|
||||
# if run test with enabled MyRocks or TokuDB SE
|
||||
ok(
|
||||
no_diff(
|
||||
sub { pt_table_checksum::main(@args, qw(--chunk-time 0 --ignore-databases mysql)) },
|
||||
"$sample/static-chunk-size-results-$sandbox_version.txt",
|
||||
post_pipe => 'awk \'{print $2 " " $3 " " $4 " " $6 " " $7 " " $9}\'',
|
||||
sed_out => '\'/mysql.plugin$/d; /percona_test.checksums$/d\'',
|
||||
post_pipe => 'sed \'/mysql.plugin$/d; /percona_test.checksums$/d\' | ' .
|
||||
'awk \'{print $2 " " $3 " " $4 " " $6 " " $7 " " $9}\'',
|
||||
),
|
||||
"Static chunk size (--chunk-time 0)"
|
||||
);
|
||||
|
Reference in New Issue
Block a user