[MDEV-16703] Assertion `dd_val >= last_val' failed in myrocks::ha_rocksdb::load_auto_incr_value_from_index Created: 2018-07-06  Updated: 2018-08-26  Resolved: 2018-08-26

Status: Closed
Project: MariaDB Server
Component/s: Data Definition - Alter Table, Storage Engine - RocksDB
Affects Version/s: 10.2, 10.3
Fix Version/s: 10.2.18, 10.3.10

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Sergei Petrunia
Resolution: Fixed Votes: 0
Labels: upstream


 Description   

INSTALL SONAME 'ha_rocksdb';
 
CREATE TABLE t1 (pk INT AUTO_INCREMENT, a INT, PRIMARY KEY(pk)) ENGINE=RocksDB;
INSERT INTO t1 (a) VALUES (1);
UPDATE t1 SET pk = 3;
ALTER TABLE t1 AUTO_INCREMENT 2;
 
# Cleanup
DROP TABLE t1;
UNINSTALL SONAME 'ha_rocksdb';

10.2 e9b78a105

mysqld: /data/src/10.2/storage/rocksdb/ha_rocksdb.cc:5239: ulonglong myrocks::ha_rocksdb::load_auto_incr_value_from_index(): Assertion `dd_val >= last_val' failed.
180706 18:01:25 [ERROR] mysqld got signal 6 ;
 
#7  0x00007f80915caee2 in __assert_fail () from /lib/x86_64-linux-gnu/libc.so.6
#8  0x00007f8086de2fbb in myrocks::ha_rocksdb::load_auto_incr_value_from_index (this=0x7f80702ee778) at /data/src/10.2/storage/rocksdb/ha_rocksdb.cc:5239
#9  0x00007f8086df88d9 in myrocks::ha_rocksdb::prepare_inplace_alter_table (this=0x7f80702ee778, altered_table=0x7f80703b6160, ha_alter_info=0x7f808c0a4610) at /data/src/10.2/storage/rocksdb/ha_rocksdb.cc:11836
#10 0x00005579ae3004d1 in handler::ha_prepare_inplace_alter_table (this=0x7f80702ee778, altered_table=0x7f80703b6160, ha_alter_info=0x7f808c0a4610) at /data/src/10.2/sql/handler.cc:4210
#11 0x00005579ae152a83 in mysql_inplace_alter_table (thd=0x7f8070000b00, table_list=0x7f8070012560, table=0x7f80702edb70, altered_table=0x7f80703b6160, ha_alter_info=0x7f808c0a4610, inplace_supported=HA_ALTER_INPLACE_SHARED_LOCK_AFTER_PREPARE, target_mdl_request=0x7f808c0a4680, alter_ctx=0x7f808c0a5240) at /data/src/10.2/sql/sql_table.cc:7330
#12 0x00005579ae15827d in mysql_alter_table (thd=0x7f8070000b00, new_db=0x7f8070012b70 "test", new_name=0x0, create_info=0x7f808c0a5e50, table_list=0x7f8070012560, alter_info=0x7f808c0a5da0, order_num=0, order=0x0, ignore=false) at /data/src/10.2/sql/sql_table.cc:9390
#13 0x00005579ae1d2971 in Sql_cmd_alter_table::execute (this=0x7f8070012b80, thd=0x7f8070000b00) at /data/src/10.2/sql/sql_alter.cc:324
#14 0x00005579ae08b1ce in mysql_execute_command (thd=0x7f8070000b00) at /data/src/10.2/sql/sql_parse.cc:6222
#15 0x00005579ae08ff15 in mysql_parse (thd=0x7f8070000b00, rawbuf=0x7f8070012478 "ALTER TABLE t1 AUTO_INCREMENT 2", length=31, parser_state=0x7f808c0a7200, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:7995
#16 0x00005579ae07da3a in dispatch_command (command=COM_QUERY, thd=0x7f8070000b00, packet=0x7f80700088d1 "ALTER TABLE t1 AUTO_INCREMENT 2", packet_length=31, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:1821
#17 0x00005579ae07c39d in do_command (thd=0x7f8070000b00) at /data/src/10.2/sql/sql_parse.cc:1375
#18 0x00005579ae1cd65e in do_handle_one_connection (connect=0x5579b19e2090) at /data/src/10.2/sql/sql_connect.cc:1335
#19 0x00005579ae1cd3eb in handle_one_connection (arg=0x5579b19e2090) at /data/src/10.2/sql/sql_connect.cc:1241
#20 0x00005579ae5ef6e4 in pfs_spawn_thread (arg=0x5579b1a008e0) at /data/src/10.2/storage/perfschema/pfs.cc:1862
#21 0x00007f80932a1494 in start_thread (arg=0x7f808c0a8700) at pthread_create.c:333
#22 0x00007f809168793f in clone () from /lib/x86_64-linux-gnu/libc.so.6



 Comments   
Comment by Ming Lin [ 2018-08-09 ]

Hi, this patch fixed it.

https://github.com/MariaDB/server/pull/839

Comment by Sergei Petrunia [ 2018-08-13 ]

Also affects upstream, filed there as: https://github.com/facebook/mysql-5.6/issues/869

Comment by Sergei Petrunia [ 2018-08-26 ]

The PR was merged into 10.3. Cherry-picked it to 10.2 as well.

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