Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Duplicate
-
10.2.14
-
None
-
Windows
Description
There have been a total of ten crashes by now, with eight more or less distinct backtraces.
When having a closer look at the backtraces they don't really seem to make sense, showing call sequences that include functions that can't possibly call the next function in the trace.
So it looks as if we're actually facing a stack smashing bug here.
Below are the extracted stack traces, demangled with the help of https://demangler.com/
Full error log is available on demand, and core-dump has now been added to the configuration to hopefully get better debug info from that.
Trace #1
mysqld.exe!private: void __cdecl QUERY_PROFILE::new_status(char const * __ptr64,char const * __ptr64,char const * __ptr64,unsigned int) __ptr64
|
mysqld.exe!public: void __cdecl THD::enter_stage(struct PSI_stage_info_v1 const * __ptr64,char const * __ptr64,char const * __ptr64,unsigned int) __ptr64
|
mysqld.exe!set_thd_stage_info()
|
mysqld.exe!public: BOOL __cdecl Query_cache::try_lock(class THD * __ptr64,enum Query_cache::Cache_try_lock_mode) __ptr64
|
mysqld.exe!public: void __cdecl Query_cache::insert(class THD * __ptr64,struct Query_cache_tls * __ptr64,char const * __ptr64,unsigned long,unsigned int) __ptr64
|
mysqld.exe!void __cdecl query_cache_insert(void * __ptr64,char const * __ptr64,unsigned long,unsigned int)
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_send_query()
|
mysqld.exe!mysql_real_query()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Trace #2
mysqld.exe!public: void __cdecl Query_cache::insert(class THD * __ptr64,struct Query_cache_tls * __ptr64,char const * __ptr64,unsigned long,unsigned int) __ptr64
|
mysqld.exe!void __cdecl query_cache_insert(void * __ptr64,char const * __ptr64,unsigned long,unsigned int)
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_close_slow_part()
|
mysqld.exe!mysql_close()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!int __cdecl ha_finalize_handlerton(struct st_plugin_int * __ptr64)
|
mysqld.exe!BOOL __cdecl mysql_uninstall_plugin(class THD * __ptr64,struct st_mysql_lex_string const * __ptr64,struct st_mysql_lex_string const * __ptr64)
|
mysqld.exe!public: unsigned char * __ptr64 __cdecl sys_var_pluginvar::real_value_ptr(class THD * __ptr64,enum enum_var_type) __ptr64
|
mysqld.exe!void __cdecl plugin_shutdown(void)
|
mysqld.exe!public: char * __ptr64 __cdecl String::c_ptr_safe(void) __ptr64
|
mysqld.exe!void __cdecl unireg_end(void)
|
mysqld.exe!void __cdecl kill_mysql(class THD * __ptr64)
|
mysqld.exe!handle_shutdown()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
Trace #3
mysqld.exe!private: void __cdecl QUERY_PROFILE::new_status(char const * __ptr64,char const * __ptr64,char const * __ptr64,unsigned int) __ptr64
|
mysqld.exe!public: void __cdecl THD::enter_stage(struct PSI_stage_info_v1 const * __ptr64,char const * __ptr64,char const * __ptr64,unsigned int) __ptr64
|
mysqld.exe!set_thd_stage_info()
|
mysqld.exe!public: BOOL __cdecl Query_cache::try_lock(class THD * __ptr64,enum Query_cache::Cache_try_lock_mode) __ptr64
|
mysqld.exe!public: void __cdecl Query_cache::insert(class THD * __ptr64,struct Query_cache_tls * __ptr64,char const * __ptr64,unsigned long,unsigned int) __ptr64
|
mysqld.exe!void __cdecl query_cache_insert(void * __ptr64,char const * __ptr64,unsigned long,unsigned int)
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_send_query()
|
mysqld.exe!mysql_real_query()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Trace #4
mysqld.exe!private: void __cdecl QUERY_PROFILE::new_status(char const * __ptr64,char const * __ptr64,char const * __ptr64,unsigned int) __ptr64
|
mysqld.exe!public: void __cdecl THD::enter_stage(struct PSI_stage_info_v1 const * __ptr64,char const * __ptr64,char const * __ptr64,unsigned int) __ptr64
|
mysqld.exe!set_thd_stage_info()
|
mysqld.exe!public: BOOL __cdecl Query_cache::try_lock(class THD * __ptr64,enum Query_cache::Cache_try_lock_mode) __ptr64
|
mysqld.exe!public: void __cdecl Query_cache::insert(class THD * __ptr64,struct Query_cache_tls * __ptr64,char const * __ptr64,unsigned long,unsigned int) __ptr64
|
mysqld.exe!void __cdecl query_cache_insert(void * __ptr64,char const * __ptr64,unsigned long,unsigned int)
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_select_db()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Trace #5
mysqld.exe!public: unsigned int __cdecl Query_cache_block::headers_len(void) __ptr64
|
mysqld.exe!public: unsigned char * __ptr64 __cdecl Query_cache_block::data(void) __ptr64
|
mysqld.exe!public: void __cdecl Query_cache::insert(class THD * __ptr64,struct Query_cache_tls * __ptr64,char const * __ptr64,unsigned long,unsigned int) __ptr64
|
mysqld.exe!void __cdecl query_cache_insert(void * __ptr64,char const * __ptr64,unsigned long,unsigned int)
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_send_query()
|
mysqld.exe!mysql_real_query()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Trace #6
mysqld.exe!protected: char __cdecl Query_cache::append_result_data(struct Query_cache_block * __ptr64 * __ptr64,unsigned long,unsigned char * __ptr64,struct Query_cache_block * __ptr64) __ptr64
|
mysqld.exe!public: void __cdecl Query_cache::insert(class THD * __ptr64,struct Query_cache_tls * __ptr64,char const * __ptr64,unsigned long,unsigned int) __ptr64
|
mysqld.exe!void __cdecl query_cache_insert(void * __ptr64,char const * __ptr64,unsigned long,unsigned int)
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_send_query()
|
mysqld.exe!mysql_real_query()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Trace #7
mysqld.exe!public: unsigned int __cdecl Query_cache_block::headers_len(void) __ptr64
|
mysqld.exe!public: unsigned char * __ptr64 __cdecl Query_cache_block::data(void) __ptr64
|
mysqld.exe!public: void __cdecl Query_cache::insert(class THD * __ptr64,struct Query_cache_tls * __ptr64,char const * __ptr64,unsigned long,unsigned int) __ptr64
|
mysqld.exe!void __cdecl query_cache_insert(void * __ptr64,char const * __ptr64,unsigned long,unsigned int)
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_select_db()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Trace #8
mysqld.exe!public: __cdecl Trigger::~Trigger(void) __ptr64
|
mysqld.exe!public: __cdecl Table_triggers_list::~Table_triggers_list(void) __ptr64
|
mysqld.exe!public: __cdecl Table_cache_instance::~Table_cache_instance(void) __ptr64
|
mysqld.exe!void __cdecl tc_add_table(class THD * __ptr64,struct TABLE * __ptr64)
|
mysqld.exe!BOOL __cdecl open_table(class THD * __ptr64,struct TABLE_LIST * __ptr64,class Open_table_context * __ptr64)
|
mysqld.exe!BOOL __cdecl open_and_lock_tables(class THD * __ptr64,struct DDL_options_st const & __ptr64,struct TABLE_LIST * __ptr64,BOOL,unsigned int,class Prelocking_strategy * __ptr64)
|
mysqld.exe!BOOL __cdecl open_tables(class THD * __ptr64,struct DDL_options_st const & __ptr64,struct TABLE_LIST * __ptr64 * __ptr64,unsigned int * __ptr64,unsigned int,class Prelocking_strategy * __ptr64)
|
mysqld.exe!BOOL __cdecl open_and_lock_tables(class THD * __ptr64,struct DDL_options_st const & __ptr64,struct TABLE_LIST * __ptr64,BOOL,unsigned int,class Prelocking_strategy * __ptr64)
|
mysqld.exe!void __cdecl execute_init_command(class THD * __ptr64,struct st_mysql_lex_string * __ptr64,struct st_mysql_rwlock * __ptr64)
|
mysqld.exe!int __cdecl mysql_execute_command(class THD * __ptr64)
|
mysqld.exe!void __cdecl mysql_parse(class THD * __ptr64,char * __ptr64,unsigned int,class Parser_state * __ptr64,BOOL,BOOL)
|
mysqld.exe!BOOL __cdecl dispatch_command(enum enum_server_command,class THD * __ptr64,char * __ptr64,unsigned int,BOOL,BOOL)
|
mysqld.exe!BOOL __cdecl do_command(class THD * __ptr64)
|
mysqld.exe!void __cdecl pool_of_threads_scheduler(struct scheduler_functions * __ptr64,unsigned long * __ptr64,unsigned int * __ptr64)
|
mysqld.exe!void __cdecl tp_callback(struct TP_connection * __ptr64)
|
ntdll.dll!RtlReleaseSRWLockExclusive()
|
ntdll.dll!RtlReleaseSRWLockExclusive()
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Trace #9
mysqld.exe!thd_increment_bytes_sent()
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_send_query()
|
mysqld.exe!mysql_real_query()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Trace #10
mysqld.exe!private: void __cdecl QUERY_PROFILE::new_status(char const * __ptr64,char const * __ptr64,char const * __ptr64,unsigned int) __ptr64
|
mysqld.exe!public: void __cdecl THD::enter_stage(struct PSI_stage_info_v1 const * __ptr64,char const * __ptr64,char const * __ptr64,unsigned int) __ptr64
|
mysqld.exe!set_thd_stage_info()
|
mysqld.exe!public: BOOL __cdecl Query_cache::try_lock(class THD * __ptr64,enum Query_cache::Cache_try_lock_mode) __ptr64
|
mysqld.exe!public: void __cdecl Query_cache::insert(class THD * __ptr64,struct Query_cache_tls * __ptr64,char const * __ptr64,unsigned long,unsigned int) __ptr64
|
mysqld.exe!void __cdecl query_cache_insert(void * __ptr64,char const * __ptr64,unsigned long,unsigned int)
|
mysqld.exe!net_real_write()
|
mysqld.exe!net_flush()
|
mysqld.exe!net_write_command()
|
mysqld.exe!cli_advanced_command()
|
mysqld.exe!mysql_send_query()
|
mysqld.exe!mysql_real_query()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_deinit()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
ha_spider.dll!spider_flush_table_mon_cache_init()
|
mysqld.exe!pthread_join()
|
mysqld.exe!public: virtual void __cdecl Item::traverse_cond(void (__cdecl*)(class Item const * __ptr64,void * __ptr64),void * __ptr64,enum Item::traverse_order) __ptr64
|
KERNEL32.DLL!BaseThreadInitThunk()
|
ntdll.dll!RtlUserThreadStart()
|
Attachments
Issue Links
- duplicates
-
MDEV-12900 spider tests failed in buildbot with valgrind
- Closed
- is duplicated by
-
MDEV-16002 Crash in table_cache code
- Closed
- relates to
-
MDEV-12900 spider tests failed in buildbot with valgrind
- Closed
-
MDEV-16348 the suddenly crashing in MariaDB10.1.29
- Closed