← Back to team overview

maria-discuss team mailing list archive

Re: for years failing tests

 

Hi Reindl,

On 01/21/2017 05:11 AM, Reindl Harald wrote:


Am 20.01.2017 um 22:58 schrieb Elena Stepanova:
Hi Reindl,

On 01/20/2017 06:03 PM, Reindl Harald wrote:
shouldn't the testsuite at some point in time run without errors?

The testsuite should run without errors with some combinations of
build/run server options which it's tuned for and which we normally run
it with.

Unfortunately, with arbitrary non-default options in general MTR cannot
be guaranteed to run successfully, it's just not that kind of tool. Some
problems are easy to fix though, and we'll do it whenever we can. Please
in future just file bug reports right away, no need to suffer for years.
We can only fix something that we are aware of.


"run STOP SLAVE '' first" - uhm did i start it? it's scripted by shipped
scripts

It happens because of --mysqld=--binlog-format=mixed on the command
line, more specifically due to a non-clean exit of a previous test which
realizes too late that binlog format has been overridden from a command
line, and skips the rest of execution, including the clean-up

well, with --mysqld=--binlog-format=mixed at least it did somehow finish
at all, i started it without at 7:00 PM as i left home, i came back home
10 minutes ago (4:00 AM) and it still did not finish

but maybe that's just because the new encryption features where the
test-suite just don't realize that they are not built and insetad sakip
them all togehter it waits for every peice 3 seconds

Well, some failures can prolong the torture, but really it's probably a combination of factors. Still, 9 hours is very long even for a worst-case scenario, so it would be interesting to look at the full MTR output to understand what's happening.

Without seeing it, importantly execution times of successful tests, I can only guess, but if binlog_format setting was the only thing that changed between the runs, and if you always run with '--max-test-fail=0 --force', most likely the culprit is the execution time of rpl suite, worsened by general low performance.

rpl is the longest suite of all, and since it's running in full now, it can take a lot of time (which is why I agree that running tests with only one binlog_format is a reasonable demand). Before, when you ran tests with '--mysqld=--binlog-format=mixed', a big part of this suite and parts of some other suites either were skipped or failed.

You are running tests on disk, rather than in memory. Latency for on-disk runs can be quite bad, depending on the machine. Replication tests in particular are quite sensitive to this. Here is an example from my laptop:

on disk:
rpl.rpl_partition_innodb 'mix,xtradb'    [ pass ]  41647
in memory:
rpl.rpl_partition_innodb 'mix,xtradb'    [ pass ]    251

The fact that tests run without parallel also doesn't help. If you have enough memory, it's worth considering parallel execution -- every test will take longer, but the overall duration might decrease significantly.


Regards,
Elena



Failed to start mysqld.1

 - skipping
'/usr/share/mysql-test/var/log/encryption.innodb-page_encryption-cbc,xtradb/'

***Warnings generated in error logs during shutdown after running tests:
encryption.innodb-page_encryption

2017-01-20 19:01:51 140487478450496 [ERROR] /usr/libexec/mysqld: unknown
variable 'file-key-management-encryption-algorithm=aes_cbc'
2017-01-20 19:01:51 140487478450496 [ERROR] Aborting

worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7618,
winpid: 7618, exit: 1792] died after mysql-test-run waited 3.1 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7641,
winpid: 7641, exit: 1792] died after mysql-test-run waited 0.3 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7646,
winpid: 7646, exit: 1792] died after mysql-test-run waited 0.3 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7651,
winpid: 7651, exit: 1792] died after mysql-test-run waited 0.3 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7656,
winpid: 7656, exit: 1792] died after mysql-test-run waited 0.3 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7661,
winpid: 7661, exit: 1792] died after mysql-test-run waited 0.3 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7666,
winpid: 7666, exit: 1792] died after mysql-test-run waited 3.1 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7701,
winpid: 7701, exit: 1792] died after mysql-test-run waited 2.9 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
encryption.innodb_page_encryption_key_change 'cbc,xtradb' [ fail ]
        Test ended at 2017-01-20 19:02:05

