Details
Description
The commit https://github.com/MariaDB/server/commit/54a10a429334a9579558a5d284c510d6f8b5bc97 broke server crash report when Galera is not loaded. Now the crash report terminates too early with
240920 17:57:28 [ERROR] mysqld got signal 6 ;
|
Sorry, we probably made a mistake, and this is a bug.
|
|
Your assistance in bug reporting will enable us to fix this for the next release.
|
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
|
|
We will try our best to scrape up some info that will hopefully help
|
diagnose the problem, but since we have already crashed,
|
something is definitely wrong and this may fail.
|
|
Server version: 10.5.27-MariaDB-debug source revision: 0a5e4a0191ecedff7d57867b01864225615af430
|
key_buffer_size=134217728
|
read_buffer_size=131072
|
max_used_connections=0
|
max_threads=153
|
thread_count=0
|
It is possible that mysqld could use up to
|
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 468030 K bytes of memory
|
Hope that's ok; if not, decrease some variables in the equation.
|
|
WSREP: Suppressing further logging
|
WSREP: Shutting down network communications
|
terminate called after throwing an instance of 'wsrep::runtime_error'
|
what(): provider not loaded
|
The fix is to add a check whether the provider is loaded in Wsrep_server_state::handle_fatal_signal():
diff --git a/sql/wsrep_server_state.cc b/sql/wsrep_server_state.cc
|
index a936d9dd79d..3ed26d3381c 100644
|
--- a/sql/wsrep_server_state.cc
|
+++ b/sql/wsrep_server_state.cc
|
@@ -87,7 +87,7 @@ void Wsrep_server_state::destroy()
|
|
void Wsrep_server_state::handle_fatal_signal()
|
{
|
- if (m_instance)
|
+ if (m_instance && m_instance->is_provider_loaded())
|
{
|
/* Galera background threads are still running and the logging may be
|
relatively verbose in case of networking error. Silence all wsrep
|
Attachments
Issue Links
- is caused by
-
MDEV-32363 when InnoDB gets an assertion failure, WSREP layer is not handled gracefully
- Closed