[MDEV-12277] rocksdb.rocksdb fails with Sort Aborted error in server stderr Created: 2017-03-15  Updated: 2017-03-16  Resolved: 2017-03-16

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - RocksDB
Fix Version/s: N/A

Type: Task Priority: Major
Reporter: Sergei Petrunia Assignee: Unassigned
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
PartOf
is part of MDEV-9658 Make MyRocks in MariaDB stable Closed

 Description   

It started to fail like this after the last merge:

rocksdb.rocksdb                          [ fail ]  Found warnings/errors in server log file!
        Test ended at 2017-03-15 22:07:01
line
2017-03-15 22:06:03 139761695200000 [Warning] Sort aborted, host: localhost, user: root, thread: 9, query: DELETE IGNORE FROM t1 ORDER BY i
^ Found warnings in /home/psergey/dev-git/10.2-mariarocks/mysql-test/var/log/mysqld.1.err
ok
 
 - saving '/home/psergey/dev-git/10.2-mariarocks/mysql-test/var/log/rocksdb.rocksdb/' to '/home/psergey/dev-git/10.2-mariarocks/mysql-test/var/log/rocksdb.rocksdb/'
--------------------------------------------------------------------------
The servers were restarted 0 times
Spent 0.000 of 94 seconds executing testcases
mysql-test-run: WARNING: Got errors/warnings while running tests, please examine '/home/psergey/dev-git/10.2-mariarocks/mysql-test/var/log/warnings' for details.

maybe other tests have similar issues.

The error:

2017-03-15 22:06:03 139761695200000 [ERROR] mysqld: Lock wait timeout exceeded; try restarting transaction
2017-03-15 22:06:03 139761695200000 [Warning] Sort aborted, host: localhost, user: root, thread: 9, query: DELETE IGNORE FROM t1 ORDER BY i

The relevant rocksdb.rocksdb test:

--echo # 
--echo # MDEV-4298: RocksDB: Assertion `thd->is_error() || kill_errno' fails in ha_rows filesort
--echo # 
CREATE TABLE t1 (pk INT PRIMARY KEY, i INT, KEY(i)) ENGINE=RocksDB;
INSERT INTO t1 VALUES (1,1),(2,2);
BEGIN;
UPDATE t1 SET i = 100;
 
--connect (con1,localhost,root,,test)
--error ER_LOCK_WAIT_TIMEOUT
DELETE IGNORE FROM t1 ORDER BY i;
--disconnect con1



 Comments   
Comment by Sergei Petrunia [ 2017-03-15 ]

Running the test on fb/mysql-5.6. The test passes, but var/log/mysqld.1.err has the same kind of error messages:

2017-03-16 01:14:33 14518 [ERROR] /home/ubuntu/mysql-5.6/sql/mysqld: Lock wait timeout exceeded; try restarting transaction: Timeout on index: test.t1.PRIMARY
2017-03-16 01:14:33 14518 [ERROR] /home/ubuntu/mysql-5.6/sql/mysqld: Sort aborted: Lock wait timeout exceeded; try restarting transaction: Timeout on index: test.t1.PRIMARY

and looking through mysql-test/suite/rocksdb , I can't find any suppression being added for this.

Comment by Sergei Petrunia [ 2017-03-16 ]

With Elena's help, figured that the upstream has Sort aborted stderr message globally suppressed.

Should rocksdb test suite have some suite-wide suppressions? Galera has, see ../plugin/wsrep_info/mysql-test/wsrep_info/suite.pm for an example.

For now, will just add a suppression to rocksdb.rocksdb.

Comment by Sergei Petrunia [ 2017-03-16 ]

Fix pushed to bb-10.2-mariarocks.

Comment by Sergei Petrunia [ 2017-03-16 ]

Got interested why this error message shows up now but didn't show up before. It's because the current server has log_warnings=2, while before the merge it had log_warnings=1. This is why rocksdb.rocksdb did not print Sort aborted into stderr.

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