Details
-
Bug
-
Status: Closed (View Workflow)
-
Blocker
-
Resolution: Fixed
-
10.3.21, 10.5.0
Description
10.5 commit f6003fbc8cbd6779b6e7fcf5b05293b54a4948f8
|
10.3 commit ba95c303e379b9f23289aaaffe18fb5d49ddf4a3
|
compiled with debug and ASAN
|
|
main/ASAN1-master.opt
|
-------------------------------------
|
--innodb-page-size=4k
|
|
main/ASAN1.test
|
---------------------------
|
--disable_abort_on_error
|
--source include/have_innodb.inc
|
|
# No crash with 10.5
|
# CREATE TABLE t1 ( col2 INT, col_varchar VARCHAR(500), col_text TEXT ) ENGINE = InnoDB ROW_FORMAT = Dynamic ;
|
# No crash with 10.5
|
# CREATE TABLE t1 ( col2 INT, col_varchar VARCHAR(500), col_text TEXT ) ENGINE = InnoDB ROW_FORMAT = Compressed ;
|
# CREATE TABLE t1 ( col2 INT, col_varchar VARCHAR(500), col_text TEXT ) ENGINE = InnoDB ROW_FORMAT = Redundant ;
|
CREATE TABLE t1 ( col2 INT, col_varchar VARCHAR(500), col_text TEXT ) ENGINE = InnoDB ROW_FORMAT = Compact ;
|
ALTER TABLE t1 ADD UNIQUE ( col_varchar, col2 ) ;
|
ALTER TABLE t1 ADD COLUMN col_text_copy TEXT ;
|
ALTER TABLE t1 ADD PRIMARY KEY ( col2, col_varchar ) ;
|
|
SET GLOBAL innodb_fast_shutdown=0;
|
--source include/restart_mysqld.inc
|
DROP TABLE t1;
|
|
Result on 10.3
|
----------------------
|
...
|
MariaDB Version 10.3.21-MariaDB-debug
|
...
|
Installing system database...
|
|
=============================================================
|
|
TEST RESULT TIME (ms) or COMMENT
|
--------------------------------------------------------------------------
|
...
|
CREATE TABLE t1 ( col2 INT, col_varchar VARCHAR(500), col_text TEXT ) ENGINE = InnoDB ROW_FORMAT = Compact ;
|
ALTER TABLE t1 ADD UNIQUE ( col_varchar, col2 ) ;
|
ALTER TABLE t1 ADD COLUMN col_text_copy TEXT ;
|
ALTER TABLE t1 ADD PRIMARY KEY ( col2, col_varchar ) ;
|
ERROR 42000: Row size too large. The maximum row size for the used table type, not counting BLOBs, is 1982. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
|
SET GLOBAL innodb_fast_shutdown=0;
|
DROP TABLE t1;
|
main.ASAN1 'innodb' [ fail ] Found warnings/errors in server log file!
|
Test ended at 2019-11-28 15:51:46
|
line
|
2019-11-28 15:50:44 9 [ERROR] InnoDB: Cannot add field `col_text_copy` in table `test`.`#sql-438aa_9` because after adding it, the row size is 2105 which is greater than maximum allowed size (1982 bytes) for a record on index leaf page.
|
Attempting backtrace. You can use the following information to find out
|
^ Found warnings in mysql-test/var/log/mysqld.1.err
|
ok
|
- found 'core' (0/5)
|
Trying 'dbx' to get a backtrace
|
Core was generated by `/home/mleich/work/10.3/bld_asan/sql/mysqld --defaults-group-suffix=.1 --default'.
|
Program terminated with signal SIGABRT, Aborted.
|
#0 0x00007f726605f8f0 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#0 0x00007f726605f8f0 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#1 0x00007f726606604d in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#2 0x00007f726605c1e6 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#3 0x00007f7266059c8b in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#4 <signal handler called>
|
#5 0x0000556aa8f07991 in my_read (Filedes=3, Buffer=0x7ffe601b86f0 "Limit", ' ' <repeats 21 times>, "Soft Limit", ' ' <repeats 11 times>, "Hard Limit", ' ' <repeats 11 times>, "Units \nMax cpu time", ' ' <repeats 14 times>, "unlimited", ' ' <repeats 12 times>, "unlimited", ' ' <repeats 12 times>, "seconds \nMax file size", ' ' <repeats 13 times>, "unlimited "..., Count=4096, MyFlags=0) at /home/mleich/work/10.3/mysys/my_read.c:63
|
#6 0x0000556aa7c42af0 in output_core_info () at /home/mleich/work/10.3/sql/signal_handler.cc:66
|
#7 0x0000556aa7c43a79 in handle_fatal_signal (sig=6) at /home/mleich/work/10.3/sql/signal_handler.cc:339
|
#8 <signal handler called>
|
#9 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:58
|
#10 0x00007f7263e6737a in __GI_abort () at abort.c:89
|
#11 0x00007f7266071169 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#12 0x00007f726606606b in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#13 0x00007f726607c3c6 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#14 0x00007f7263e6a5ea in __cxa_finalize (d=0x7f72662bc3e0) at cxa_finalize.c:56
|
#15 0x00007f7265fae5b3 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#16 0x00007ffe601ba8f0 in ?? ()
|
#17 0x00007f7266f4210a in _dl_fini () at dl-fini.c:235
|
Backtrace stopped: frame did not save the PC
|
|
Thread 1 (Thread 0x7f726713f780 (LWP 276650)):
|
#0 0x00007f726605f8f0 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#1 0x00007f726606604d in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#2 0x00007f726605c1e6 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#3 0x00007f7266059c8b in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#4 <signal handler called>
|
#5 0x0000556aa8f07991 in my_read (Filedes=3, Buffer=0x7ffe601b86f0 "Limit", ' ' <repeats 21 times>, "Soft Limit", ' ' <repeats 11 times>, "Hard Limit", ' ' <repeats 11 times>, "Units \nMax cpu time", ' ' <repeats 14 times>, "unlimited", ' ' <repeats 12 times>, "unlimited", ' ' <repeats 12 times>, "seconds \nMax file size", ' ' <repeats 13 times>, "unlimited "..., Count=4096, MyFlags=0) at /home/mleich/work/10.3/mysys/my_read.c:63
|
#6 0x0000556aa7c42af0 in output_core_info () at /home/mleich/work/10.3/sql/signal_handler.cc:66
|
#7 0x0000556aa7c43a79 in handle_fatal_signal (sig=6) at /home/mleich/work/10.3/sql/signal_handler.cc:339
|
#8 <signal handler called>
|
#9 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:58
|
#10 0x00007f7263e6737a in __GI_abort () at abort.c:89
|
#11 0x00007f7266071169 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#12 0x00007f726606606b in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#13 0x00007f726607c3c6 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#14 0x00007f7263e6a5ea in __cxa_finalize (d=0x7f72662bc3e0) at cxa_finalize.c:56
|
#15 0x00007f7265fae5b3 in ?? () from /usr/lib/x86_64-linux-gnu/libasan.so.3
|
#16 0x00007ffe601ba8f0 in ?? ()
|
#17 0x00007f7266f4210a in _dl_fini () at dl-fini.c:235
|
Backtrace stopped: frame did not save the PC
|
|
==276650==ERROR: LeakSanitizer: detected memory leaks
|
Indirect leak of 1656 byte(s) in 1 object(s) allocated from:
|
#0 0x7f7266055ec0 in __interceptor_malloc (/usr/lib/x86_64-linux-gnu/libasan.so.3+0xc6ec0)
|
and so on
|
Attachments
Issue Links
- is caused by
-
MDEV-20949 Stop performing unnecessary maximum row size check for DML
- Closed
- is duplicated by
-
MDEV-21316 Hitting "Row size too large" for DDL could cause crash on shutdown later
- Closed