Bug #101180 create table may assert in debug mode
Submitted: 15 Oct 2020 8:09 Modified: 3 Dec 2020 17:45
Reporter: phoenix Zhang (OCA) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: DDL Severity:S6 (Debug Builds)
Version:8.0.18, 8.0.21 OS:Any
Assigned to: CPU Architecture:Any

[15 Oct 2020 8:09] phoenix Zhang
Description:
In debug mode, when open debug trace, create table may assert

How to repeat:
First, create an test file as below:

$ cat mysql-test/t/create_table_assert.test 
--source include/have_debug.inc
SET DEBUG='+d:T:t:i:O,/tmp/a.trace';
CREATE TABLE t1 (c1 INT PRIMARY KEY, c2 INT DEFAULT 10, c3 INT DEFAULT 0 CHECK (c3 < 100));

Then run the test with command, it will assert:
./mtr main.create_table_assert
[15 Oct 2020 8:21] MySQL Verification Team
Hello phoenix Zhang!

Thank you for the report and test case.
Verified as described with 8.0.21 debug build.

regards,
Umesh
[15 Oct 2020 8:22] MySQL Verification Team
MySQL Server 8.0.21 test results

Attachment: 101180_8.0.21.results.txt (text/plain), 138.87 KiB.

[3 Dec 2020 17:45] Paul DuBois
Posted by developer:
 
Fixed in 8.0.23.

For debug builds, certain CREATE TABLE statements with CHECK
constraints could raise an assertion.