Bug #92071 InnoDB: Assertion failure: dict0dd.cc:5508:!error
Submitted: 20 Aug 2018 0:31 Modified: 22 Jan 2019 12:25
Reporter: Roel Van de Paar Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S3 (Non-critical)
Version:8.0.12 OS:Any
Assigned to: CPU Architecture:Any

[20 Aug 2018 0:31] Roel Van de Paar
Description:
2018-08-20T00:26:34.105501Z 8 [Warning] [MY-013037] [InnoDB] InnoDB: Cannot find a free slot for an undo log. Do you have too many active transactions running concurrently?
2018-08-20T00:26:34.113100Z 8 [Warning] [MY-012817] [InnoDB] InnoDB: Unable to delete statistics for table test.t1: Too many concurrent transactions. They can be deleted later using DELETE FROM mysql.innodb_index_stats WHERE database_name = 'test' AND table_name = 't1'; DELETE FROM mysql.innodb_table_stats WHERE database_name = 'test' AND table_name = 't1';
2018-08-20T00:26:34.119622Z 8 [Warning] [MY-013037] [InnoDB] InnoDB: Cannot find a free slot for an undo log. Do you have too many active transactions running concurrently?
2018-08-20T00:26:34.119714Z 8 [ERROR] [MY-000000] [InnoDB] InnoDB: Assertion failure: dict0dd.cc:5508:!error
InnoDB: thread 139876745471744

How to repeat:
CREATE DATABASE test;
USE test;
CREATE TABLE t1(f1 CHAR (6),FULLTEXT KEY(f1));
set global innodb_trx_rseg_n_slots_debug=1;
DROP TABLE t1;
[20 Aug 2018 4:54] MySQL Verification Team
Hello Roel,

Thank you for the report and test case.
Observed that 8.0.12 debug build is affected.

regards,
Umesh
[22 Jan 2019 12:25] Daniel Price
Posted by developer:
 
Fixed as of the upcoming 8.0.15 release, and here's the changelog entry:

DDL log functions were modified to handle ER_TOO_MANY_CONCURRENT_TRXS
errors.