[MDEV-23020] innodb.innodb_sys_semaphore_waits and other tests fail Created: 2020-06-26  Updated: 2020-09-06  Resolved: 2020-09-06

Status: Closed
Project: MariaDB Server
Component/s: Tests
Affects Version/s: 10.4.13
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Chris Ross Assignee: Unassigned
Resolution: Incomplete Votes: 0
Labels: need_feedback
Environment:

Wind River Linux LTS 18.44



 Description   

innodb.innodb_sys_semaphore_waits test fails when running on my intended appliance operating platform. I ran ./mtr innodb.innodb_sys_semaphore_waits in a clean test tree.

var/log/innodb_sys_semaphore_waits.log contains:

connect  con1,localhost,root,,;
connect  con2,localhost,root,,;
drop table if exists t1;
connection con1;
create table t1 (id integer, x integer) engine = InnoDB;
insert into t1 values(0, 0);
SET @saved_dbug = @@SESSION.debug_dbug;
set DEBUG_DBUG='+d,fatal-semaphore-timeout';
set autocommit=0;
# Sending query on con1,
# the session will hold lock table mutex and sleep
SELECT * from t1 where id = 0 FOR UPDATE;
connection con2;
set autocommit=0;
# Sending query on con2,
# the session will be blocked on the lock table mutex and
# thus be put into sync arry
SELECT * from t1 where id = 0 FOR UPDATE;
connection default;
# Waitting for mysqld to crash

A full test run, with --big-test --force --testcase-timeout=30 --suite-timeout=1000 --shutdown-timeout=20 eventually yielded:

Completed: Failed 9/4997 tests, 99.82% were successful.
 
Failing test(s): binlog_encryption.binlog_xa_recover binlog.binlog_xa_recover innodb.innodb_sys_semaphore_waits sys_vars.innodb_fatal_semaphore_wait_threshold main.failed_auth_unixsocket main.ssl_cipher unit.conc_charset unit.pcre_grep_test unit.pcre_test
 
The log files in var/log may give you some hint of what went wrong.
 
If you want to report this error, please read first the documentation
at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html
 
Errors/warnings were found in logfiles during server shutdown after running the
following sequence(s) of tests:
    innodb.innodb_sys_semaphore_waits
    sys_vars.innodb_fatal_semaphore_wait_threshold
367 tests were skipped, 288 by the test itself.

Please let me know if any of these are likely non-issues, or if there are other logs I can supply from this test run. I am especially concerned that there are semaphore tests that failed, as well as other "important-seeming" tests like main.ssl_cipher and a couple unit. tests.



 Comments   
Comment by Elena Stepanova [ 2020-08-04 ]

No conclusions can be made from the description, as it doesn't show what the exact failures were. The test log contains the output before the failure, and the summary only contains the names of the failed tests. The actual failure output is written in stdout which, in turn, is stored in <vardir>/log/stdout.log.

That said, if you just want to avoid all known or suspected test failures, you can run MTR with --skip-test-list=unstable-tests option. The list is quite long and intentionally pessimistic, basically it includes [almost all] tests which are not known to be stable. It will reduce the test coverage, but if you only need to verify your build without actually testing MariaDB for regressions, it can be a reasonable approach.

Comment by Chris Ross [ 2020-08-06 ]

Thank you Elena. I have moved to MariaDB 10.5.4 since opening this issue, and these failures are not occurring any longer, so this specific issue can be closed.
I appreciate the advice to try --skip-test-list=unstable-tests. However, even with that, I'm still seeing a few test failures. I will try to inquire about those on the mariadb-discuss mailer, assuming that's better than here.

Comment by Elena Stepanova [ 2020-09-06 ]

From what I see in the thread in the mailing list, last email was from Sergei Golubchik asking questions.

Generated at Thu Feb 08 09:19:14 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.