[MDEV-20195] Assertion `0' failed in ha_partition::handle_unordered_next upon HANDLER READ from partitioned table Created: 2019-07-27  Updated: 2023-04-27

Status: Confirmed
Project: MariaDB Server
Component/s: Partitioning, Server
Affects Version/s: 10.3, 10.4, 10.5
Fix Version/s: 10.4, 10.5

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Alexey Botchkov
Resolution: Unresolved Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-23167 Server crashes upon HANDLER READ from... Confirmed

 Description   

--source include/have_partition.inc
 
CREATE TABLE t1 (a INT, KEY(a)) PARTITION BY HASH(a);
HANDLER t1 OPEN h;
HANDLER h READ a NEXT;
HANDLER h READ a NEXT;
 
# Cleanup
HANDLER h CLOSE;
DROP TABLE t1;

10.3 f6d0d309

mysqld: /data/src/10.3/sql/ha_partition.cc:7278: int ha_partition::handle_unordered_next(uchar*, bool): Assertion `0' failed.
190728  1:47:00 [ERROR] mysqld got signal 6 ;
 
#6  0x00007f66e6e6de67 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x56038105c669 "0", file=file@entry=0x56038105bc38 "/data/src/10.3/sql/ha_partition.cc", line=line@entry=7278, function=function@entry=0x560381060440 <ha_partition::handle_unordered_next(unsigned char*, bool)::__PRETTY_FUNCTION__> "int ha_partition::handle_unordered_next(uchar*, bool)") at assert.c:92
#7  0x00007f66e6e6df12 in __GI___assert_fail (assertion=0x56038105c669 "0", file=0x56038105bc38 "/data/src/10.3/sql/ha_partition.cc", line=7278, function=0x560381060440 <ha_partition::handle_unordered_next(unsigned char*, bool)::__PRETTY_FUNCTION__> "int ha_partition::handle_unordered_next(uchar*, bool)") at assert.c:101
#8  0x0000560380c091d5 in ha_partition::handle_unordered_next (this=0x7f66d0095ab8, buf=0x7f66d0006b00 "\377", is_next_same=false) at /data/src/10.3/sql/ha_partition.cc:7278
#9  0x0000560380c049c3 in ha_partition::index_next (this=0x7f66d0095ab8, buf=0x7f66d0006b00 "\377") at /data/src/10.3/sql/ha_partition.cc:5831
#10 0x00005603804a4fcb in handler::ha_index_next (this=0x7f66d0095ab8, buf=0x7f66d0006b00 "\377") at /data/src/10.3/sql/handler.cc:2947
#11 0x000056038015f424 in mysql_ha_read (thd=0x7f66d0000b00, tables=0x7f66d0012980, mode=RNEXT, keyname=0x7f66d0012fc8 "a", key_expr=0xa5a5a5a5a5a5a5a5, ha_rkey_mode=HA_READ_KEY_EXACT, cond=0x0, select_limit_cnt=1, offset_limit_cnt=0) at /data/src/10.3/sql/sql_handler.cc:892
#12 0x00005603801a8390 in mysql_execute_command (thd=0x7f66d0000b00) at /data/src/10.3/sql/sql_parse.cc:5493
#13 0x00005603801af3f0 in mysql_parse (thd=0x7f66d0000b00, rawbuf=0x7f66d0012818 "HANDLER h READ a NEXT", length=21, parser_state=0x7f66e106c5f0, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:7829
#14 0x000056038019cfee in dispatch_command (command=COM_QUERY, thd=0x7f66d0000b00, packet=0x7f66d0008c71 "", packet_length=21, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:1856
#15 0x000056038019ba11 in do_command (thd=0x7f66d0000b00) at /data/src/10.3/sql/sql_parse.cc:1401
#16 0x00005603803050a2 in do_handle_one_connection (connect=0x560383a4a120) at /data/src/10.3/sql/sql_connect.cc:1403
#17 0x0000560380304e04 in handle_one_connection (arg=0x560383a4a120) at /data/src/10.3/sql/sql_connect.cc:1308
#18 0x0000560380be02a8 in pfs_spawn_thread (arg=0x560383a650a0) at /data/src/10.3/storage/perfschema/pfs.cc:1862
#19 0x00007f66e89e24a4 in start_thread (arg=0x7f66e106d700) at pthread_create.c:456
#20 0x00007f66e6f2ad0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

No obvious effect on a non-debug build.
The test case is not applicable to 10.2 (HANDLER doesn't work with partitioning).
Reproducible on previous 10.3.x releases.


Generated at Thu Feb 08 08:57:33 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.