[MDEV-32488] server crash when engine set to ha_mroonga Created: 2023-10-17  Updated: 2023-10-17  Resolved: 2023-10-17

Status: Closed
Project: MariaDB Server
Component/s: Server, Storage Engine - Mroonga
Affects Version/s: 10.4, 10.5, 10.6, 10.9, 10.10, 10.11, 11.0, 11.1, 11.2, 10.11.5
Fix Version/s: N/A

Type: Bug Priority: Critical
Reporter: csfuzz Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: None
Environment:

docker mariadb:10.11


Attachments: File crash.sql    
Issue Links:
Duplicate
duplicates MDEV-32021 Server crash or assertion failure upo... Confirmed

 Description   

Create container based on docker image mariadb:10.11;
Install mroonga plugin package by executing "apt-get -y install mariadb-plugin-mroonga";
Log in to MariaDB, executing"source crash.sql"(in attachment).

You will get "Lost connection to server during query".



 Comments   
Comment by Alice Sherepa [ 2023-10-17 ]

Thank you for the report!
I repeated as descibed on 10.4-11.2:

INSTALL SONAME 'ha_mroonga';
CREATE TABLE table1(pk INT AUTO_INCREMENT, a INT, b INT, c INT, d INT, PRIMARY KEY (pk), KEY (a)) ENGINE=Mroonga;
INSERT INTO table1(a, b) VALUES (0,100),(200,2000);
INSERT INTO table1(c, d) VALUES (0,100),(200,2000);
CREATE TRIGGER tr1 AFTER UPDATE ON table1 FOR EACH ROW SET @a= 100;
UPDATE table1 SET b = 3 WHERE a = 0;

Version: '10.4.32-MariaDB-debug-log'  
mysqld: /10.4/src/sql/handler.h:3183: int handler::ha_index_init(uint, bool): Assertion `inited==NONE' failed.
231017 12:28:59 [ERROR] mysqld got signal 6 ;
 
Server version: 10.4.32-MariaDB-debug-log source revision: b1c8ea83a5b35dcdcc0c7fd940f1c977c6e59f09
 
sql/signal_handler.cc:238(handle_fatal_signal)[0x556dbbdac3f3]
sql/handler.h:3184(handler::ha_index_init(unsigned int, bool))[0x556dbb434822]
sql/handler.cc:3628(handler::get_auto_increment(unsigned long long, unsigned long long, unsigned long long, unsigned long long*, unsigned long long*))[0x556dbbdcd147]
mroonga/ha_mroonga.cpp:16110(ha_mroonga::storage_get_auto_increment(unsigned long long, unsigned long long, unsigned long long, unsigned long long*, unsigned long long*))[0x7effdaeb269e]
mroonga/ha_mroonga.cpp:5295(ha_mroonga::storage_info(unsigned int))[0x7effdae15ad8]
mroonga/ha_mroonga.cpp:6830(ha_mroonga::storage_update_row(unsigned char const*, unsigned char const*))[0x7effdae2f9af]
mroonga/ha_mroonga.cpp:7042(ha_mroonga::update_row(unsigned char const*, unsigned char const*))[0x7effdae33f48]
sql/handler.cc:6915(handler::ha_update_row(unsigned char const*, unsigned char const*))[0x556dbbde77e1]
sql/sql_update.cc:1087(mysql_update(THD*, TABLE_LIST*, List<Item>&, List<Item>&, Item*, unsigned int, st_order*, unsigned long long, bool, unsigned long long*, unsigned long long*))[0x556dbb8cba3e]
sql/sql_parse.cc:4451(mysql_execute_command(THD*))[0x556dbb5f302b]
sql/sql_parse.cc:8012(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x556dbb60c0b7]
sql/sql_parse.cc:1860(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x556dbb5e24dd]
sql/sql_parse.cc:1378(do_command(THD*))[0x556dbb5df008]
sql/sql_connect.cc:1420(do_handle_one_connection(CONNECT*))[0x556dbb9ecde5]
sql/sql_connect.cc:1325(handle_one_connection)[0x556dbb9ec689]
perfschema/pfs.cc:1871(pfs_spawn_thread)[0x556dbc69745a]
nptl/pthread_create.c:478(start_thread)[0x7efff2dad609]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x43)[0x7efff297e133]
 
Query (0x62b0000a1290): UPDATE table1 SET b = 3 WHERE a = 0

Version: '10.11.5-MariaDB'  
231017 12:30:51 [ERROR] mysqld got signal 11 ;
 
Server version: 10.11.5-MariaDB source revision: 7875294b6b74b53dd3aaa723e6cc103d2bb47b2c
 
sql/signal_handler.cc:241(handle_fatal_signal)[0x5646ee47e4c7]
sigaction.c:0(__restore_rt)[0x7efed120b420]
sql/handler.cc:6711(handler::read_range_next())[0x5646ee48b883]
sql/multi_range_read.cc:492(handler::multi_range_read_next(void**))[0x5646ee380852]
sql/opt_range.cc:12754(QUICK_RANGE_SELECT::get_next())[0x5646ee14c071]
sql/records.cc:403(rr_quick(READ_RECORD*))[0x5646ee172e69]
sql/sql_update.cc:1023(mysql_update(THD*, TABLE_LIST*, List<Item>&, List<Item>&, Item*, unsigned int, st_order*, unsigned long long, bool, unsigned long long*, unsigned long long*))[0x5646ee307911]
sql/sql_parse.cc:4429(mysql_execute_command(THD*, bool))[0x5646ee23b1a3]
sql/sql_parse.cc:8035(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x5646ee23dd8b]
sql/sql_parse.cc:1953(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool))[0x5646ee2401c8]
sql/sql_parse.cc:1409(do_command(THD*, bool))[0x5646ee2416f3]
sql/sql_connect.cc:1416(do_handle_one_connection(CONNECT*, bool))[0x5646ee34d5e7]
sql/sql_connect.cc:1324(handle_one_connection)[0x5646ee34d884]
perfschema/pfs.cc:2204(pfs_spawn_thread)[0x5646ee6d0d6c]
nptl/pthread_create.c:478(start_thread)[0x7efed11ff609]
 
Query (0x7efe84010c20): UPDATE table1 SET b = 3 WHERE a = 0

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