[MDEV-10418] Assertion `m_extra_cache' failed in ha_partition::late_extra_cache(uint) Created: 2016-07-22  Updated: 2017-02-21  Resolved: 2017-02-21

Status: Closed
Project: MariaDB Server
Component/s: Partitioning
Affects Version/s: 5.5, 10.0, 10.1
Fix Version/s: 5.5.55

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

Sprint: 10.2.2-3, 5.5.54, 5.5.55

 Description   

mysqld: /data/src/10.1/sql/ha_partition.cc:7426: void ha_partition::late_extra_cache(uint): Assertion `m_extra_cache' failed.
160722 16:20:42 [ERROR] mysqld got signal 6 ;
 
#6  0x00007f32289d6266 in __assert_fail_base (fmt=0x7f3228b0f238 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x7f322bcce324 "m_extra_cache", file=file@entry=0x7f322bccc360 "/data/src/10.1/sql/ha_partition.cc", line=line@entry=7426, function=function@entry=0x7f322bccffa0 <ha_partition::late_extra_cache(unsigned int)::__PRETTY_FUNCTION__> "void ha_partition::late_extra_cache(uint)") at assert.c:92
#7  0x00007f32289d6312 in __GI___assert_fail (assertion=0x7f322bcce324 "m_extra_cache", file=0x7f322bccc360 "/data/src/10.1/sql/ha_partition.cc", line=7426, function=0x7f322bccffa0 <ha_partition::late_extra_cache(unsigned int)::__PRETTY_FUNCTION__> "void ha_partition::late_extra_cache(uint)") at assert.c:101
#8  0x00007f322ba39524 in ha_partition::late_extra_cache (this=0x7f31fbc9a088, partition_id=0) at /data/src/10.1/sql/ha_partition.cc:7426
#9  0x00007f322ba34ac4 in ha_partition::rnd_init (this=0x7f31fbc9a088, scan=true) at /data/src/10.1/sql/ha_partition.cc:4787
#10 0x00007f322b16c40c in handler::ha_rnd_init (this=0x7f31fbc9a088, scan=true) at /data/src/10.1/sql/handler.h:2782
#11 0x00007f322b4196d9 in handler::read_first_row (this=0x7f31fbc9a088, buf=0x7f31fbc4f098 "\377\217\217\217\217\245\245\245\377\b", primary_key=64) at /data/src/10.1/sql/handler.cc:2770
#12 0x00007f322b25c847 in handler::ha_read_first_row (this=0x7f31fbc9a088, buf=0x7f31fbc4f098 "\377\217\217\217\217\245\245\245\377\b", primary_key=64) at /data/src/10.1/sql/sql_class.h:5424
#13 0x00007f322b2468f5 in join_read_system (tab=0x7f31fbc23060) at /data/src/10.1/sql/sql_select.cc:18846
#14 0x00007f322b2464d9 in join_read_const_table (thd=0x7f3204f56070, tab=0x7f31fbc23060, pos=0x7f31fbc235b0) at /data/src/10.1/sql/sql_select.cc:18742
#15 0x00007f322b22169a in make_join_statistics (join=0x7f31fbc22940, tables_list=..., keyuse_array=0x7f31fbc22c70) at /data/src/10.1/sql/sql_select.cc:3776
#16 0x00007f322b218fa2 in JOIN::optimize_inner (this=0x7f31fbc22940) at /data/src/10.1/sql/sql_select.cc:1374
#17 0x00007f322b217e56 in JOIN::optimize (this=0x7f31fbc22940) at /data/src/10.1/sql/sql_select.cc:1036
#18 0x00007f322b2204ca in mysql_select (thd=0x7f3204f56070, rref_pointer_array=0x7f3204f5a400, tables=0x7f31fbc22258, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7f31fbc22920, unit=0x7f3204f59a88, select_lex=0x7f3204f5a188) at /data/src/10.1/sql/sql_select.cc:3437
#19 0x00007f322b21602c in handle_select (thd=0x7f3204f56070, lex=0x7f3204f599c0, result=0x7f31fbc22920, setup_tables_done_option=0) at /data/src/10.1/sql/sql_select.cc:384
#20 0x00007f322b1e6382 in execute_sqlcom_select (thd=0x7f3204f56070, all_tables=0x7f31fbc22258) at /data/src/10.1/sql/sql_parse.cc:5894
#21 0x00007f322b1dc28f in mysql_execute_command (thd=0x7f3204f56070) at /data/src/10.1/sql/sql_parse.cc:2960
#22 0x00007f322b1e9aba in mysql_parse (thd=0x7f3204f56070, rawbuf=0x7f31fbc22088 "SELECT * FROM t2", length=16, parser_state=0x7f322c10d630) at /data/src/10.1/sql/sql_parse.cc:7314
#23 0x00007f322b1d84e4 in dispatch_command (command=COM_QUERY, thd=0x7f3204f56070, packet=0x7f3204ebb071 "SELECT * FROM t2", packet_length=16) at /data/src/10.1/sql/sql_parse.cc:1486
#24 0x00007f322b1d721b in do_command (thd=0x7f3204f56070) at /data/src/10.1/sql/sql_parse.cc:1107
#25 0x00007f322b30ce63 in do_handle_one_connection (thd_arg=0x7f3204f56070) at /data/src/10.1/sql/sql_connect.cc:1350
#26 0x00007f322b30cbc7 in handle_one_connection (arg=0x7f3204f56070) at /data/src/10.1/sql/sql_connect.cc:1262
#27 0x00007f322a8d80a4 in start_thread (arg=0x7f322c10eb00) at pthread_create.c:309
#28 0x00007f3228a9087d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

--source include/have_partition.inc
 
CREATE TABLE t1 (f1 INT) ENGINE=MyISAM;
INSERT INTO t1 VALUES (1),(2);
 
CREATE TABLE t2 (f2 INT) ENGINE=MyISAM PARTITION BY RANGE(f2) (PARTITION pmax VALUES LESS THAN MAXVALUE);
INSERT INTO t2 VALUES (8);
 
CREATE ALGORITHM = MERGE VIEW v AS SELECT f2 FROM t2, t1;
UPDATE v SET f2 = 1;
 
SELECT * FROM t2;

Also reproducible on current 10.2 and on previous versions of MariaDB.
Not reproducible on current MySQL 5.5 and 5.7.



 Comments   
Comment by Alexey Botchkov [ 2016-12-19 ]

http://lists.askmonty.org/pipermail/commits/2016-December/010306.html

Comment by Alexey Botchkov [ 2017-02-21 ]

As I emailed, MySQL doesn't fail as it just doesn't have the
DBUG_ASSERT() in the ha_partition::late_extra_cache()

Comment by Sergei Golubchik [ 2017-02-21 ]

ok to push

Generated at Thu Feb 08 07:42:05 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.