[MDEV-31190] Server crashes in FixedBinTypeBundle<Inet6>::Field_fbt::store_fbt_null_with_warn Created: 2023-05-04  Updated: 2023-11-28

Status: Open
Project: MariaDB Server
Component/s: Data types
Affects Version/s: 10.6, 10.8, 10.9, 10.10, 10.11, 11.0
Fix Version/s: 10.6, 10.11, 11.0

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Alexander Barkov
Resolution: Unresolved Votes: 0
Labels: None


 Description   

Note: The test case is non-deterministic, run with --repeat=N. It usually fails for me on the first attempt, but it can vary on different machines and builds.

CREATE TABLE t (f BINARY(40));
INSERT INTO t VALUES (''),('');
 
--connect (con1,localhost,root,,)
--send
  ALTER IGNORE TABLE t MODIFY f INET6 NOT NULL;
 
--connection default
ANALYZE TABLE t PERSISTENT FOR ALL;
 
--connection con1
--reap
 
--connection default
SELECT * FROM t;
 
# Cleanup
DROP TABLE t;
--disconnect con1

10.6 fe89df42

#3  <signal handler called>
#4  0x0000564df26db1c4 in Field::maybe_null (this=0x61900009f2b8) at /data/src/10.6/sql/field.h:1401
#5  0x0000564df437fc0e in FixedBinTypeBundle<Inet6>::Field_fbt::store_fbt_null_with_warn (this=0x61900009f2b8, fbt=..., err=...) at /data/src/10.6/sql/sql_type_fixedbin.h:1111
#6  0x0000564df437c01c in FixedBinTypeBundle<Inet6>::Field_fbt::store_text (this=0x61900009f2b8, str=0x61e000054efd "", length=40, cs=0x564df6587840 <my_charset_bin>) at /data/src/10.6/sql/sql_type_fixedbin.h:1259
#7  0x0000564df2d1a4cb in Field::store_from_statistical_minmax_field (this=0x61900009f2b8, stat_field=0x61900009b5b8, str=0x7fefc5950430) at /data/src/10.6/sql/field.cc:2003
#8  0x0000564df279ce35 in Column_stat::get_stat_values (this=0x7fefc5950a00) at /data/src/10.6/sql/sql_statistics.cc:1135
#9  0x0000564df2790168 in read_statistics_for_table (thd=0x62b00007e218, table=0x61900009e798, stat_tables=0x7fefc5951fa0) at /data/src/10.6/sql/sql_statistics.cc:2923
#10 0x0000564df27922c4 in read_statistics_for_tables (thd=0x62b00007e218, tables=0x62b000085910) at /data/src/10.6/sql/sql_statistics.cc:3215
#11 0x0000564df2791659 in read_statistics_for_tables_if_needed (thd=0x62b00007e218, tables=0x62b000085910) at /data/src/10.6/sql/sql_statistics.cc:3130
#12 0x0000564df23ab30c in open_and_lock_tables (thd=0x62b00007e218, options=..., tables=0x62b000085910, derived=true, flags=0, prelocking_strategy=0x7fefc59537a0) at /data/src/10.6/sql/sql_base.cc:5317
#13 0x0000564df23022e8 in open_and_lock_tables (thd=0x62b00007e218, tables=0x62b000085910, derived=true, flags=0) at /data/src/10.6/sql/sql_base.h:509
#14 0x0000564df254fa47 in execute_sqlcom_select (thd=0x62b00007e218, all_tables=0x62b000085910) at /data/src/10.6/sql/sql_parse.cc:6194
#15 0x0000564df253ec5c in mysql_execute_command (thd=0x62b00007e218, is_called_from_prepared_stmt=false) at /data/src/10.6/sql/sql_parse.cc:3949
#16 0x0000564df255b4fb in mysql_parse (thd=0x62b00007e218, rawbuf=0x62b000085238 "SELECT * FROM t", length=15, parser_state=0x7fefc5954a30) at /data/src/10.6/sql/sql_parse.cc:8036
#17 0x0000564df2531342 in dispatch_command (command=COM_QUERY, thd=0x62b00007e218, packet=0x62900025d219 "SELECT * FROM t", packet_length=15, blocking=true) at /data/src/10.6/sql/sql_parse.cc:1896
#18 0x0000564df252e080 in do_command (thd=0x62b00007e218, blocking=true) at /data/src/10.6/sql/sql_parse.cc:1409
#19 0x0000564df299abdc in do_handle_one_connection (connect=0x608000002db8, put_in_cache=true) at /data/src/10.6/sql/sql_connect.cc:1416
#20 0x0000564df299a59d in handle_one_connection (arg=0x608000002d38) at /data/src/10.6/sql/sql_connect.cc:1318
#21 0x0000564df35f4cf2 in pfs_spawn_thread (arg=0x617000005b98) at /data/src/10.6/storage/perfschema/pfs.cc:2201
#22 0x00007fefcd0a7fd4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
#23 0x00007fefcd1285bc in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

Fails the same way on debug- and non-debug builds, with at least MyISAM, InnoDB, Aria.

The failure started happening after this commit in 10.6.10 / 10.7.6 / 10.8.5 / 10.9.3:

commit 0e8544cd73c190dc4da0a3e83eefffe70bb3f755
Author: Alexander Barkov
Date:   Tue Aug 23 13:17:35 2022 +0400
 
    MDEV-29355 Backport templatized INET6 implementation from 10.7 to 10.6


Generated at Thu Feb 08 10:21:58 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.