[MDEV-8501] encryption.create_or_replace fails in buildbot on P8 builders Created: 2015-07-20  Updated: 2015-07-21  Resolved: 2015-07-21

Status: Closed
Project: MariaDB Server
Component/s: Encryption, Storage Engine - InnoDB, Storage Engine - XtraDB, Tests
Affects Version/s: 10.1
Fix Version/s: 10.1.6

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Jan Lindström (Inactive)
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Blocks
blocks MDEV-7069 Fix buildbot failures in main server ... Stalled

 Description   

According to buildbot results, it appears to fail reliably – all 4 combinations, on all 4 P8 builders, since commit 7567b9fa10985a57339e8f0dbaf6e654.

http://buildbot.askmonty.org/buildbot/builders/p8-rhel71-bintar/builds/420/steps/test/logs/stdio

encryption.create_or_replace 'ctr,xtradb' w4 [ fail ]  timeout after 900 seconds
        Test ended at 2015-07-16 23:21:15
 
Test case timeout after 900 seconds
 
== /home/buildbot/maria-slave/power8-vlp06-bintar/build/mysql-test/var/4/log/create_or_replace.log == 
SET default_storage_engine = InnoDB;
CREATE TABLE t1 (pk INT PRIMARY KEY, c VARCHAR(256));
CREATE TABLE t2 AS SELECT * FROM t1;
drop table t1,t2;
SET GLOBAL innodb_encryption_threads = 0;
SET GLOBAL innodb_encryption_threads = 4;
CREATE TABLE `table10_int_autoinc` (`col_int_key` int, pk int auto_increment, `col_int` int, key (`col_int_key` ),primary key (pk)) engine=innodb;
INSERT /*! IGNORE */ INTO table10_int_autoinc VALUES  (NULL, NULL, -474021888) ,  (1, NULL, NULL) ,  (1141047296, NULL, NULL) ,  (NULL, NULL, NULL) ,  (NULL, NULL, 1) ,  (NULL, NULL, 9) ,  (0, NULL, 1225785344) ,  (NULL, NULL, 1574174720) ,  (2, NULL, NULL) ,  (6, NULL, 3);
CREATE TABLE `table1_int_autoinc` (`col_int_key` int, pk int auto_increment, `col_int` int,key (`col_int_key` ), primary key (pk)) engine=innodb;
CREATE TABLE `table0_int_autoinc` (`col_int_key` int, pk int auto_increment, `col_int` int, key (`col_int_key` ),primary key (pk)) engine=innodb;
INSERT /*! IGNORE */ INTO table1_int_autoinc VALUES  (4, NULL, NULL);
INSERT IGNORE INTO `table0_int_autoinc` ( `col_int_key` ) VALUES ( 1 ), ( 3 ), ( 4 ), ( 1 );
INSERT IGNORE INTO `table1_int_autoinc` ( `col_int` ) VALUES ( 1 ), ( 0 ), ( 7 ), ( 9 );
INSERT IGNORE INTO `table10_int_autoinc` ( `col_int` ) VALUES ( 6 ), ( 2 ), ( 3 ), ( 6 );
 
 == /home/buildbot/maria-slave/power8-vlp06-bintar/build/mysql-test/var/4/tmp/analyze-timeout-mysqld.1.err ==
mysqltest: Could not open connection 'default' after 500 attempts: 2002 Can't connect to local MySQL server through socket '/home/buildbot/maria-slave/power8-vlp06-bintar/build/mysql-test/var/tmp/4/mysqld.1.sock' (111 "Connection refused")



 Comments   
Comment by Jan Lindström (Inactive) [ 2015-07-21 ]

commit 62b5a561910f8001c288bcc75c11516a4d061cd3
Author: Jan Lindström <jan.lindstrom@mariadb.com>
Date: Tue Jul 21 12:51:14 2015 +0300

MDEV-8501: encryption.create_or_replace fails in buildbot on P8 builders

Analysis: There is race between drop table and encryption threads that
could cause encryption thread to enter mutex that has been already
released.

Fix: When destroying crypt_data first enter the mutex and set crypt data
unavailable, then release the memory and clean up the data. This should
make the race more unprobable. Additionally, added big_test for
create_or_replace as it could fail testcase timeout
if you have slow I/O (tested that testcase passes with --mem).

Generated at Thu Feb 08 07:27:37 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.