我们有一个使用 Galera 进行复制的 MariaDB 集群。最近(过去 2-3 周)两者都崩溃了。下面是示例回溯
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/libexec/mysqld --basedir=/usr'.
Program terminated with signal 11, Segmentation fault.
#0 0x00005650886a1ce4 in ull_get_key(unsigned char const*, unsigned long*, char) ()
Missing separate debuginfos, use: debuginfo-install mariadb103-server-10.3.21-2.el7.ius.x86_64
(gdb) bt
#0 0x00005650886a1ce4 in ull_get_key(unsigned char const*, unsigned long*, char) ()
#1 0x0000565088b3decd in hashcmp.isra.1 ()
#2 0x0000565088b3e15f in my_hash_first_from_hash_value ()
#3 0x0000565088b3e260 in my_hash_search ()
#4 0x00005650886a3f99 in Item_func_release_lock::val_int() ()
#5 0x00005650883b41fc in Item::update_null_value() ()
#6 0x000056508841d215 in Item_func::is_null() ()
#7 0x000056508877bde9 in mysql_do(THD*, List<Item>&) ()
#8 0x000056508845ea66 in mysql_execute_command(THD*) ()
#9 0x00005650883cad76 in sp_instr_stmt::exec_core(THD*, unsigned int*) ()
#10 0x00005650883d2949 in sp_lex_keeper::reset_lex_and_exec_core(THD*, unsigned int*, bool, sp_instr*) ()
#11 0x00005650883d337c in sp_instr_stmt::execute(THD*, unsigned int*) ()
#12 0x00005650883ce6c0 in sp_head::execute(THD*, bool) ()
#13 0x00005650883cf91d in sp_head::execute_procedure(THD*, List<Item>*) ()
#14 0x0000565088450df2 in do_execute_sp(THD*, sp_head*) ()
#15 0x00005650884522e6 in Sql_cmd_call::execute(THD*) [clone .part.293] ()
#16 0x0000565088452b60 in Sql_cmd_call::execute(THD*) ()
#17 0x000056508845c2b8 in mysql_execute_command(THD*) ()
#18 0x000056508846120b in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) ()
#19 0x0000565088461b81 in wsrep_mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) ()
#20 0x0000565088463306 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) ()
#21 0x0000565088464cae in do_command(THD*) ()
#22 0x00005650885377d1 in do_handle_one_connection(CONNECT*) ()
#23 0x000056508853789d in handle_one_connection ()
#24 0x00007f2bc8765ea5 in start_thread () from /lib64/libpthread.so.0
#25 0x00007f2bc68f18dd in clone () from /lib64/libc.so.6```
下面是另一个回溯。
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/libexec/mysqld --basedir=/usr'.
Program terminated with signal 11, Segmentation fault.
#0 0x00007f446755ec3d in poll () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install mariadb103-server-10.3.21-2.el7.ius.x86_64
(gdb) bt
#0 0x00007f446755ec3d in poll () from /lib64/libc.so.6
#1 0x0000557b977e51ef in handle_connections_sockets() ()
#2 0x0000557b977e8541 in mysqld_main(int, char**) ()
#3 0x00007f446748d555 in __libc_start_main () from /lib64/libc.so.6
#4 0x0000557b977db7cd in _start ()````
这看起来像是某个地方的错误或者硬件问题吗?
答案1
看起来您遇到了一个错误。我建议您向 MariaDB 提交错误报告。当这种情况开始发生时,您是否在 2-3 周前升级到了较新的版本?