CURRENT_TEST: encryption.innodb_first_page
CURRENT_TEST: encryption.innodb-log-encrypt
CURRENT_TEST: encryption.innodb-page_encryption_log_encryption
CURRENT_TEST: encryption.innodb-missing-key
CURRENT_TEST: encryption.innodb_encryption_row_compressed
CURRENT_TEST: encryption.innodb_encryption_filekeys
CURRENT_TEST: encryption.innodb_encryption_is
CURRENT_TEST: encryption.innochecksum
CURRENT_TEST: encryption.innodb-bad-key-change
CURRENT_TEST: encryption.innodb-discard-import
CURRENT_TEST: encryption.innodb-discard-import-change
CURRENT_TEST: encryption.innodb-encr-threads
CURRENT_TEST: encryption.innodb-encryption-alter
CURRENT_TEST: encryption.innodb-page_encryption
CURRENT_TEST: encryption.innodb_page_encryption_key_change


Failed to start mysqld.1


 - skipping
'/usr/share/mysql-test/var/log/encryption.innodb_page_encryption_key_change-cbc,xtradb/'

worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7724,
winpid: 7724, exit: 1792] died after mysql-test-run waited 3.2 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
***Warnings generated in error logs during shutdown after running tests:
encryption.innodb_page_encryption_key_change

2017-01-20 19:01:55 140380436027712 [ERROR] /usr/libexec/mysqld: unknown
variable 'file-key-management-encryption-algorithm=aes_cbc'
2017-01-20 19:01:55 140380436027712 [ERROR] Aborting

worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7747,
winpid: 7747, exit: 1792] died after mysql-test-run waited 3.1 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7770,
winpid: 7770, exit: 1792] died after mysql-test-run waited 3.1 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7793,
winpid: 7793, exit: 1792] died after mysql-test-run waited 3.1 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7817,
winpid: 7817, exit: 1792] died after mysql-test-run waited 3.1 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7840,
winpid: 7840, exit: 1792] died after mysql-test-run waited 3.1 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7863,
winpid: 7863, exit: 1792] died after mysql-test-run waited 3.2 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7886,
winpid: 7886, exit: 1792] died after mysql-test-run waited 3.1 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.
worker[1] mysql-test-run: WARNING: Process [mysqld.1 - pid: 7909,
winpid: 7909, exit: 1792] died after mysql-test-run waited 0.3 seconds
for /usr/share/mysql-test/var/run/mysqld.1.pid to be created.

^C
Sitzung beendet, Shell wird abgewürgt ?wrong class (hack attempt?):
$VAR1 = \undef;
$VAR2 = '
1234My::Test

main.mysql_client_testname
in_overlay
mysql_client_test       shortname
&--plugin-load-add=$AUTH_TEST_PLUGIN_SO slave_opt
./usr/share/mysql-test/t/mysql_client_test.testpath
&--plugin-load-add=$AUTH_TEST_PLUGIN_SO
--general-log
3--general-log-file=$MYSQLTEST_VARDIR/log/master.log
--log-output=FILE,TABLE
--max-allowed-packet=32000000
master_opt
template_pathMy::Suite::Main
/usr/share/mysql-test/rrdiropts
mainnameX

derived_view
show_explain_non_select
events_stress
func_hybrid_type

myisam_mrr
cast

signal_code

change_user
innodb_mysql_lock
sp-prelocking
order_by_sortkey
mdl_sync
mysqld--defaults-file

events_bugs
tmp_table_count-7586
udf_debug_sync
multi_statement

parser_stack
func_if
unsafe_binlog_innodb
bool
ctype_cp1250_ch
        mysqltest

ctype_ldml
lock
mysqld_option_err
sp-code
?myisam_enable_keys-10506
information_schema_db
ctype_gbk_binlog
odbc
        variables
        tablelock
join_outer_innodb
dyncol

debug_sync

join_nested

sighup-6580
        func_test
truncate_coverage
group_min_max
bug58669
mysql_locale_posix

ipv4_as_ipv6
gis-rt-precise
        varbinary
key
        fulltext3
kill_processlist-6619
myisam_crash_before_flush_keys
trigger_null-8605
ps_4heap

mysqlbinlog
get_diagnostics

select_safe
\\0';
^C ? abgewürgt.

[root@testserver:~]$ ^C




Follow ups

References