[MDEV-23111]  gcol.innodb_virtual_debug failed in buildbot, dict_col_get_no/row_upd_changes_ord_field_binary_func Created: 2020-07-07  Updated: 2023-08-23

Status: Confirmed
Project: MariaDB Server
Component/s: Data Definition - Alter Table, Storage Engine - InnoDB, Tests, Virtual Columns
Affects Version/s: 10.2, 10.3, 10.4, 10.5, 10.6
Fix Version/s: 10.4, 10.5

Type: Bug Priority: Major
Reporter: Alice Sherepa Assignee: Nikita Malyavin
Resolution: Unresolved Votes: 0
Labels: None

Issue Links:
Duplicate
is duplicated by MDEV-23112 gcol.innodb_virtual_debug fails, NULL... Closed
is duplicated by MDEV-23404 gcol.innodb_virtual_debug failed in b... Closed
Relates

 Description   

10.5 1ae008d272ad3f424fd3341c9b973e58531ca7e5
http://buildbot.askmonty.org/buildbot/builders/winx64-debug/builds/19935/steps/test/logs/stdio

gcol.innodb_virtual_debug 'innodb'       w1 [ fail ]
        Test ended at 2020-07-07 07:31:08
 
CURRENT_TEST: gcol.innodb_virtual_debug
mysqltest: At line 142: query 'DROP TABLE t' failed: 2013: Lost connection to MySQL server during query
 
The result from queries just before the failure was:
< snip >
ERROR 23000: Duplicate entry '' for key '*UNKNOWN*'
SET debug_dbug = @saved_dbug;
affected rows: 0
UPDATE t SET b=b-1;
SHOW CREATE TABLE t;
Table	Create Table
t	CREATE TABLE `t` (
  `a` int(11) DEFAULT NULL,
  `b` int(11) DEFAULT NULL,
  `c` int(11) GENERATED ALWAYS AS (`a` + `b`) VIRTUAL,
  `h` varchar(10) DEFAULT NULL,
  KEY `idx_1` (`c`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
SELECT c FROM t;
c
NULL
14
19
29
DROP TABLE t;
 
More results from queries before failure can be found in D:\winx64-debug\build\mysql-test\var\1\log\innodb_virtual_debug.log
 
 
Server [mysqld.1 - pid: 6716, winpid: 6716, exit: 1280] failed during test run
Server log from this test:
----------SERVER LOG START-----------
200707  7:31:06 [ERROR] mysqld got exception 0xc0000005 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
 
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.5-MariaDB-debug-log
key_buffer_size=1048576
read_buffer_size=131072
max_used_connections=2
max_threads=65537
thread_count=2
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 4576 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x2ad491bb0c8
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
server.dll!dict_col_get_no()[dict0dict.ic:151]
server.dll!row_upd_changes_ord_field_binary_func()[row0upd.cc:1381]
server.dll!row_purge_upd_exist_or_extern_func()[row0purge.cc:755]
server.dll!row_purge_record_func()[row0purge.cc:1071]
server.dll!row_purge()[row0purge.cc:1109]
server.dll!row_purge_step()[row0purge.cc:1160]
server.dll!que_thr_step()[que0que.cc:947]
server.dll!que_run_threads_low()[que0que.cc:1009]
server.dll!que_run_threads()[que0que.cc:1051]
server.dll!srv_task_execute()[srv0srv.cc:2031]
server.dll!purge_worker_callback()[srv0srv.cc:2195]
server.dll!tpool::task_group::execute()[task_group.cc:56]
server.dll!tpool::task::execute()[task.cc:48]
server.dll!tpool::thread_pool_win::task_callback()[tpool_win.cc:264]
ntdll.dll!RtlNtStatusToDosErrorNoTeb()
ntdll.dll!RtlReleaseSRWLockExclusive()
KERNEL32.DLL!BaseThreadInitThunk()
ntdll.dll!RtlUserThreadStart()
 
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (0x0): 
Connection ID (thread ID): 0
Status: NOT_KILLED
 
Optimizer switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=on,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on,split_materialized=on,condition_pushdown_for_subquery=on,rowid_filter=on,condition_pushdown_from_having=on,not_null_range_scan=off
 
The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/ contains
information that should help you find out what is causing the crash.
Writing a core file at D:\winx64-debug\build\mysql-test\var\1\mysqld.1\data\
Minidump written to D:\winx64-debug\build\mysql-test\var\1\mysqld.1\data\mariadbd.dmp
----------SERVER LOG END-------------
 
 
 - found 'mariadbd.dmp' (0/5)
 
Trying 'cdb' to get a backtrace
Output from cdb follows. Faulting thread is printed twice,with and without function parameters
Search for STACK_TEXT to see the stack trace of 
the faulting thread. Callstacks of other threads are printed after it.
 
Microsoft (R) Windows Debugger Version 10.0.16299.15 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.
 
 
Loading Dump File [D:\winx64-debug\build\mysql-test\var\1\log\gcol.innodb_virtual_debug-innodb\mysqld.1\data\mariadbd.dmp]
User Mini Dump File: Only registers, stack and portions of memory are available
 
 
Response                         Time (ms)     Location
OK                                             D:\winx64-debug\build\sql\Debug
OK                                             C:\Windows\System32
OK                                             .
 
Response                         Time (ms)     Location
OK                                             D:\winx64-debug\build\sql\Debug
OK                                             C:\Windows\System32
OK                                             .
Deferred                                       cache*C:\cdb_symbols
Symbol search path is: D:\winx64-debug\build\sql\Debug;C:\Windows\System32;.;cache*C:\cdb_symbols
Executable search path is: D:\winx64-debug\build\sql\Debug;C:\Windows\System32;.
Windows 10 Version 17763 MP (4 procs) Free x64
Product: Server, suite: TerminalServer DataCenter SingleUserTS
17763.1.amd64fre.rs5_release.180914-1434
Machine Name:
Debug session time: Tue Jul  7 07:31:06.000 2020 (UTC + 0:00)
System Uptime: not available
Process Uptime: 0 days 0:00:24.000
..................................
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr.
(14c8.18bc): Access violation - code c0000005 (first/second chance not available)
ntdll!NtGetContextThread:
             ret
0:014> cdb: Reading initial command '!sym prompts off; !analyze -v; .ecxr; !for_each_frame dv /t;!uniqstack -p;q'
quiet mode - symbol prompts off
 
 
 
DUMP_CLASS: 2
 
DUMP_QUALIFIER: 400
 
CONTEXT:  (.ecxr)
rax=0000000000000000 rbx=000002ad4930f6e0 rcx=0000000000000000
rdx=0000000000000000 rsi=000002ad4630abc0 rdi=000000f70c74e7a0
rip=00007ffc5e274b4b rsp=000000f70c74e580 rbp=000000f70c74f888
 r8=000002ad46300b78  r9=0000000000000000 r10=00007ffc5fcb442c
r11=000002ad49338458 r12=0000000000000000 r13=000002ad461ee640
r14=0000000000000000 r15=000000000000022c
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202
server!dict_col_get_no:
         mov     eax,dword ptr [rax+8] ds:00000000`00000008=????????
Resetting default scope
 
FAULTING_IP: 
server!dict_col_get_no+b [D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic @ 151]
         mov     eax,dword ptr [rax+8]
 
EXCEPTION_RECORD:  (.exr -1)
ExceptionAddress: 00007ffc5e274b4b (server!dict_col_get_no)
   ExceptionCode: c0000005 (Access violation)
  ExceptionFlags: 00000000
NumberParameters: 2
   Parameter[0]: 0000000000000000
   Parameter[1]: 0000000000000008
Attempt to read from address 0000000000000008
 
BUGCHECK_STR:  FABBDC8A
 
WRONG_SYMBOLS_TIMESTAMP: fabbdc8a
 
WRONG_SYMBOLS_SIZE: 1ed000
 
FAULTING_MODULE: 00007ffc88af0000 ntdll
 
DEBUG_FLR_IMAGE_TIMESTAMP:  fabbdc8a
 
ADDITIONAL_DEBUG_TEXT:  
You can run '.symfix; .reload' to try to fix the symbol path and load symbols. ; Followup set based on attribute [Is_ChosenCrashFollowupThread] from Frame:[0] on thread:[PSEUDO_THREAD]
 
ANALYSIS_SESSION_HOST:  MARIADB-02
 
ANALYSIS_SESSION_TIME:  07-07-2020 07:31:09.0580
 
ANALYSIS_VERSION: 10.0.16299.15 amd64fre
 
STACK_TEXT:  
WRONG_SYMBOLS!WRONG_SYMBOLS
 
 
STACK_COMMAND:  .ecxr ; kb ; ** Pseudo Context ** ManagedPseudo ** Value: 21aea026290 ** ; kb
 
THREAD_SHA1_HASH_MOD_FUNC:  2a06fe893fc51638e55bcc8ee02bcdf6f10cbc26
 
THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  214d5e958d92c59434e5414a89d1e95c2f82d12a
 
THREAD_SHA1_HASH_MOD:  79d1e41e8e0e291e73ec18352c568efa4ef4b5ab
 
SYMBOL_STACK_INDEX:  0
 
FOLLOWUP_NAME:  MachineOwner
 
EXCEPTION_CODE: (NTSTATUS) 0xfabbdc8a - <Unable to get error code text>
 
EXCEPTION_CODE_STR:  FABBDC8A
 
EXCEPTION_STR:  WRONG_SYMBOLS
 
PROCESS_NAME:  ntdll.wrong.symbols.dll
 
IMAGE_NAME:  ntdll.wrong.symbols.dll
 
MODULE_NAME: ntdll_wrong_symbols
 
SYMBOL_NAME:  ntdll_wrong_symbols!FABBDC8A1ED000
 
BUCKET_ID:  WRONG_SYMBOLS_X64_10.0.17763.475_(WinBuild.160101.0800)_TIMESTAMP
 
DEFAULT_BUCKET_ID:  WRONG_SYMBOLS_X64_10.0.17763.475_(WinBuild.160101.0800)_TIMESTAMP
 
PRIMARY_PROBLEM_CLASS:  WRONG_SYMBOLS
 
FAILURE_EXCEPTION_CODE:  FABBDC8A
 
FAILURE_IMAGE_NAME:  ntdll.wrong.symbols.dll
 
BUCKET_ID_IMAGE_STR:  ntdll.wrong.symbols.dll
 
FAILURE_MODULE_NAME:  ntdll_wrong_symbols
 
BUCKET_ID_MODULE_STR:  ntdll_wrong_symbols
 
FAILURE_FUNCTION_NAME:  FABBDC8A1ED000
 
BUCKET_ID_FUNCTION_STR:  FABBDC8A1ED000
 
BUCKET_ID_OFFSET:  0
 
BUCKET_ID_MODTIMEDATESTAMP:  0
 
BUCKET_ID_MODCHECKSUM:  0
 
BUCKET_ID_MODVER_STR:  0.0.0.0
 
BUCKET_ID_PREFIX_STR:  WRONG_SYMBOLS_X64_10.0.17763.475_(WinBuild.160101.0800)_TIMESTAMP
 
FAILURE_PROBLEM_CLASS:  WRONG_SYMBOLS
 
FAILURE_SYMBOL_NAME:  ntdll.wrong.symbols.dll!FABBDC8A1ED000
 
FAILURE_BUCKET_ID:  WRONG_SYMBOLS_X64_10.0.17763.475_(WinBuild.160101.0800)_TIMESTAMP_FABBDC8A_ntdll.wrong.symbols.dll!FABBDC8A1ED000
 
TARGET_TIME:  2020-07-07T07:31:06.000Z
 
OSBUILD:  17763
 
OSSERVICEPACK:  475
 
SERVICEPACK_NUMBER: 0
 
OS_REVISION: 0
 
SUITE_MASK:  400
 
PRODUCT_TYPE:  3
 
OSPLATFORM_TYPE:  x64
 
OSNAME:  Windows 10
 
OSEDITION:  Windows 10 Server TerminalServer DataCenter SingleUserTS
 
OS_LOCALE:  
 
USER_LCID:  0
 
OSBUILD_TIMESTAMP:  1989-09-10 06:58:46
 
BUILDDATESTAMP_STR:  160101.0800
 
BUILDLAB_STR:  WinBuild
 
BUILDOSVER_STR:  10.0.17763.475
 
ANALYSIS_SESSION_ELAPSED_TIME:  fa
 
ANALYSIS_SOURCE:  UM
 
FAILURE_ID_HASH_STRING:  um:wrong_symbols_x64_10.0.17763.475_(winbuild.160101.0800)_timestamp_fabbdc8a_ntdll.wrong.symbols.dll!fabbdc8a1ed000
 
FAILURE_ID_HASH:  {ebc37a73-4e25-5cc8-8a49-f64dea909362}
 
Followup:     MachineOwner
---------
 
rax=0000000000000000 rbx=000002ad4930f6e0 rcx=0000000000000000
rdx=0000000000000000 rsi=000002ad4630abc0 rdi=000000f70c74e7a0
rip=00007ffc5e274b4b rsp=000000f70c74e580 rbp=000000f70c74f888
 r8=000002ad46300b78  r9=0000000000000000 r10=00007ffc5fcb442c
r11=000002ad49338458 r12=0000000000000000 r13=000002ad461ee640
r14=0000000000000000 r15=000000000000022c
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202
server!dict_col_get_no:
         mov     eax,dword ptr [rax+8] ds:00000000`00000008=????????
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!dict_col_get_no [D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic @ 151]
struct dict_col_t * col = 0x00000000`00000000
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!row_upd_changes_ord_field_binary_func [D:\winx64-debug\build\src\storage\innobase\row\row0upd.cc @ 1381]
struct dict_col_t * col = 0x00000000`00000000
struct dfield_t dfield_ext = struct dfield_t
struct dict_field_t * ind_field = 0x000002ad`493162f0
unsigned int64 col_no = 0xcccccccc`cccccccc
unsigned int64 dfield_len = 0
bool is_virtual = true
unsigned char * buf = 0xcccccccc`cccccccc "--- memory read error at address 0xcccccccc`cccccccc ---"
struct upd_field_t * upd_field = 0xcccccccc`cccccccc
struct dict_v_col_t * vcol = 0x00000000`00000000
struct dfield_t * dfield = 0xcccccccc`cccccccc
struct dict_index_t * index = 0x000002ad`493c86f8
struct upd_t * update = 0x000002ad`493ab768
struct que_thr_t * thr = 0x000002ad`46300b78
struct dtuple_t * row = 0x00000000`00000000
struct row_ext_t * ext = 0x00000000`00000000
unsigned int64 flag = 0
unsigned int64 i = 0
unsigned int64 n_unique = 2
struct dict_index_t * clust_index = 0x000002ad`493c79f8
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!row_purge_upd_exist_or_extern_func [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 755]
struct que_thr_t * thr = 0x000002ad`46300b78
struct purge_node_t * node = 0x000002ad`463026d8
unsigned char * undo_rec = 0x000002ad`4630d708 "--- memory read error at address 0x000002ad`4630d708 ---"
struct dict_index_t * index = 0xcccccccc`cccccccc
struct mem_block_info_t * heap = 0x000002ad`49338458
struct mtr_t mtr = struct mtr_t
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!row_purge_record_func [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 1071]
struct purge_node_t * node = 0x000002ad`463026d8
unsigned char * undo_rec = 0x000002ad`4630d708 "--- memory read error at address 0x000002ad`4630d708 ---"
struct que_thr_t * thr = 0x000002ad`46300b78
bool updated_extern = false
bool purged = true
struct dict_index_t * clust_index = 0x000002ad`493c79f8
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!row_purge [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 1109]
bool purged = true
bool updated_extern = false
struct purge_node_t * node = 0x000002ad`463026d8
unsigned char * undo_rec = 0x000002ad`4630d708 "--- memory read error at address 0x000002ad`4630d708 ---"
struct que_thr_t * thr = 0x000002ad`46300b78
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!row_purge_step [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 1160]
struct trx_purge_rec_t purge_rec = struct trx_purge_rec_t
struct que_thr_t * thr = 0x000002ad`46300b78
struct purge_node_t * node = 0x000002ad`463026d8
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!que_thr_step [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 947]
struct que_thr_t * thr = 0x000002ad`46300b78
struct que_thr_t * old_thr = 0x000002ad`46300b78
void * node = 0x000002ad`463026d8
struct trx_t * trx = 0x000002ad`47e88060
unsigned int64 type = 0xd
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!que_run_threads_low [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 1009]
struct que_thr_t * thr = 0x000002ad`46300b78
struct que_thr_t * next_thr = 0x000002ad`46300b78
struct trx_t * trx = 0x000002ad`47e88060
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!que_run_threads [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 1051]
struct que_thr_t * thr = 0x000002ad`46300b78
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!srv_task_execute [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2031]
struct que_thr_t * thr = 0x000002ad`46300b78
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!purge_worker_callback [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2195]
void * __formal = 0x00000000`00000000
void * ctx = 0x000002ad`491c4b20
class THD * thd = 0x000002ad`491bb0c8
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!tpool::task_group::execute [D:\winx64-debug\build\src\tpool\task_group.cc @ 56]
class tpool::task_group * this = 0x00007ffc`61052570
class tpool::task * t = 0x00007ffc`610526d0
class std::unique_lock<std::mutex> lk = class std::unique_lock<std::mutex>
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!tpool::task::execute [D:\winx64-debug\build\src\tpool\task.cc @ 48]
class tpool::task * this = 0x00007ffc`610526d0
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!tpool::thread_pool_win::task_callback [D:\winx64-debug\build\src\tpool\tpool_win.cc @ 264]
struct _TP_CALLBACK_INSTANCE * __formal = 0x000000f7`0c74f888
void * param = 0x000002ad`461ee610
struct tpool::thread_pool_win::task_cache_entry * entry = 0x000002ad`461ee610
class tpool::task * task = 0x00007ffc`610526d0
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
ntdll!RtlNtStatusToDosErrorNoTeb
Unable to enumerate locals, Win32 error 0n318
Private symbols (symbols.pri) are required for locals.
Type ".hh dbgerr005" for details.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
ntdll!RtlReleaseSRWLockExclusive
Unable to enumerate locals, Win32 error 0n318
Private symbols (symbols.pri) are required for locals.
Type ".hh dbgerr005" for details.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
kernel32!BaseThreadInitThunk
Unable to enumerate locals, Win32 error 0n87
Private symbols (symbols.pri) are required for locals.
Type ".hh dbgerr005" for details.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
ntdll!RtlUserThreadStart
Unable to enumerate locals, Win32 error 0n318
Private symbols (symbols.pri) are required for locals.
Type ".hh dbgerr005" for details.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
server!dict_col_get_no [D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic @ 151]
Processing 16 threads, please wait
 
.  0  Id: 14c8.1e0c Suspend: 0 Teb: 000000f7`0b868000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!ZwWaitForMultipleObjects
KERNELBASE!WaitForMultipleObjectsEx
KERNELBASE!WaitForMultipleObjects
server!handle_connections_win(void) [D:\winx64-debug\build\src\sql\handle_connections_win.cc @ 537]
server!win_main(int argc = 0n163, char ** argv = 0x000002ad`4256a380) [D:\winx64-debug\build\src\sql\mysqld.cc @ 5673]
server!mysql_service(void * p = 0x00000000`00000000) [D:\winx64-debug\build\src\sql\mysqld.cc @ 5740]
server!mysqld_main(int argc = 0n23, char ** argv = 0x000002ad`425570c0) [D:\winx64-debug\build\src\sql\mysqld.cc @ 5958]
mariadbd!main(int argc = 0n23, char ** argv = 0x000002ad`425570c0) [D:\winx64-debug\build\src\sql\main.cc @ 26]
(Inline Function) --------`-------- mariadbd!invoke_main [d:\agent\_work\4\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 78]
mariadbd!__scrt_common_main_seh(void) [d:\agent\_work\4\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 288]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
.  1  Id: 14c8.1b64 Suspend: 0 Teb: 000000f7`0b86a000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForWorkViaWorkerFactory
ntdll!RtlReleaseSRWLockExclusive
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
.  3  Id: 14c8.fec Suspend: 0 Teb: 000000f7`0b86e000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!ZwWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
server!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ffc`606592b0, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ffc`60659280, struct timespec * abstime = 0x000000f7`0bdffc48) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
server!inline_mysql_cond_timedwait(struct st_mysql_cond * that = 0x00007ffc`606592b0, struct st_mysql_mutex * mutex = 0x00007ffc`60659280, struct timespec * abstime = 0x000000f7`0bdffc48, char * src_file = 0x00007ffc`603127a8 "--- memory read error at address 0x00007ffc`603127a8 ---", unsigned int src_line = 0x141) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1257]
server!timer_handler(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\mysys\thr_timer.c @ 322]
server!pfs_spawn_thread(void * arg = 0x000002ad`435e7ff8) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 2203]
server!pthread_start(void * p = 0x000002ad`42554b40) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
ucrtbase!thread_start<unsigned int 
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
.  4  Id: 14c8.bfc Suspend: 0 Teb: 000000f7`0b870000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!ZwWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
server!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ffc`60ff9f20, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ffc`60ff9ef0, struct timespec * abstime = 0x000000f7`0beff728) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
server!inline_mysql_cond_timedwait(struct st_mysql_cond * that = 0x00007ffc`60ff9f20, struct st_mysql_mutex * mutex = 0x00007ffc`60ff9ef0, struct timespec * abstime = 0x000000f7`0beff728, char * src_file = 0x00007ffc`605b26a0 "--- memory read error at address 0x00007ffc`605b26a0 ---", unsigned int src_line = 0x74) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1257]
server!my_service_thread_sleep(struct st_ma_service_thread_control * control = 0x00007ffc`6056feb8, unsigned int64 sleep_time = 0x00000006`c088e200) [D:\winx64-debug\build\src\storage\maria\ma_servicethread.c @ 119]
server!ma_checkpoint_background(void * arg = 0x00000000`0000001e) [D:\winx64-debug\build\src\storage\maria\ma_checkpoint.c @ 707]
server!pfs_spawn_thread(void * arg = 0x000002ad`46180728) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 2203]
server!pthread_start(void * p = 0x000002ad`42554d00) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
ucrtbase!thread_start<unsigned int 
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
.  6  Id: 14c8.1e88 Suspend: 0 Teb: 000000f7`0b874000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!ZwWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
server!os_event::timed_wait(unsigned long time_in_ms = 0x2ef) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 251]
server!os_event::wait_time_low(unsigned int64 time_in_usec = 0xb7598, int64 reset_sig_count = 0n2) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 387]
server!os_event_wait_time_low(struct os_event * event = 0x000002ad`461eee38, unsigned int64 time_in_usec = 0xb7598, int64 reset_sig_count = 0n2) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 486]
server!pc_sleep_if_needed(unsigned int64 next_loop_time = 0x69c00843, int64 sig_count = 0n2, unsigned int64 cur_time = 0x69c00554) [D:\winx64-debug\build\src\storage\innobase\buf\buf0flu.cc @ 2308]
server!buf_flush_page_cleaner(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\buf\buf0flu.cc @ 2590]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
.  7  Id: 14c8.16f4 Suspend: 0 Teb: 000000f7`0b878000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!ZwWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableSRW
KERNELBASE!SleepConditionVariableSRW
server!__crtSleepConditionVariableSRW(struct _RTL_CONDITION_VARIABLE * pCond = <Value unavailable error>, struct _RTL_SRWLOCK * pLock = <Value unavailable error>, unsigned long dwMs = <Value unavailable error>, unsigned long flags = <Value unavailable error>) [d:\agent\_work\4\s\src\vctools\crt\github\stl\src\winapisupp.cpp @ 482]
(Inline Function) --------`-------- server!Concurrency::details::stl_condition_variable_win7::wait_for [d:\agent\_work\4\s\src\vctools\crt\github\stl\src\primitives.h @ 179]
server!Concurrency::details::stl_condition_variable_win7::wait(class Concurrency::details::stl_critical_section_interface * lock = <Value unavailable error>) [d:\agent\_work\4\s\src\vctools\crt\github\stl\src\primitives.h @ 173]
server!do_wait(struct _Cnd_internal_imp_t * cond = 0x00007ffc`61052740, struct _Mtx_internal_imp_t * mtx = 0x00007ffc`610526f0, struct xtime * target = 0x00000000`00000000) [d:\agent\_work\4\s\src\vctools\crt\github\stl\src\cond.cpp @ 62]
server!std::condition_variable::wait(class std::unique_lock<std::mutex> * _Lck = 0x000000f7`0c2ff158) [C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.25.28610\include\mutex @ 598]
server!tpool::waitable_task::wait(class std::unique_lock<std::mutex> * lk = 0x000000f7`0c2ff158) [D:\winx64-debug\build\src\tpool\task.cc @ 79]
server!tpool::waitable_task::wait(void) [D:\winx64-debug\build\src\tpool\task.cc @ 85]
server!trx_purge_wait_for_workers_to_complete(void) [D:\winx64-debug\build\src\storage\innobase\trx\trx0purge.cc @ 1258]
server!trx_purge(unsigned int64 n_tasks = 4, bool truncate = false) [D:\winx64-debug\build\src\storage\innobase\trx\trx0purge.cc @ 1305]
server!srv_do_purge(unsigned int64 * n_total_purged = 0x000000f7`0c2ff2d8) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2122]
server!purge_coordinator_callback_low(void) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2212]
server!purge_coordinator_callback(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2242]
server!tpool::task_group::execute(class tpool::task * t = 0x00007ffc`610527a0) [D:\winx64-debug\build\src\tpool\task_group.cc @ 56]
server!tpool::task::execute(void) [D:\winx64-debug\build\src\tpool\task.cc @ 48]
server!tpool::thread_pool_win::task_callback(struct _TP_CALLBACK_INSTANCE * __formal = 0x000000f7`0c2ff5d8, void * param = 0x000002ad`461ee610) [D:\winx64-debug\build\src\tpool\tpool_win.cc @ 264]
ntdll!RtlNtStatusToDosErrorNoTeb
ntdll!RtlReleaseSRWLockExclusive
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 11  Id: 14c8.83c Suspend: 0 Teb: 000000f7`0b882000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!ZwWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
server!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ffc`60609c68, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ffc`60609a90, struct timespec * abstime = 0x00000000`00000000) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
server!pthread_cond_wait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ffc`60609c68, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ffc`60609a90) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 91]
server!inline_mysql_cond_wait(struct st_mysql_cond * that = 0x00007ffc`60609c68, struct st_mysql_mutex * mutex = 0x00007ffc`60609a90, char * src_file = 0x00007ffc`5e949cf0 "D:\winx64-debug\build\src\sql\slave.cc", unsigned int src_line = 0x20d) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1220]
server!handle_slave_background(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\sql\slave.cc @ 526]
server!pfs_spawn_thread(void * arg = 0x000002ad`4924ba78) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 2203]
server!pthread_start(void * p = 0x000002ad`4630ad50) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
ucrtbase!thread_start<unsigned int 
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 12  Id: 14c8.143c Suspend: 0 Teb: 000000f7`0b884000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!ZwWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
server!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x000002ad`4932f638, struct _RTL_CRITICAL_SECTION * mutex = 0x000002ad`4932f608, struct timespec * abstime = 0x000000f7`0b7ecd68) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
server!inline_mysql_cond_timedwait(struct st_mysql_cond * that = 0x000002ad`4932f638, struct st_mysql_mutex * mutex = 0x000002ad`4932f608, struct timespec * abstime = 0x000000f7`0b7ecd68, char * src_file = 0x00007ffc`5eafdbc8 "D:\winx64-debug\build\src\sql\mdl.cc", unsigned int src_line = 0x48f) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1257]
server!MDL_wait::timed_wait(class MDL_context_owner * owner = 0x000002ad`4932f598, struct timespec * abs_timeout = 0x000000f7`0b7ecd68, bool set_status_on_timeout = false, struct PSI_stage_info_v1 * wait_state_name = 0x00007ffc`602f0c30) [D:\winx64-debug\build\src\sql\mdl.cc @ 1166]
server!MDL_context::acquire_lock(class MDL_request * mdl_request = 0x000002ad`49339910, double lock_wait_timeout = 86400) [D:\winx64-debug\build\src\sql\mdl.cc @ 2332]
server!MDL_context::acquire_locks(class I_P_List<MDL_request,I_P_List_adapter<MDL_request,8,16>,I_P_List_counter,I_P_List_no_push_back<MDL_request> > * mdl_requests = 0x000000f7`0b7ecf18, double lock_wait_timeout = 86400) [D:\winx64-debug\build\src\sql\mdl.cc @ 2459]
server!lock_table_names(class THD * thd = 0x000002ad`4932f4e8, struct DDL_options_st * options = 0x000002ad`49333d80, struct TABLE_LIST * tables_start = 0x000002ad`493394c8, struct TABLE_LIST * tables_end = 0x00000000`00000000, unsigned long lock_wait_timeout = 0x15180, unsigned int flags = 0) [D:\winx64-debug\build\src\sql\sql_base.cc @ 4022]
server!lock_table_names(class THD * thd = 0x000002ad`4932f4e8, struct TABLE_LIST * table_list = 0x000002ad`493394c8, struct TABLE_LIST * table_list_end = 0x00000000`00000000, unsigned long lock_wait_timeout = 0x15180, unsigned int flags = 0) [D:\winx64-debug\build\src\sql\sql_base.h @ 254]
server!mysql_rm_table(class THD * thd = 0x000002ad`4932f4e8, struct TABLE_LIST * tables = 0x000002ad`493394c8, bool if_exists = false, bool drop_temporary = false, bool drop_sequence = false, bool dont_log_query = false) [D:\winx64-debug\build\src\sql\sql_table.cc @ 2088]
server!mysql_execute_command(class THD * thd = 0x000002ad`4932f4e8) [D:\winx64-debug\build\src\sql\sql_parse.cc @ 4921]
server!mysql_parse(class THD * thd = 0x000002ad`4932f4e8, char * rawbuf = 0x000002ad`49339410 "--- memory read error at address 0x000002ad`49339410 ---", unsigned int length = 0xc, class Parser_state * parser_state = 0x000000f7`0b7eea30, bool is_com_multi = false, bool is_next_command = false) [D:\winx64-debug\build\src\sql\sql_parse.cc @ 7993]
server!dispatch_command(enum_server_command command = COM_QUERY (0n3), class THD * thd = 0x000002ad`4932f4e8, char * packet = 0x000002ad`492a9719 "--- memory read error at address 0x000002ad`492a9719 ---", unsigned int packet_length = 0xc, bool is_com_multi = false, bool is_next_command = false) [D:\winx64-debug\build\src\sql\sql_parse.cc @ 1869]
server!do_command(class THD * thd = 0x000002ad`4932f4e8) [D:\winx64-debug\build\src\sql\sql_parse.cc @ 1347]
server!threadpool_process_request(class THD * thd = 0x000002ad`4932f4e8) [D:\winx64-debug\build\src\sql\threadpool_common.cc @ 354]
server!tp_callback(struct TP_connection * c = 0x000002ad`4932ee60) [D:\winx64-debug\build\src\sql\threadpool_common.cc @ 194]
server!tp_callback(struct _TP_CALLBACK_INSTANCE * instance = 0x000000f7`0b7ef9d8, void * context = 0x000002ad`4932ee60) [D:\winx64-debug\build\src\sql\threadpool_win.cc @ 343]
server!work_callback(struct _TP_CALLBACK_INSTANCE * instance = 0x000000f7`0b7ef9d8, void * context = 0x000002ad`4932ee60, struct _TP_WORK * work = 0x000002ad`4930ffe0) [D:\winx64-debug\build\src\sql\threadpool_win.cc @ 394]
ntdll!RtlInitializeCriticalSection
ntdll!RtlReleaseSRWLockExclusive
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 14  Id: 14c8.18bc Suspend: 0 Teb: 000000f7`0b888000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtGetContextThread
0xffffffff`00000000
 
Total threads: 16
Duplicate callstacks: 7 (windbg thread #s follow):
2, 5, 8, 9, 10, 13, 15
quit:
 
 - saving 'D:/winx64-debug/build/mysql-test/var/1/log/gcol.innodb_virtual_debug-innodb/' to 'D:/winx64-debug/build/mysql-test/var/log/gcol.innodb_virtual_debug-innodb/'
 
 



 Comments   
Comment by Marko Mäkelä [ 2020-10-28 ]

I think that this should occur on 10.2 as well. I was able to repeat the crash on 10.3 by running the following:

./mtr --parallel=auto --repeat=100 gcol.innodb_virtual_debug{,,,,,,}

It would crash on the 7×81th round:

(gdb) p *index
$1 = {id = 993, heap = 0x7fd2c41b1970, name = {m_name = 0x7fd2c41bc9e0 "idc"}, 
  table = 0x7fd2c4095860, page = 5, merge_threshold = 50, type = 128, 
(gdb) p *index->fields@index->n_fields
$2 = {{col = 0x0, name = {m_name = 0x7fd2c40ddb98 "c"}, prefix_len = 0, 
    fixed_len = 4}, {col = 0x7fd2c40ddaa0, name = {
      m_name = 0x7fd2c40ddbb6 "DB_ROW_ID"}, prefix_len = 0, fixed_len = 6}}

This looks like a race condition between purge and ALTER TABLE. It could be limited to virtual columns.

Comment by Alice Sherepa [ 2021-01-07 ]

on 10.2 f319c4265f0ae18e2703 http://buildbot.askmonty.org/buildbot/builders/winx64-debug/builds/22693/steps/test/logs/stdio

gcol.innodb_virtual_debug 'innodb'       w4 [ fail ]
        Test ended at 2021-01-06 22:42:46
 
CURRENT_TEST: gcol.innodb_virtual_debug
mysqltest: At line 132: query 'ALTER TABLE t ADD INDEX idc(c)' failed with wrong errno 2013: 'Lost connection to MySQL server during query', instead of 1062...
 
The result from queries just before the failure was:
< snip >
ALTER TABLE t FORCE, LOCK=NONE;
ERROR 0A000: LOCK=NONE is not supported. Reason: online rebuild with indexed virtual columns. Try LOCK=SHARED
disconnect con1;
DROP TABLE t;
SET DEBUG_SYNC = 'RESET';
CREATE TABLE t (a INT, b INT, c INT GENERATED ALWAYS AS(a+b), h VARCHAR(10));
INSERT INTO t VALUES (11, 3, DEFAULT, 'mm');
INSERT INTO t VALUES (18, 1, DEFAULT, 'mm');
INSERT INTO t VALUES (28, 1, DEFAULT, 'mm');
INSERT INTO t VALUES (null, null, DEFAULT, 'mm');
CREATE INDEX idx_1 on t(c);
SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug = '+d,create_index_fail';
ALTER TABLE t ADD COLUMN x INT GENERATED ALWAYS AS(a+b), ADD INDEX idx (x),
ADD INDEX idcx (c,x);
ERROR 23000: Duplicate entry '' for key '*UNKNOWN*'
UPDATE t SET a=a+1;
affected rows: 3
info: Rows matched: 4  Changed: 3  Warnings: 0
ALTER TABLE t ADD INDEX idc(c);
 
More results from queries before failure can be found in D:\winx64-debug\build\mysql-test\var\4\log\innodb_virtual_debug.log
 
 
Server [mysqld.1 - pid: 4484, winpid: 4484, exit: 1280] failed during test run
Server log from this test:
----------SERVER LOG START-----------
210106 22:42:45 [ERROR] mysqld got exception 0xc0000005 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
 
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.2.37-MariaDB-debug-log
key_buffer_size=1048576
read_buffer_size=131072
max_used_connections=2
max_threads=65537
thread_count=7
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 4227 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x2801d6ae068
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
mysqld.exe!dict_col_get_no()[dict0dict.ic:150]
mysqld.exe!row_upd_changes_ord_field_binary_func()[row0upd.cc:1711]
mysqld.exe!row_purge_upd_exist_or_extern_func()[row0purge.cc:820]
mysqld.exe!row_purge_record_func()[row0purge.cc:1117]
mysqld.exe!row_purge()[row0purge.cc:1160]
mysqld.exe!row_purge_step()[row0purge.cc:1221]
mysqld.exe!que_thr_step()[que0que.cc:1042]
mysqld.exe!que_run_threads_low()[que0que.cc:1104]
mysqld.exe!que_run_threads()[que0que.cc:1146]
mysqld.exe!srv_task_execute()[srv0srv.cc:2577]
mysqld.exe!srv_worker_thread()[srv0srv.cc:2622]
KERNEL32.DLL!BaseThreadInitThunk()
ntdll.dll!RtlUserThreadStart()
 
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (0x0): 
Connection ID (thread ID): 3
Status: NOT_KILLED
 
Optimizer switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on
 
The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/ contains
information that should help you find out what is causing the crash.
Writing a core file at D:\winx64-debug\build\mysql-test\var\4\mysqld.1\data\
Minidump written to D:\winx64-debug\build\mysql-test\var\4\mysqld.1\data\mysqld.dmp
----------SERVER LOG END-------------
 
 
 - found 'mysqld.dmp' (0/5)
 
Trying 'cdb' to get a backtrace
Output from cdb follows. Faulting thread is printed twice,with and without function parameters
Search for STACK_TEXT to see the stack trace of 
the faulting thread. Callstacks of other threads are printed after it.
 
Microsoft (R) Windows Debugger Version 10.0.16299.15 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.
 
 
Loading Dump File [D:\winx64-debug\build\mysql-test\var\4\log\gcol.innodb_virtual_debug-innodb\mysqld.1\data\mysqld.dmp]
User Mini Dump File: Only registers, stack and portions of memory are available
 
 
Response                         Time (ms)     Location
OK                                             D:\winx64-debug\build\sql\Debug
OK                                             C:\Windows\System32
OK                                             .
 
Response                         Time (ms)     Location
OK                                             D:\winx64-debug\build\sql\Debug
OK                                             C:\Windows\System32
OK                                             .
Deferred                                       cache*C:\cdb_symbols
Symbol search path is: D:\winx64-debug\build\sql\Debug;C:\Windows\System32;.;cache*C:\cdb_symbols
Executable search path is: D:\winx64-debug\build\sql\Debug;C:\Windows\System32;.
Windows 10 Version 17763 MP (4 procs) Free x64
Product: Server, suite: TerminalServer DataCenter SingleUserTS
17763.1.amd64fre.rs5_release.180914-1434
Machine Name:
Debug session time: Wed Jan  6 22:42:45.000 2021 (UTC + 0:00)
System Uptime: not available
Process Uptime: 0 days 0:00:10.000
............................
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr.
(1cc8.1438): Access violation - code c0000005 (first/second chance not available)
ntdll!NtGetContextThread:
             ret
0:019> cdb: Reading initial command '!sym prompts off; !analyze -v; .ecxr; !for_each_frame dv /t;!uniqstack -p;q'
quiet mode - symbol prompts off
 
GetUrlPageData2 (WinHttp) failed: 12002.
 
DUMP_CLASS: 2
 
DUMP_QUALIFIER: 400
 
CONTEXT:  (.ecxr)
rax=0000000000000000 rbx=0000000000000000 rcx=0000000000000000
rdx=0000000000000000 rsi=0000000000000000 rdi=00000082916ff3d0
rip=00007ff7d224a3ab rsp=00000082916ff1b0 rbp=0000000000000000
 r8=000002801d667400  r9=0000000000000000 r10=00007ff7d373cacc
r11=000002801f4dada0 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202
mysqld!dict_col_get_no:
         mov     eax,dword ptr [rax+8] ds:00000000`00000008=????????
Resetting default scope
 
FAULTING_IP: 
mysqld!dict_col_get_no+b [D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic @ 150]
         mov     eax,dword ptr [rax+8]
 
EXCEPTION_RECORD:  (.exr -1)
ExceptionAddress: 00007ff7d224a3ab (mysqld!dict_col_get_no)
   ExceptionCode: c0000005 (Access violation)
  ExceptionFlags: 00000000
NumberParameters: 2
   Parameter[0]: 0000000000000000
   Parameter[1]: 0000000000000008
Attempt to read from address 0000000000000008
 
DEFAULT_BUCKET_ID:  NULL_CLASS_PTR_READ
 
PROCESS_NAME:  mysqld.exe
 
ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%p referenced memory at 0x%p. The memory could not be %s.
 
EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%p referenced memory at 0x%p. The memory could not be %s.
 
EXCEPTION_CODE_STR:  c0000005
 
EXCEPTION_PARAMETER1:  0000000000000000
 
EXCEPTION_PARAMETER2:  0000000000000008
 
FOLLOWUP_IP: 
mysqld!dict_col_get_no+b [D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic @ 150]
         mov     eax,dword ptr [rax+8]
 
READ_ADDRESS:  0000000000000008 
 
WATSON_BKT_PROCSTAMP:  5ff63a54
 
WATSON_BKT_PROCVER:  10.2.37.0
 
WATSON_BKT_MODULE:  mysqld.exe
 
WATSON_BKT_MODSTAMP:  5ff63a54
 
WATSON_BKT_MODOFFSET:  99a3ab
 
WATSON_BKT_MODVER:  10.2.37.0
 
BUILD_VERSION_STRING:  10.0.17763.475 (WinBuild.160101.0800)
 
MODLIST_WITH_TSCHKSUM_HASH:  51dea83bae2ec4e980a481491ef733b27f4b4003
 
MODLIST_SHA1_HASH:  b2eb87c2399dfa0b48d7a00a97cc9559d8d26284
 
DUMP_FLAGS:  0
 
DUMP_TYPE:  2
 
ANALYSIS_SESSION_HOST:  MARIADB-02
 
ANALYSIS_SESSION_TIME:  01-06-2021 22:42:47.0184
 
ANALYSIS_VERSION: 10.0.16299.15 amd64fre
 
THREAD_ATTRIBUTES: 
PROBLEM_CLASSES: 
 
    ID:     [0n301]
    Type:   [@ACCESS_VIOLATION]
    Class:  Addendum
    Scope:  BUCKET_ID
    Name:   Omit
    Data:   Omit
    PID:    [Unspecified]
    TID:    [0x1438]
    Frame:  [0] : mysqld!dict_col_get_no
 
    ID:     [0n273]
    Type:   [INVALID_POINTER_READ]
    Class:  Primary
    Scope:  BUCKET_ID
    Name:   Add
    Data:   Omit
    PID:    [Unspecified]
    TID:    [0x1438]
    Frame:  [0] : mysqld!dict_col_get_no
 
    ID:     [0n298]
    Type:   [NULL_CLASS_PTR_READ]
    Class:  Primary
    Scope:  DEFAULT_BUCKET_ID (Failure Bucket ID prefix)
            BUCKET_ID
    Name:   Add
    Data:   Omit
    PID:    [0x1cc8]
    TID:    [0x1438]
    Frame:  [0] : mysqld!dict_col_get_no
 
BUGCHECK_STR:  APPLICATION_FAULT_NULL_CLASS_PTR_READ_INVALID_POINTER_READ
 
PRIMARY_PROBLEM_CLASS:  APPLICATION_FAULT
 
LAST_CONTROL_TRANSFER:  from 00007ff7d224f76f to 00007ff7d224a3ab
 
STACK_TEXT:  
mysqld!dict_col_get_no
mysqld!row_upd_changes_ord_field_binary_func
mysqld!row_purge_upd_exist_or_extern_func
mysqld!row_purge_record_func
mysqld!row_purge
mysqld!row_purge_step
mysqld!que_thr_step
mysqld!que_run_threads_low
mysqld!que_run_threads
mysqld!srv_task_execute
mysqld!srv_worker_thread
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
 
THREAD_SHA1_HASH_MOD_FUNC:  acf4fe5d6d9c4747b80d07e344e48a22a34308bc
 
THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  053f099bd6d7ec281813be597d7c1b0b704220f2
 
THREAD_SHA1_HASH_MOD:  d91e72f92f9207b2e784372546761e6886de5d2b
 
FAULT_INSTR_CODE:  2508408b
 
FAULTING_SOURCE_LINE:  D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic
 
FAULTING_SOURCE_FILE:  D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic
 
FAULTING_SOURCE_LINE_NUMBER:  150
 
FAULTING_SOURCE_CODE:  
   146: dict_col_get_no(
   147: /*============*/
   148: 	const dict_col_t*	col)	/*!< in: column */
   149: {
>  150: 	return(col->ind);
   151: }
   152: 
   153: /*********************************************************************//**
   154: Gets the column position in the clustered index. */
   155: UNIV_INLINE
 
 
SYMBOL_STACK_INDEX:  0
 
SYMBOL_NAME:  mysqld!dict_col_get_no+b
 
FOLLOWUP_NAME:  MachineOwner
 
MODULE_NAME: mysqld
 
IMAGE_NAME:  mysqld.exe
 
DEBUG_FLR_IMAGE_TIMESTAMP:  5ff63a54
 
STACK_COMMAND:  ~19s ; .ecxr ; kb
 
FAILURE_BUCKET_ID:  NULL_CLASS_PTR_READ_c0000005_mysqld.exe!dict_col_get_no
 
BUCKET_ID:  APPLICATION_FAULT_NULL_CLASS_PTR_READ_INVALID_POINTER_READ_mysqld!dict_col_get_no+b
 
FAILURE_EXCEPTION_CODE:  c0000005
 
FAILURE_IMAGE_NAME:  mysqld.exe
 
BUCKET_ID_IMAGE_STR:  mysqld.exe
 
FAILURE_MODULE_NAME:  mysqld
 
BUCKET_ID_MODULE_STR:  mysqld
 
FAILURE_FUNCTION_NAME:  dict_col_get_no
 
BUCKET_ID_FUNCTION_STR:  dict_col_get_no
 
BUCKET_ID_OFFSET:  b
 
BUCKET_ID_MODTIMEDATESTAMP:  5ff63a54
 
BUCKET_ID_MODCHECKSUM:  0
 
BUCKET_ID_MODVER_STR:  10.2.37.0
 
BUCKET_ID_PREFIX_STR:  APPLICATION_FAULT_NULL_CLASS_PTR_READ_INVALID_POINTER_READ_
 
FAILURE_PROBLEM_CLASS:  APPLICATION_FAULT
 
FAILURE_SYMBOL_NAME:  mysqld.exe!dict_col_get_no
 
WATSON_STAGEONE_URL:  http://watson.microsoft.com/StageOne/mysqld.exe/10.2.37.0/5ff63a54/mysqld.exe/10.2.37.0/5ff63a54/c0000005/0099a3ab.htm?Retriage=1
 
TARGET_TIME:  2021-01-06T22:42:45.000Z
 
OSBUILD:  17763
 
OSSERVICEPACK:  475
 
SERVICEPACK_NUMBER: 0
 
OS_REVISION: 0
 
SUITE_MASK:  400
 
PRODUCT_TYPE:  3
 
OSPLATFORM_TYPE:  x64
 
OSNAME:  Windows 10
 
OSEDITION:  Windows 10 Server TerminalServer DataCenter SingleUserTS
 
OS_LOCALE:  
 
USER_LCID:  0
 
OSBUILD_TIMESTAMP:  1989-09-10 06:58:46
 
BUILDDATESTAMP_STR:  160101.0800
 
BUILDLAB_STR:  WinBuild
 
BUILDOSVER_STR:  10.0.17763.475
 
ANALYSIS_SESSION_ELAPSED_TIME:  5b33
 
ANALYSIS_SOURCE:  UM
 
FAILURE_ID_HASH_STRING:  um:null_class_ptr_read_c0000005_mysqld.exe!dict_col_get_no
 
FAILURE_ID_HASH:  {61414c57-4e08-6946-2e30-90cf0381520c}
 
Followup:     MachineOwner
---------
 
rax=0000000000000000 rbx=0000000000000000 rcx=0000000000000000
rdx=0000000000000000 rsi=0000000000000000 rdi=00000082916ff3d0
rip=00007ff7d224a3ab rsp=00000082916ff1b0 rbp=0000000000000000
 r8=000002801d667400  r9=0000000000000000 r10=00007ff7d373cacc
r11=000002801f4dada0 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202
mysqld!dict_col_get_no:
         mov     eax,dword ptr [rax+8] ds:00000000`00000008=????????
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!dict_col_get_no [D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic @ 150]
struct dict_col_t * col = 0x00000000`00000000
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!row_upd_changes_ord_field_binary_func [D:\winx64-debug\build\src\storage\innobase\row\row0upd.cc @ 1711]
struct dict_col_t * col = 0x00000000`00000000
struct dfield_t dfield_ext = struct dfield_t
struct dict_field_t * ind_field = 0x00000280`1d5856a8
unsigned int64 col_no = 0xcccccccc`cccccccc
unsigned int64 dfield_len = 0
bool is_virtual = true
unsigned char * buf = 0xcccccccc`cccccccc "--- memory read error at address 0xcccccccc`cccccccc ---"
struct upd_field_t * upd_field = 0xcccccccc`cccccccc
struct dict_v_col_t * vcol = 0x00000000`00000000
struct dfield_t * dfield = 0xcccccccc`cccccccc
struct dict_index_t * index = 0x00000280`1d5764d0
struct upd_t * update = 0x00000280`1f4fbc40
struct que_thr_t * thr = 0x00000280`1d667400
struct dtuple_t * row = 0x00000000`00000000
struct row_ext_t * ext = 0x00000000`00000000
unsigned int64 flag = 0
unsigned int64 i = 0
unsigned int64 n_unique = 2
struct dict_index_t * clust_index = 0x00000280`1d575c90
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!row_purge_upd_exist_or_extern_func [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 820]
struct que_thr_t * thr = 0x00000280`1d667400
struct purge_node_t * node = 0x00000280`1d6674c0
unsigned char * undo_rec = 0x00000280`1d6677e0 "--- memory read error at address 0x00000280`1d6677e0 ---"
struct mem_block_info_t * heap = 0x00000280`1f4dada0
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!row_purge_record_func [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 1117]
struct purge_node_t * node = 0x00000280`1d6674c0
unsigned char * undo_rec = 0x00000280`1d6677e0 "--- memory read error at address 0x00000280`1d6677e0 ---"
struct que_thr_t * thr = 0x00000280`1d667400
bool updated_extern = false
bool purged = true
struct dict_index_t * clust_index = 0x00000280`1d575c90
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!row_purge [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 1160]
bool purged = true
bool updated_extern = false
struct purge_node_t * node = 0x00000280`1d6674c0
unsigned char * undo_rec = 0x00000280`1d6677e0 "--- memory read error at address 0x00000280`1d6677e0 ---"
struct que_thr_t * thr = 0x00000280`1d667400
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!row_purge_step [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 1221]
struct trx_purge_rec_t * purge_rec = 0x00000280`1f6ca160
struct que_thr_t * thr = 0x00000280`1d667400
struct purge_node_t * node = 0x00000280`1d6674c0
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!que_thr_step [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 1042]
struct que_thr_t * thr = 0x00000280`1d667400
struct que_thr_t * old_thr = 0x00000280`1d667400
void * node = 0x00000280`1d6674c0
struct trx_t * trx = 0x00000280`1d875048
unsigned int64 type = 0xd
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!que_run_threads_low [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 1104]
struct que_thr_t * thr = 0x00000280`1d667400
struct que_thr_t * next_thr = 0x00000280`1d667400
struct trx_t * trx = 0x00000280`1d875048
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!que_run_threads [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 1146]
struct que_thr_t * thr = 0x00000280`1d667400
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!srv_task_execute [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2577]
struct srv_slot_t * slot = 0x00007ff7`d40b6ca8
struct que_thr_t * thr = 0x00000280`1d667400
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!srv_worker_thread [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2622]
void * arg = 0x00000000`00000000
struct srv_slot_t * slot = 0x00007ff7`d40b6ca8
class THD * thd = 0x00000280`1d6ae068
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
kernel32!BaseThreadInitThunk
Unable to enumerate locals, Win32 error 0n87
Private symbols (symbols.pri) are required for locals.
Type ".hh dbgerr005" for details.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
ntdll!RtlUserThreadStart
Unable to enumerate locals, Win32 error 0n87
Private symbols (symbols.pri) are required for locals.
Type ".hh dbgerr005" for details.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
mysqld!dict_col_get_no [D:\winx64-debug\build\src\storage\innobase\include\dict0dict.ic @ 150]
Processing 32 threads, please wait
 
.  0  Id: 1cc8.20b4 Suspend: 0 Teb: 00000082`9022d000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ff7`d4057d48, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ff7`d40575c0, struct timespec * abstime = 0x00000000`00000000) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
mysqld!pthread_cond_wait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ff7`d4057d48, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ff7`d40575c0) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 91]
mysqld!inline_mysql_cond_wait(struct st_mysql_cond * that = 0x00007ff7`d4057d48, struct st_mysql_mutex * mutex = 0x00007ff7`d40575c0, char * src_file = 0x00007ff7`d27f2738 "D:\winx64-debug\build\src\sql\mysqld.cc", unsigned int src_line = 0x163e) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1145]
mysqld!handle_connections_methods(void) [D:\winx64-debug\build\src\sql\mysqld.cc @ 5694]
mysqld!win_main(int argc = 0n145, char ** argv = 0x00000280`189760b8) [D:\winx64-debug\build\src\sql\mysqld.cc @ 6191]
mysqld!mysql_service(void * p = 0x00000000`00000000) [D:\winx64-debug\build\src\sql\mysqld.cc @ 6250]
mysqld!mysqld_main(int argc = 0n22, char ** argv = 0x00000280`189521a0) [D:\winx64-debug\build\src\sql\mysqld.cc @ 6443]
mysqld!main(int argc = 0n22, char ** argv = 0x00000280`189521a0) [D:\winx64-debug\build\src\sql\main.cc @ 26]
(Inline Function) --------`-------- mysqld!invoke_main [d:\agent\_work\63\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 78]
mysqld!__scrt_common_main_seh(void) [d:\agent\_work\63\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 288]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
.  1  Id: 1cc8.1938 Suspend: 0 Teb: 00000082`9022f000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForWorkViaWorkerFactory
ntdll!TppWorkerThread
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
.  3  Id: 1cc8.a14 Suspend: 0 Teb: 00000082`90233000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ff7`d48e1fe0, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ff7`d48e1fb0, struct timespec * abstime = 0x00000082`906ffba8) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
mysqld!inline_mysql_cond_timedwait(struct st_mysql_cond * that = 0x00007ff7`d48e1fe0, struct st_mysql_mutex * mutex = 0x00007ff7`d48e1fb0, struct timespec * abstime = 0x00000082`906ffba8, char * src_file = 0x00007ff7`d3e6d648 "--- memory read error at address 0x00007ff7`d3e6d648 ---", unsigned int src_line = 0x124) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1182]
mysqld!timer_handler(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\mysys\thr_timer.c @ 293]
mysqld!pfs_spawn_thread(void * arg = 0x00000280`18a37c18) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 1871]
mysqld!pthread_start(void * p = 0x00000280`18964ed0) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
(Inline Function) --------`-------- mysqld!invoke_thread_procedure [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 91]
mysqld!thread_start<unsigned int (void * parameter = 0x00000280`18eca710) [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 115]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
.  4  Id: 1cc8.23f0 Suspend: 0 Teb: 00000082`90235000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtRemoveIoCompletion
KERNELBASE!GetQueuedCompletionStatus
mysqld!os_aio_windows_handler(unsigned int64 segment = 0, unsigned int64 pos = 0, struct fil_node_t ** m1 = 0x00000082`907ffb18, void ** m2 = 0x00000082`907ffb68, class IORequest * type = 0x00000082`907ffb38) [D:\winx64-debug\build\src\storage\innobase\os\os0file.cc @ 6609]
mysqld!os_aio_handler(unsigned int64 segment = 0, struct fil_node_t ** m1 = 0x00000082`907ffb18, void ** m2 = 0x00000082`907ffb68, class IORequest * request = 0x00000082`907ffb38) [D:\winx64-debug\build\src\storage\innobase\os\os0file.cc @ 5780]
mysqld!fil_aio_wait(unsigned int64 segment = 0) [D:\winx64-debug\build\src\storage\innobase\fil\fil0fil.cc @ 5116]
mysqld!io_handler_thread(void * arg = 0x00007ff7`d40c41f0) [D:\winx64-debug\build\src\storage\innobase\srv\srv0start.cc @ 333]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 10  Id: 1cc8.1904 Suspend: 0 Teb: 00000082`90241000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::timed_wait(unsigned long time_in_ms = 0x8f) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 251]
mysqld!os_event::wait_time_low(unsigned int64 time_in_usec = 0x22e98, int64 reset_sig_count = 0n2) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 387]
mysqld!os_event_wait_time_low(struct os_event * event = 0x00000280`1d3bef80, unsigned int64 time_in_usec = 0x22e98, int64 reset_sig_count = 0n2) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 491]
mysqld!pc_sleep_if_needed(unsigned int64 next_loop_time = 0x00000001`b0858eaa, int64 sig_count = 0n2, unsigned int64 cur_time = 0x00000001`b0858e1b) [D:\winx64-debug\build\src\storage\innobase\buf\buf0flu.cc @ 2682]
mysqld!buf_flush_page_cleaner_coordinator(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\buf\buf0flu.cc @ 3148]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 11  Id: 1cc8.1928 Suspend: 0 Teb: 00000082`90247000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::timed_wait(unsigned long time_in_ms = 0x3e8) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 251]
mysqld!os_event::wait_time_low(unsigned int64 time_in_usec = 0xf4240, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 387]
mysqld!os_event_wait_time_low(struct os_event * event = 0x00000280`1d520850, unsigned int64 time_in_usec = 0xf4240, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 491]
mysqld!lock_wait_timeout_thread(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\lock\lock0wait.cc @ 526]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 12  Id: 1cc8.1af4 Suspend: 0 Teb: 00000082`90249000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::timed_wait(unsigned long time_in_ms = 0x3e8) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 251]
mysqld!os_event::wait_time_low(unsigned int64 time_in_usec = 0xf4240, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 387]
mysqld!os_event_wait_time_low(struct os_event * event = 0x00000280`1d3bf570, unsigned int64 time_in_usec = 0xf4240, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 491]
mysqld!srv_error_monitor_thread(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 1917]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 13  Id: 1cc8.89c Suspend: 0 Teb: 00000082`9024b000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::timed_wait(unsigned long time_in_ms = 0x1388) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 251]
mysqld!os_event::wait_time_low(unsigned int64 time_in_usec = 0x4c4b40, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 387]
mysqld!os_event_wait_time_low(struct os_event * event = 0x00000280`1d3bee90, unsigned int64 time_in_usec = 0x4c4b40, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 491]
mysqld!srv_monitor_thread(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 1753]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 14  Id: 1cc8.22cc Suspend: 0 Teb: 00000082`9024d000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtDelayExecution
KERNELBASE!SleepEx
mysqld!os_thread_sleep(unsigned int64 tm = 0xf4240) [D:\winx64-debug\build\src\storage\innobase\os\os0thread.cc @ 240]
mysqld!srv_master_sleep(void) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2423]
mysqld!srv_master_thread(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2464]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 15  Id: 1cc8.167c Suspend: 0 Teb: 00000082`9024f000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::timed_wait(unsigned long time_in_ms = 0x2710) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 251]
mysqld!os_event::wait_time_low(unsigned int64 time_in_usec = 0x989680, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 387]
mysqld!os_event_wait_time_low(struct os_event * event = 0x00000280`1d519b40, unsigned int64 time_in_usec = 0x989680, int64 reset_sig_count = 0n0) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 491]
mysqld!dict_stats_thread(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\dict\dict0stats_bg.cc @ 478]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 16  Id: 1cc8.660 Suspend: 0 Teb: 00000082`90251000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::timed_wait(unsigned long time_in_ms = 0x1388) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 251]
mysqld!os_event::wait_time_low(unsigned int64 time_in_usec = 0x4c4b40, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 387]
mysqld!os_event_wait_time_low(struct os_event * event = 0x00000280`1d6468a0, unsigned int64 time_in_usec = 0x4c4b40, int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 491]
mysqld!ib_wqueue_timedwait(struct ib_wqueue_t * wq = 0x00000280`1d39bc30, unsigned int64 wait_in_usecs = 0x4c4b40) [D:\winx64-debug\build\src\storage\innobase\ut\ut0wqueue.cc @ 154]
mysqld!fts_optimize_thread(void * arg = 0x00000280`1d39bc30) [D:\winx64-debug\build\src\storage\innobase\fts\fts0opt.cc @ 2828]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 17  Id: 1cc8.1c0 Suspend: 0 Teb: 00000082`90253000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtYieldExecution
KERNELBASE!SwitchToThread
mysqld!os_thread_yield(void) [D:\winx64-debug\build\src\storage\innobase\os\os0thread.cc @ 214]
mysqld!trx_purge_wait_for_workers_to_complete(class purge_sys_t * purge_sys = 0x00000280`1d666c50) [D:\winx64-debug\build\src\storage\innobase\trx\trx0purge.cc @ 1657]
mysqld!trx_purge(unsigned int64 n_purge_threads = 4, unsigned int64 batch_size = 0x12c, bool truncate = false, struct srv_slot_t * slot = 0x00007ff7`d40b6c38) [D:\winx64-debug\build\src\storage\innobase\trx\trx0purge.cc @ 1748]
mysqld!srv_do_purge(unsigned int64 * n_total_purged = 0x00000082`914ffdb8, struct srv_slot_t * slot = 0x00007ff7`d40b6c38) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2731]
mysqld!srv_purge_coordinator_thread(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2879]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 18  Id: 1cc8.1f58 Suspend: 0 Teb: 00000082`90255000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::wait(void) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 151]
mysqld!os_event::wait_low(int64 reset_sig_count = 0n1248) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 329]
mysqld!os_event_wait_low(struct os_event * event = 0x00000280`1d3bf250, int64 reset_sig_count = 0n0) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 508]
mysqld!srv_resume_thread(struct srv_slot_t * slot = 0x00007ff7`d40b6c70, int64 sig_count = 0n0, bool wait = true, unsigned int64 timeout_usec = 0) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 943]
mysqld!srv_worker_thread(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2622]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 19  Id: 1cc8.1438 Suspend: 0 Teb: 00000082`90257000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtGetContextThread
0xffffffff`00000000
 
. 20  Id: 1cc8.360 Suspend: 0 Teb: 00000082`90259000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::wait(void) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 151]
mysqld!os_event::wait_low(int64 reset_sig_count = 0n176) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 329]
mysqld!os_event_wait_low(struct os_event * event = 0x00000280`1d5197d0, int64 reset_sig_count = 0n176) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 508]
mysqld!sync_array_wait_event(struct sync_array_t * arr = 0x00000280`1d374210, struct sync_cell_t ** cell = 0x00000082`917ff3f8) [D:\winx64-debug\build\src\storage\innobase\sync\sync0arr.cc @ 473]
mysqld!rw_lock_s_lock_spin(struct rw_lock_t * lock = 0x00007ff7`d407d650, unsigned int64 pass = 0, char * file_name = 0x00007ff7`d373d518 "D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc", unsigned int line = 0x3d6) [D:\winx64-debug\build\src\storage\innobase\sync\sync0rw.cc @ 375]
mysqld!rw_lock_s_lock_func(struct rw_lock_t * lock = 0x00007ff7`d407d650, unsigned int64 pass = 0, char * file_name = 0x00007ff7`d373d518 "D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc", unsigned int line = 0x3d6) [D:\winx64-debug\build\src\storage\innobase\include\sync0rw.ic @ 292]
mysqld!pfs_rw_lock_s_lock_func(struct rw_lock_t * lock = 0x00007ff7`d407d650, unsigned int64 pass = 0, char * file_name = 0x00007ff7`d373d518 "D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc", unsigned int line = 0x3d6) [D:\winx64-debug\build\src\storage\innobase\include\sync0rw.ic @ 633]
mysqld!row_purge_parse_undo_rec(struct purge_node_t * node = 0x00000280`1d639690, unsigned char * undo_rec = 0x00000280`1d667970 "--- memory read error at address 0x00000280`1d667970 ---", bool * updated_extern = 0x00000082`917ff624, struct que_thr_t * thr = 0x00000280`1d667680) [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 984]
mysqld!row_purge(struct purge_node_t * node = 0x00000280`1d639690, unsigned char * undo_rec = 0x00000280`1d667970 "--- memory read error at address 0x00000280`1d667970 ---", struct que_thr_t * thr = 0x00000280`1d667680) [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 1157]
mysqld!row_purge_step(struct que_thr_t * thr = 0x00000280`1d667680) [D:\winx64-debug\build\src\storage\innobase\row\row0purge.cc @ 1221]
mysqld!que_thr_step(struct que_thr_t * thr = 0x00000280`1d667680) [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 1042]
mysqld!que_run_threads_low(struct que_thr_t * thr = 0x00000280`1d667680) [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 1104]
mysqld!que_run_threads(struct que_thr_t * thr = 0x00000280`1d667680) [D:\winx64-debug\build\src\storage\innobase\que\que0que.cc @ 1146]
mysqld!srv_task_execute(struct srv_slot_t * slot = 0x00007ff7`d40b6ce0) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2577]
mysqld!srv_worker_thread(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\srv\srv0srv.cc @ 2622]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 21  Id: 1cc8.15d0 Suspend: 0 Teb: 00000082`9025b000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::wait(void) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 151]
mysqld!os_event::wait_low(int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 329]
mysqld!os_event_wait_low(struct os_event * event = 0x00000280`1d3bee40, int64 reset_sig_count = 0n0) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 508]
mysqld!buf_dump_thread(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\buf\buf0dump.cc @ 808]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 22  Id: 1cc8.a68 Suspend: 0 Teb: 00000082`9025d000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtDelayExecution
KERNELBASE!SleepEx
mysqld!os_thread_sleep(unsigned int64 tm = 0xf4240) [D:\winx64-debug\build\src\storage\innobase\os\os0thread.cc @ 240]
mysqld!btr_defragment_thread(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\btr\btr0defragment.cc @ 711]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 23  Id: 1cc8.1b34 Suspend: 0 Teb: 00000082`9025f000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::wait(void) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 151]
mysqld!os_event::wait_low(int64 reset_sig_count = 0n1) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 329]
mysqld!os_event_wait_low(struct os_event * event = 0x00000280`1d3beee0, int64 reset_sig_count = 0n0) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 508]
mysqld!buf_resize_thread(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\buf\buf0buf.cc @ 3110]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 24  Id: 1cc8.16a4 Suspend: 0 Teb: 00000082`90261000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x00000082`91bffa98, struct _RTL_CRITICAL_SECTION * mutex = 0x00000082`91bffa48, struct timespec * abstime = 0x00000000`00000000) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
mysqld!pthread_cond_wait(struct _RTL_CONDITION_VARIABLE * cond = 0x00000082`91bffa98, struct _RTL_CRITICAL_SECTION * mutex = 0x00000082`91bffa48) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 91]
mysqld!inline_mysql_cond_wait(struct st_mysql_cond * that = 0x00000082`91bffa98, struct st_mysql_mutex * mutex = 0x00000082`91bffa48, char * src_file = 0x00007ff7`d2b9de30 "D:\winx64-debug\build\src\storage\innobase\handler\ha_innodb.cc", unsigned int src_line = 0x15e) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1156]
mysqld!thd_destructor_proxy(void * __formal = 0x00000000`00000000) [D:\winx64-debug\build\src\storage\innobase\handler\ha_innodb.cc @ 350]
mysqld!pfs_spawn_thread(void * arg = 0x00000280`1d584048) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 1871]
mysqld!pthread_start(void * p = 0x00000280`1d5fa420) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
(Inline Function) --------`-------- mysqld!invoke_thread_procedure [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 91]
mysqld!thread_start<unsigned int (void * parameter = 0x00000280`1d5f7e70) [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 115]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 25  Id: 1cc8.20a8 Suspend: 0 Teb: 00000082`90263000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ff7`d48d1488, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ff7`d48d1458, struct timespec * abstime = 0x00000082`91cff978) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
mysqld!inline_mysql_cond_timedwait(struct st_mysql_cond * that = 0x00007ff7`d48d1488, struct st_mysql_mutex * mutex = 0x00007ff7`d48d1458, struct timespec * abstime = 0x00000082`91cff978, char * src_file = 0x00007ff7`d3e412c0 "--- memory read error at address 0x00007ff7`d3e412c0 ---", unsigned int src_line = 0x74) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1182]
mysqld!my_service_thread_sleep(struct st_ma_service_thread_control * control = 0x00007ff7`d3e16798, unsigned int64 sleep_time = 0x00000006`c088e200) [D:\winx64-debug\build\src\storage\maria\ma_servicethread.c @ 119]
mysqld!ma_checkpoint_background(void * arg = 0x00000000`0000001e) [D:\winx64-debug\build\src\storage\maria\ma_checkpoint.c @ 709]
mysqld!pfs_spawn_thread(void * arg = 0x00000280`1d678f38) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 1871]
mysqld!pthread_start(void * p = 0x00000280`1d5f97c0) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
(Inline Function) --------`-------- mysqld!invoke_thread_procedure [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 91]
mysqld!thread_start<unsigned int (void * parameter = 0x00000280`1d5f8020) [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 115]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 26  Id: 1cc8.d94 Suspend: 0 Teb: 00000082`90265000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!os_event::wait(void) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 151]
mysqld!os_event::wait_low(int64 reset_sig_count = 0n51) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 329]
mysqld!os_event_wait_low(struct os_event * event = 0x00000280`1d518bf0, int64 reset_sig_count = 0n51) [D:\winx64-debug\build\src\storage\innobase\os\os0event.cc @ 508]
mysqld!sync_array_wait_event(struct sync_array_t * arr = 0x00000280`1d374210, struct sync_cell_t ** cell = 0x00000082`91df93c8) [D:\winx64-debug\build\src\storage\innobase\sync\sync0arr.cc @ 473]
mysqld!rw_lock_x_lock_wait_func(struct rw_lock_t * lock = 0x00007ff7`d407d650, unsigned int64 pass = 0, int64 threshold = 0n0, char * file_name = 0x00007ff7`d34131e0 "D:\winx64-debug\build\src\storage\innobase\handler\handler0alter.cc", unsigned int line = 0x197e) [D:\winx64-debug\build\src\storage\innobase\sync\sync0rw.cc @ 457]
mysqld!rw_lock_x_lock_low(struct rw_lock_t * lock = 0x00007ff7`d407d650, unsigned int64 pass = 0, char * file_name = 0x00007ff7`d34131e0 "D:\winx64-debug\build\src\storage\innobase\handler\handler0alter.cc", unsigned int line = 0x197e) [D:\winx64-debug\build\src\storage\innobase\sync\sync0rw.cc @ 513]
mysqld!rw_lock_x_lock_func(struct rw_lock_t * lock = 0x00007ff7`d407d650, unsigned int64 pass = 0, char * file_name = 0x00007ff7`d34131e0 "D:\winx64-debug\build\src\storage\innobase\handler\handler0alter.cc", unsigned int line = 0x197e) [D:\winx64-debug\build\src\storage\innobase\sync\sync0rw.cc @ 660]
mysqld!pfs_rw_lock_x_lock_func(struct rw_lock_t * lock = 0x00007ff7`d407d650, unsigned int64 pass = 0, char * file_name = 0x00007ff7`d34131e0 "D:\winx64-debug\build\src\storage\innobase\handler\handler0alter.cc", unsigned int line = 0x197e) [D:\winx64-debug\build\src\storage\innobase\include\sync0rw.ic @ 540]
mysqld!row_mysql_lock_data_dictionary_func(struct trx_t * trx = 0x00000280`1d8771e8, char * file = 0x00007ff7`d34131e0 "D:\winx64-debug\build\src\storage\innobase\handler\handler0alter.cc", unsigned int line = 0x197e) [D:\winx64-debug\build\src\storage\innobase\row\row0mysql.cc @ 2180]
mysqld!rollback_inplace_alter_table(class Alter_inplace_info * ha_alter_info = 0x00000082`91dfc5c0, struct TABLE * table = 0x00000280`1f533b88, struct row_prebuilt_t * prebuilt = 0x00000280`1f6c8ef0) [D:\winx64-debug\build\src\storage\innobase\handler\handler0alter.cc @ 6528]
mysqld!ha_innobase::commit_inplace_alter_table(struct TABLE * altered_table = 0x00000280`1f535b38, class Alter_inplace_info * ha_alter_info = 0x00000082`91dfc5c0, bool commit = false) [D:\winx64-debug\build\src\storage\innobase\handler\handler0alter.cc @ 8226]
mysqld!handler::ha_commit_inplace_alter_table(struct TABLE * altered_table = 0x00000280`1f535b38, class Alter_inplace_info * ha_alter_info = 0x00000082`91dfc5c0, bool commit = false) [D:\winx64-debug\build\src\sql\handler.cc @ 4386]
mysqld!mysql_inplace_alter_table(class THD * thd = 0x00000280`1d748168, struct TABLE_LIST * table_list = 0x00000280`1d74d098, struct TABLE * table = 0x00000280`1f533b88, struct TABLE * altered_table = 0x00000280`1f535b38, class Alter_inplace_info * ha_alter_info = 0x00000082`91dfc5c0, enum_alter_inplace_result inplace_supported = HA_ALTER_INPLACE_NO_LOCK_AFTER_PREPARE (0n5), class MDL_request * target_mdl_request = 0x00000082`91dfbbf0, class Alter_table_ctx * alter_ctx = 0x00000082`91dfb120) [D:\winx64-debug\build\src\sql\sql_table.cc @ 7577]
mysqld!mysql_alter_table(class THD * thd = 0x00000280`1d748168, char * new_db = 0x00000280`1d74d698 "--- memory read error at address 0x00000280`1d74d698 ---", char * new_name = 0x00000000`00000000 "", struct HA_CREATE_INFO * create_info = 0x00000082`91dfc7d0, struct TABLE_LIST * table_list = 0x00000280`1d74d098, class Alter_info * alter_info = 0x00000082`91dfc910, unsigned int order_num = 0, struct st_order * order = 0x00000000`00000000, bool ignore = false) [D:\winx64-debug\build\src\sql\sql_table.cc @ 9622]
mysqld!Sql_cmd_alter_table::execute(class THD * thd = 0x00000280`1d748168) [D:\winx64-debug\build\src\sql\sql_alter.cc @ 333]
mysqld!mysql_execute_command(class THD * thd = 0x00000280`1d748168) [D:\winx64-debug\build\src\sql\sql_parse.cc @ 5993]
mysqld!mysql_parse(class THD * thd = 0x00000280`1d748168, char * rawbuf = 0x00000280`1d74cfc0 "--- memory read error at address 0x00000280`1d74cfc0 ---", unsigned int length = 0x1e, class Parser_state * parser_state = 0x00000082`91dfec20, bool is_com_multi = false, bool is_next_command = false) [D:\winx64-debug\build\src\sql\sql_parse.cc @ 7762]
mysqld!dispatch_command(enum_server_command command = COM_QUERY (0n3), class THD * thd = 0x00000280`1d748168, char * packet = 0x00000280`1f57cb09 "--- memory read error at address 0x00000280`1f57cb09 ---", unsigned int packet_length = 0x1e, bool is_com_multi = false, bool is_next_command = false) [D:\winx64-debug\build\src\sql\sql_parse.cc @ 1830]
mysqld!do_command(class THD * thd = 0x00000280`1d748168) [D:\winx64-debug\build\src\sql\sql_parse.cc @ 1381]
mysqld!threadpool_process_request(class THD * thd = 0x00000280`1d748168) [D:\winx64-debug\build\src\sql\threadpool_common.cc @ 375]
mysqld!tp_callback(struct TP_connection * c = 0x00000280`1d616580) [D:\winx64-debug\build\src\sql\threadpool_common.cc @ 191]
mysqld!tp_callback(struct _TP_CALLBACK_INSTANCE * instance = 0x00000082`91dffa98, void * context = 0x00000280`1d616580) [D:\winx64-debug\build\src\sql\threadpool_win.cc @ 379]
mysqld!work_callback(struct _TP_CALLBACK_INSTANCE * instance = 0x00000082`91dffa98, void * context = 0x00000280`1d616580, struct _TP_WORK * work = 0x00000280`1f4a0770) [D:\winx64-debug\build\src\sql\threadpool_win.cc @ 453]
ntdll!TppWorkpExecuteCallback
ntdll!TppWorkerThread
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 27  Id: 1cc8.237c Suspend: 0 Teb: 00000082`90267000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForSingleObject
KERNELBASE!WaitForSingleObjectEx
mysqld!handle_shutdown(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\sql\mysqld.cc @ 3720]
mysqld!pfs_spawn_thread(void * arg = 0x00000280`1d678f38) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 1871]
mysqld!pthread_start(void * p = 0x00000280`1d373b70) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
(Inline Function) --------`-------- mysqld!invoke_thread_procedure [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 91]
mysqld!thread_start<unsigned int (void * parameter = 0x00000280`1f3a92b0) [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 115]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 28  Id: 1cc8.105c Suspend: 0 Teb: 00000082`90269000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForAlertByThreadId
ntdll!RtlSleepConditionVariableCS
KERNELBASE!SleepConditionVariableCS
mysqld!pthread_cond_timedwait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ff7`d40577b8, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ff7`d4057530, struct timespec * abstime = 0x00000000`00000000) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 82]
mysqld!pthread_cond_wait(struct _RTL_CONDITION_VARIABLE * cond = 0x00007ff7`d40577b8, struct _RTL_CRITICAL_SECTION * mutex = 0x00007ff7`d4057530) [D:\winx64-debug\build\src\mysys\my_wincond.c @ 91]
mysqld!inline_mysql_cond_wait(struct st_mysql_cond * that = 0x00007ff7`d40577b8, struct st_mysql_mutex * mutex = 0x00007ff7`d4057530, char * src_file = 0x00007ff7`d2a4ca10 "D:\winx64-debug\build\src\sql\slave.cc", unsigned int src_line = 0x151) [D:\winx64-debug\build\src\include\mysql\psi\mysql_thread.h @ 1145]
mysqld!handle_slave_background(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\sql\slave.cc @ 338]
mysqld!pfs_spawn_thread(void * arg = 0x00000280`1f39abb8) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 1871]
mysqld!pthread_start(void * p = 0x00000280`1d373c10) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
(Inline Function) --------`-------- mysqld!invoke_thread_procedure [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 91]
mysqld!thread_start<unsigned int (void * parameter = 0x00000280`1f3a9610) [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 115]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
. 29  Id: 1cc8.4a4 Suspend: 0 Teb: 00000082`9026b000 Unfrozen
      Priority: 0  Priority class: 32
 
ntdll!NtWaitForSingleObject
mswsock!WSPStartup
mswsock!WSPStartup
ws2_32!select
mysqld!handle_connections_sockets(void) [D:\winx64-debug\build\src\sql\mysqld.cc @ 6721]
mysqld!handle_connections_sockets_thread(void * arg = 0x00000000`00000000) [D:\winx64-debug\build\src\sql\mysqld.cc @ 6919]
mysqld!pfs_spawn_thread(void * arg = 0x00000280`1f39abb8) [D:\winx64-debug\build\src\storage\perfschema\pfs.cc @ 1871]
mysqld!pthread_start(void * p = 0x00000280`1d5f9c20) [D:\winx64-debug\build\src\mysys\my_winthread.c @ 61]
(Inline Function) --------`-------- mysqld!invoke_thread_procedure [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 91]
mysqld!thread_start<unsigned int (void * parameter = 0x00000280`1f3a9670) [minkernel\crts\ucrt\src\appcrt\startup\thread.cpp @ 115]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
 
Total threads: 32
Duplicate callstacks: 8 (windbg thread #s follow):
2, 5, 6, 7, 8, 9, 30, 31
quit:
 

Comment by Alice Sherepa [ 2021-01-07 ]

http://buildbot.askmonty.org/buildbot/builders/kvm-bintar-centos6-amd64-debug/builds/3313/steps/mtr/logs/stdio

gcol.innodb_virtual_debug 'innodb'       w4 [ fail ]
        Test ended at 2021-01-04 13:36:35
 
CURRENT_TEST: gcol.innodb_virtual_debug
mysqltest: At line 132: query 'ALTER TABLE t ADD INDEX idc(c)' failed with wrong errno 2013: 'Lost connection to MySQL server during query', instead of 1062...
 
The result from queries just before the failure was:
< snip >
ALTER TABLE t FORCE, LOCK=NONE;
ERROR 0A000: LOCK=NONE is not supported. Reason: online rebuild with indexed virtual columns. Try LOCK=SHARED
disconnect con1;
DROP TABLE t;
SET DEBUG_SYNC = 'RESET';
CREATE TABLE t (a INT, b INT, c INT GENERATED ALWAYS AS(a+b), h VARCHAR(10));
INSERT INTO t VALUES (11, 3, DEFAULT, 'mm');
INSERT INTO t VALUES (18, 1, DEFAULT, 'mm');
INSERT INTO t VALUES (28, 1, DEFAULT, 'mm');
INSERT INTO t VALUES (null, null, DEFAULT, 'mm');
CREATE INDEX idx_1 on t(c);
SET @saved_dbug = @@SESSION.debug_dbug;
SET debug_dbug = '+d,create_index_fail';
ALTER TABLE t ADD COLUMN x INT GENERATED ALWAYS AS(a+b), ADD INDEX idx (x),
ADD INDEX idcx (c,x);
ERROR 23000: Duplicate entry '' for key '*UNKNOWN*'
UPDATE t SET a=a+1;
affected rows: 3
info: Rows matched: 4  Changed: 3  Warnings: 0
ALTER TABLE t ADD INDEX idc(c);
 
More results from queries before failure can be found in /usr/local/mariadb-10.2.37-linux-x86_64/mysql-test/var/4/log/innodb_virtual_debug.log
 
 
Server [mysqld.1 - pid: 27158, winpid: 27158, exit: 256] failed during test run
Server log from this test:
----------SERVER LOG START-----------
210104 13:36:34 [ERROR] mysqld got signal 11 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
 
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.2.37-MariaDB-debug-log
key_buffer_size=1048576
read_buffer_size=131072
max_used_connections=2
max_threads=153
thread_count=8
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 63104 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x7f7844000af0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0x7f78797fad98 thread_stack 0x49000
----------SERVER LOG END-------------
 
 
 - found 'core.27159' (0/0)
 
Trying 'dbx' to get a backtrace
 
Trying 'gdb' to get a backtrace from coredump /usr/local/mariadb-10.2.37-linux-x86_64/mysql-test/var/4/log/gcol.innodb_virtual_debug-innodb/mysqld.1/data/core.27159
Core generated by '/usr/local/mariadb-10.2.37-linux-x86_64/bin/mysqld'
Output from gdb follows. The first stack trace is from the failing thread.
The following stack traces are from all threads (so the failing one is
duplicated).
--------------------------
[New Thread 27179]
[New Thread 27183]
[New Thread 27162]
[New Thread 27181]
[New Thread 27166]
[New Thread 27182]
[New Thread 27170]
[New Thread 27186]
[New Thread 27174]
[New Thread 27161]
[New Thread 27178]
[New Thread 27163]
[New Thread 27159]
[New Thread 27165]
[New Thread 27177]
[New Thread 27189]
[New Thread 27171]
[New Thread 27175]
[New Thread 27173]
[New Thread 27172]
[New Thread 27167]
[New Thread 27164]
[New Thread 27176]
[New Thread 27160]
[New Thread 27185]
[New Thread 27187]
[New Thread 27184]
[New Thread 27180]
[Thread debugging using libthread_db enabled]
Core was generated by `/usr/local/mariadb-10.2.37-linux-x86_64/bin/mysqld --defaults-group-suffix=.1 -'.
Program terminated with signal 11, Segmentation fault.
#0  row_upd_changes_ord_field_binary_func(dict_index_t*, upd_t const*, que_thr_t const*, dtuple_t const*, row_ext_t const*, unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/include/dict0dict.ic:150
150	/home/buildbot/buildbot/build/storage/innobase/include/dict0dict.ic: No such file or directory.
	in /home/buildbot/buildbot/build/storage/innobase/include/dict0dict.ic
#0  row_upd_changes_ord_field_binary_func(dict_index_t*, upd_t const*, que_thr_t const*, dtuple_t const*, row_ext_t const*, unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/include/dict0dict.ic:150
#1  0x00007f789a94d33c in row_purge_upd_exist_or_extern_func(que_thr_t const*, purge_node_t*, unsigned char*) () at /home/buildbot/buildbot/build/storage/innobase/row/row0purge.cc:820
#2  0x00007f789a94da7f in row_purge_step(que_thr_t*) () at /home/buildbot/buildbot/build/storage/innobase/row/row0purge.cc:1116
#3  0x00007f789a8e6542 in que_run_threads(que_thr_t*) () at /home/buildbot/buildbot/build/storage/innobase/que/que0que.cc:1042
#4  0x00007f789a99473d in srv_worker_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:2575
#5  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 28 (Thread 0x7f78735fe700 (LWP 27180)):
#0  0x00007f7899af43dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b8e0e in os_event::wait_low(long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:158
#2  0x00007f789a8b91ac in os_event_wait_low(os_event*, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:507
#3  0x00007f789aa6487a in buf_dump_thread () at /home/buildbot/buildbot/build/storage/innobase/buf/buf0dump.cc:806
#4  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 27 (Thread 0x7f786bfff700 (LWP 27184)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789ace84c6 in safe_cond_timedwait ()
#2  0x00007f789ab9df2d in my_service_thread_sleep ()
#3  0x00007f789ab96108 in ma_checkpoint_background ()
#4  0x00007f789ac67176 in pfs_spawn_thread () at /home/buildbot/buildbot/build/storage/perfschema/pfs.cc:1869
#5  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 26 (Thread 0x7f7892a02700 (LWP 27187)):
#0  0x00007f7899af43dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b8e0e in os_event::wait_low(long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:158
#2  0x00007f789a8b91ac in os_event_wait_low(os_event*, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:507
#3  0x00007f789a9a2e0e in sync_array_wait_event(sync_array_t*, sync_cell_t*&) () at /home/buildbot/buildbot/build/storage/innobase/sync/sync0arr.cc:471
#4  0x00007f789a9a4ddc in rw_lock_x_lock_func(rw_lock_t*, unsigned long, char const*, unsigned int) () at /home/buildbot/buildbot/build/storage/innobase/sync/sync0rw.cc:455
#5  0x00007f789a92ca38 in row_mysql_lock_data_dictionary_func(trx_t*, char const*, unsigned int) () at /home/buildbot/buildbot/build/storage/innobase/include/sync0rw.ic:538
#6  0x00007f789a849eb8 in rollback_inplace_alter_table(Alter_inplace_info*, TABLE const*, row_prebuilt_t*) () at /home/buildbot/buildbot/build/storage/innobase/handler/handler0alter.cc:6526
#7  0x00007f789a845c44 in ha_innobase::commit_inplace_alter_table(TABLE*, Alter_inplace_info*, bool) () at /home/buildbot/buildbot/build/storage/innobase/handler/handler0alter.cc:8227
#8  0x00007f789a65ec2a in handler::ha_commit_inplace_alter_table(TABLE*, Alter_inplace_info*, bool) () at /home/buildbot/buildbot/build/sql/handler.cc:4385
#9  0x00007f789a51643c in mysql_inplace_alter_table(THD*, TABLE_LIST*, TABLE*, TABLE*, Alter_inplace_info*, enum_alter_inplace_result, MDL_request*, Alter_table_ctx*) () at /home/buildbot/buildbot/build/sql/sql_table.cc:7575
#10 0x00007f789a51e496 in mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) () at /home/buildbot/buildbot/build/sql/sql_table.cc:9624
#11 0x00007f789a579b8d in Sql_cmd_alter_table::execute(THD*) () at /home/buildbot/buildbot/build/sql/sql_alter.cc:339
#12 0x00007f789a48895f in mysql_execute_command(THD*) () at /home/buildbot/buildbot/build/sql/sql_parse.cc:5993
#13 0x00007f789a48a007 in mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) () at /home/buildbot/buildbot/build/sql/sql_parse.cc:7762
#14 0x00007f789a48bf53 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) () at /home/buildbot/buildbot/build/sql/sql_parse.cc:1828
#15 0x00007f789a48e179 in do_command(THD*) () at /home/buildbot/buildbot/build/sql/sql_parse.cc:1382
#16 0x00007f789a576614 in do_handle_one_connection(CONNECT*) () at /home/buildbot/buildbot/build/sql/sql_connect.cc:1336
#17 0x00007f789a57674d in handle_one_connection () at /home/buildbot/buildbot/build/sql/sql_connect.cc:1241
#18 0x00007f789ac67176 in pfs_spawn_thread () at /home/buildbot/buildbot/build/storage/perfschema/pfs.cc:1869
#19 0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#20 0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 25 (Thread 0x7f7892a96700 (LWP 27185)):
#0  0x00007f7899af8245 in sigwait () from /lib64/libpthread.so.0
#1  0x00007f789a3c9145 in signal_hand () at /home/buildbot/buildbot/build/sql/mysqld.cc:3559
#2  0x00007f789ac67176 in pfs_spawn_thread () at /home/buildbot/buildbot/build/storage/perfschema/pfs.cc:1869
#3  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 24 (Thread 0x7f78944d3700 (LWP 27160)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789ace84c6 in safe_cond_timedwait ()
#2  0x00007f789ace8b7a in timer_handler ()
#3  0x00007f789ac67176 in pfs_spawn_thread () at /home/buildbot/buildbot/build/storage/perfschema/pfs.cc:1869
#4  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 23 (Thread 0x7f787a1fc700 (LWP 27176)):
#0  start_mutex_wait_v1 () at /home/buildbot/buildbot/build/storage/perfschema/pfs.cc:2258
#1  0x00007f789a99220b in srv_get_task_queue_length() () at /home/buildbot/buildbot/build/storage/innobase/include/ib0mutex.h:753
#2  0x00007f789a9bf722 in trx_purge(unsigned long, unsigned long, bool, srv_slot_t*) () at /home/buildbot/buildbot/build/storage/innobase/trx/trx0purge.cc:1652
#3  0x00007f789a99555e in srv_purge_coordinator_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:2737
#4  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 22 (Thread 0x7f7890a75700 (LWP 27164)):
#0  0x00007f78998e8614 in ?? () from /lib64/libaio.so.1
#1  0x00007f789a8b3272 in LinuxAIOHandler::collect() () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:1936
#2  0x00007f789a8b5c6a in LinuxAIOHandler::poll(fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2097
#3  0x00007f789a8b6478 in os_aio_handler(unsigned long, fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2151
#4  0x00007f789aad4448 in fil_aio_wait(unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/fil/fil0fil.cc:5116
#5  0x00007f789a998bcf in io_handler_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0start.cc:332
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 21 (Thread 0x7f788abfd700 (LWP 27167)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b91d1 in os_event::timed_wait(timespec const*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:275
#2  0x00007f789a8b93f3 in os_event::wait_time_low(unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:385
#3  0x00007f789a8b946f in os_event_wait_time_low(os_event*, unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:490
#4  0x00007f789aa6d88f in buf_flush_page_cleaner_coordinator () at /home/buildbot/buildbot/build/storage/innobase/buf/buf0flu.cc:2683
#5  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 20 (Thread 0x7f787bfff700 (LWP 27172)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b91d1 in os_event::timed_wait(timespec const*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:275
#2  0x00007f789a8b93f3 in os_event::wait_time_low(unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:385
#3  0x00007f789a8b946f in os_event_wait_time_low(os_event*, unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:490
#4  0x00007f789a997dc7 in srv_monitor_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:1751
#5  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 19 (Thread 0x7f7889ff7700 (LWP 27173)):
#0  0x00007f7899af7ccd in nanosleep () from /lib64/libpthread.so.0
#1  0x00007f789a8b96b8 in os_thread_sleep(unsigned long) ()
#2  0x00007f789a992ce9 in srv_master_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:2422
#3  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 18 (Thread 0x7f787abfd700 (LWP 27175)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b91d1 in os_event::timed_wait(timespec const*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:275
#2  0x00007f789a8b93f3 in os_event::wait_time_low(unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:385
#3  0x00007f789a8b946f in os_event_wait_time_low(os_event*, unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:490
#4  0x00007f789a9f5cc4 in ib_wqueue_timedwait(ib_wqueue_t*, unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/ut/ut0wqueue.cc:156
#5  0x00007f789ab1f8f8 in fts_optimize_thread(void*) () at /home/buildbot/buildbot/build/storage/innobase/fts/fts0opt.cc:2829
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 17 (Thread 0x7f7888bf5700 (LWP 27171)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b91d1 in os_event::timed_wait(timespec const*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:275
#2  0x00007f789a8b93f3 in os_event::wait_time_low(unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:385
#3  0x00007f789a8b946f in os_event_wait_time_low(os_event*, unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:490
#4  0x00007f789a991a0c in srv_error_monitor_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:1915
#5  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 16 (Thread 0x7f78929b8700 (LWP 27189)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789ace84c6 in safe_cond_timedwait ()
#2  0x00007f789a3ca4d2 in one_thread_per_connection_end(THD*, bool) () at /home/buildbot/buildbot/build/include/mysql/psi/mysql_thread.h:1182
#3  0x00007f789a5766e3 in do_handle_one_connection(CONNECT*) () at /home/buildbot/buildbot/build/sql/sql_connect.cc:1355
#4  0x00007f789a57674d in handle_one_connection () at /home/buildbot/buildbot/build/sql/sql_connect.cc:1241
#5  0x00007f789ac67176 in pfs_spawn_thread () at /home/buildbot/buildbot/build/storage/perfschema/pfs.cc:1869
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 15 (Thread 0x7f78797fb700 (LWP 27177)):
#0  0x00007f78989ffd91 in ptmalloc_unlock_all () from /lib64/libc.so.6
#1  0x00007f7898a363a6 in fork () from /lib64/libc.so.6
#2  0x00007f789acf8960 in start_addr2line_fork ()
#3  0x00007f789acf8aae in my_addr_resolve ()
#4  0x00007f789ace3337 in my_print_stacktrace ()
#5  0x00007f789a654ea5 in handle_fatal_signal ()
#6  <signal handler called>
#7  row_upd_changes_ord_field_binary_func(dict_index_t*, upd_t const*, que_thr_t const*, dtuple_t const*, row_ext_t const*, unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/include/dict0dict.ic:150
#8  0x00007f789a94d33c in row_purge_upd_exist_or_extern_func(que_thr_t const*, purge_node_t*, unsigned char*) () at /home/buildbot/buildbot/build/storage/innobase/row/row0purge.cc:820
#9  0x00007f789a94da7f in row_purge_step(que_thr_t*) () at /home/buildbot/buildbot/build/storage/innobase/row/row0purge.cc:1116
#10 0x00007f789a8e6542 in que_run_threads(que_thr_t*) () at /home/buildbot/buildbot/build/storage/innobase/que/que0que.cc:1042
#11 0x00007f789a99473d in srv_worker_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:2575
#12 0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#13 0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 14 (Thread 0x7f788bfff700 (LWP 27165)):
#0  0x00007f78998e8614 in ?? () from /lib64/libaio.so.1
#1  0x00007f789a8b3272 in LinuxAIOHandler::collect() () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:1936
#2  0x00007f789a8b5c6a in LinuxAIOHandler::poll(fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2097
#3  0x00007f789a8b6478 in os_aio_handler(unsigned long, fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2151
#4  0x00007f789aad4448 in fil_aio_wait(unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/fil/fil0fil.cc:5116
#5  0x00007f789a998bcf in io_handler_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0start.cc:332
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 13 (Thread 0x7f7899f17720 (LWP 27159)):
#0  0x00007f7898a67613 in poll () from /lib64/libc.so.6
#1  0x00007f789a3d27e5 in handle_connections_sockets() () at /home/buildbot/buildbot/build/sql/mysqld.cc:6718
#2  0x00007f789a3d46bb in mysqld_main(int, char**) () at /home/buildbot/buildbot/build/sql/mysqld.cc:6186
#3  0x00007f789a3c5dee in main ()
 
Thread 12 (Thread 0x7f7891476700 (LWP 27163)):
#0  0x00007f78998e8614 in ?? () from /lib64/libaio.so.1
#1  0x00007f789a8b3272 in LinuxAIOHandler::collect() () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:1936
#2  0x00007f789a8b5c6a in LinuxAIOHandler::poll(fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2097
#3  0x00007f789a8b6478 in os_aio_handler(unsigned long, fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2151
#4  0x00007f789aad4448 in fil_aio_wait(unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/fil/fil0fil.cc:5116
#5  0x00007f789a998bcf in io_handler_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0start.cc:332
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 11 (Thread 0x7f7878dfa700 (LWP 27178)):
#0  0x00007f7899af6f57 in __pthread_disable_asynccancel () from /lib64/libpthread.so.0
#1  0x00007f7899af43e4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#2  0x00007f789a8b8e0e in os_event::wait_low(long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:158
#3  0x00007f789a8b91ac in os_event_wait_low(os_event*, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:507
#4  0x00007f789a992870 in srv_resume_thread(srv_slot_t*, long, bool, unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:940
#5  0x00007f789a9943cb in srv_worker_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:2620
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 10 (Thread 0x7f7892878700 (LWP 27161)):
#0  0x00007f78998e8614 in ?? () from /lib64/libaio.so.1
#1  0x00007f789a8b3272 in LinuxAIOHandler::collect() () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:1936
#2  0x00007f789a8b5c6a in LinuxAIOHandler::poll(fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2097
#3  0x00007f789a8b6478 in os_aio_handler(unsigned long, fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2151
#4  0x00007f789aad4448 in fil_aio_wait(unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/fil/fil0fil.cc:5116
#5  0x00007f789a998bcf in io_handler_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0start.cc:332
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 9 (Thread 0x7f787b5fe700 (LWP 27174)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b91d1 in os_event::timed_wait(timespec const*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:275
#2  0x00007f789a8b93f3 in os_event::wait_time_low(unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:385
#3  0x00007f789a8b946f in os_event_wait_time_low(os_event*, unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:490
#4  0x00007f789aac2934 in dict_stats_thread () at /home/buildbot/buildbot/build/storage/innobase/dict/dict0stats_bg.cc:475
#5  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 8 (Thread 0x7f7892a4c700 (LWP 27186)):
#0  0x00007f7899af43dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789ace82d4 in safe_cond_wait ()
#2  0x00007f789a3ea247 in handle_slave_background () at /home/buildbot/buildbot/build/include/mysql/psi/mysql_thread.h:1145
#3  0x00007f789ac67176 in pfs_spawn_thread () at /home/buildbot/buildbot/build/storage/perfschema/pfs.cc:1869
#4  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 7 (Thread 0x7f78895f6700 (LWP 27170)):
#0  0x00007f7899af475b in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b91d1 in os_event::timed_wait(timespec const*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:275
#2  0x00007f789a8b93f3 in os_event::wait_time_low(unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:385
#3  0x00007f789a8b946f in os_event_wait_time_low(os_event*, unsigned long, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:490
#4  0x00007f789a8823a2 in lock_wait_timeout_thread () at /home/buildbot/buildbot/build/storage/innobase/lock/lock0wait.cc:525
#5  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 6 (Thread 0x7f78721fc700 (LWP 27182)):
#0  0x00007f7899af43dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789a8b8e0e in os_event::wait_low(long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:158
#2  0x00007f789a8b91ac in os_event_wait_low(os_event*, long) () at /home/buildbot/buildbot/build/storage/innobase/os/os0event.cc:507
#3  0x00007f789aa5c20d in buf_resize_thread () at /home/buildbot/buildbot/build/storage/innobase/buf/buf0buf.cc:3109
#4  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 5 (Thread 0x7f788b5fe700 (LWP 27166)):
#0  0x00007f78998e8614 in ?? () from /lib64/libaio.so.1
#1  0x00007f789a8b3272 in LinuxAIOHandler::collect() () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:1936
#2  0x00007f789a8b5c6a in LinuxAIOHandler::poll(fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2097
#3  0x00007f789a8b6478 in os_aio_handler(unsigned long, fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2151
#4  0x00007f789aad4448 in fil_aio_wait(unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/fil/fil0fil.cc:5116
#5  0x00007f789a998bcf in io_handler_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0start.cc:332
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 4 (Thread 0x7f7872bfd700 (LWP 27181)):
#0  0x00007f7899af7ccd in nanosleep () from /lib64/libpthread.so.0
#1  0x00007f789a8b96b8 in os_thread_sleep(unsigned long) ()
#2  0x00007f789aa421d0 in btr_defragment_thread () at /home/buildbot/buildbot/build/storage/innobase/btr/btr0defragment.cc:710
#3  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 3 (Thread 0x7f7891e77700 (LWP 27162)):
#0  0x00007f78998e8614 in ?? () from /lib64/libaio.so.1
#1  0x00007f789a8b3272 in LinuxAIOHandler::collect() () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:1936
#2  0x00007f789a8b5c6a in LinuxAIOHandler::poll(fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2097
#3  0x00007f789a8b6478 in os_aio_handler(unsigned long, fil_node_t**, void**, IORequest*) () at /home/buildbot/buildbot/build/storage/innobase/os/os0file.cc:2151
#4  0x00007f789aad4448 in fil_aio_wait(unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/fil/fil0fil.cc:5116
#5  0x00007f789a998bcf in io_handler_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0start.cc:332
#6  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#7  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 2 (Thread 0x7f78717fb700 (LWP 27183)):
#0  0x00007f7899af43dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f789ace82d4 in safe_cond_wait ()
#2  0x00007f789a808d52 in thd_destructor_proxy () at /home/buildbot/buildbot/build/include/mysql/psi/mysql_thread.h:1156
#3  0x00007f789ac67176 in pfs_spawn_thread () at /home/buildbot/buildbot/build/storage/perfschema/pfs.cc:1869
#4  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
Thread 1 (Thread 0x7f7873fff700 (LWP 27179)):
#0  row_upd_changes_ord_field_binary_func(dict_index_t*, upd_t const*, que_thr_t const*, dtuple_t const*, row_ext_t const*, unsigned long) () at /home/buildbot/buildbot/build/storage/innobase/include/dict0dict.ic:150
#1  0x00007f789a94d33c in row_purge_upd_exist_or_extern_func(que_thr_t const*, purge_node_t*, unsigned char*) () at /home/buildbot/buildbot/build/storage/innobase/row/row0purge.cc:820
#2  0x00007f789a94da7f in row_purge_step(que_thr_t*) () at /home/buildbot/buildbot/build/storage/innobase/row/row0purge.cc:1116
#3  0x00007f789a8e6542 in que_run_threads(que_thr_t*) () at /home/buildbot/buildbot/build/storage/innobase/que/que0que.cc:1042
#4  0x00007f789a99473d in srv_worker_thread () at /home/buildbot/buildbot/build/storage/innobase/srv/srv0srv.cc:2575
#5  0x00007f7899af07f1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f7898a70ccd in clone () from /lib64/libc.so.6
 
 

Comment by Marko Mäkelä [ 2023-08-23 ]

On 10.6, the last failure of this test was some weeks before the mariadb-10.6.0 release:

10.6 51630d595d49c57946d71ab5cb06a552

gcol.innodb_virtual_debug 'innodb'       w2 [ fail ]
        Test ended at 2021-04-09 20:40:40
 
CURRENT_TEST: gcol.innodb_virtual_debug
mysqltest: At line 142: query 'DROP TABLE t' failed: 2013: Lost connection to MySQL server during query
include/dict0dict.ic:151(dict_col_get_no(dict_col_t const*))[0x8106a9e2]
row/row0upd.cc:1365(row_upd_changes_ord_field_binary_func(dict_index_t*, upd_t const*, que_thr_t const*, dtuple_t const*, row_ext_t const*, unsigned int))[0x81070a1f]
row/row0purge.cc:769(row_purge_upd_exist_or_extern_func(que_thr_t const*, purge_node_t*, unsigned char*))[0x81041073]
row/row0purge.cc:1088(row_purge_record_func)[0x81042174]
row/row0purge.cc:1127(row_purge(purge_node_t*, unsigned char*, que_thr_t*))[0x81042311]
row/row0purge.cc:1176(row_purge_step(que_thr_t*))[0x810424c7]
que/que0que.cc:653(que_thr_step(que_thr_t*))[0x80fae7e6]
que/que0que.cc:709(que_run_threads_low(que_thr_t*))[0x80faea69]
que/que0que.cc:729(que_run_threads(que_thr_t*))[0x80faeb8a]
srv/srv0srv.cc:1787(srv_task_execute())[0x81086542]
srv/srv0srv.cc:1950(purge_worker_callback(void*))[0x81086dc9]

The last failure for 10.5 is a little older:

10.5 8cbada87f05be0dac0c53b1bc4c305af

gcol.innodb_virtual_debug 'innodb'       w3 [ fail ]
        Test ended at 2021-03-16 15:07:27
 
CURRENT_TEST: gcol.innodb_virtual_debug
mysqltest: At line 142: query 'DROP TABLE t' failed: 2013: Lost connection to MySQL server during query

with a similar stack trace.

Curiously, this 10.5 failure occurred long after MDEV-16678 had been fixed.

I think that on 10.6, any race conditions between DDL and purge must have been fixed by MDEV-25506 if they were not already fixed earlier.

This test still fails on 10.4:

10.4 e146940ab3532ae324ff5c596a1222f7cdb1e3f7

gcol.innodb_virtual_debug 'innodb'       w1 [ fail ]
        Test ended at 2023-06-30 08:33:09
 
CURRENT_TEST: gcol.innodb_virtual_debug
mysqltest: At line 140: query 'SELECT c FROM t' failed: 2013: Lost connection to MySQL server during query
#7  0x00007f56aa0e4312 in __assert_fail () from /lib64/libc.so.6
#8  0x0000556442c98273 in row_purge_remove_sec_if_poss_leaf (node=node@entry=0x55644bd92080, index=index@entry=0x55644c5f93c0, entry=entry@entry=0x55644c425700) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/row/row0purge.cc:603
#9  0x0000556442c9aaa7 in row_purge_remove_sec_if_poss (entry=0x55644c425700, index=0x55644c5f93c0, node=0x55644bd92080) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/row/row0purge.cc:699
#10 row_purge_upd_exist_or_extern_func (undo_rec=0x5564462c4f90 "", node=0x55644bd92080, thr=0x55644a700fb0) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/row/row0purge.cc:902
#11 row_purge_record_func (node=node@entry=0x55644bd92080, undo_rec=undo_rec@entry=0x5564462c4f90 "", thr=thr@entry=0x55644a700fb0, updated_extern=<optimized out>) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/row/row0purge.cc:1354
#12 0x0000556442c9d8fa in row_purge (thr=<optimized out>, undo_rec=<optimized out>, node=<optimized out>) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/row/row0purge.cc:1398
#13 row_purge_step (thr=thr@entry=0x55644a700fb0) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/row/row0purge.cc:1476
#14 0x0000556442c18078 in que_thr_step (thr=0x55644a700fb0) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/que/que0que.cc:966
#15 que_run_threads_low (thr=0x55644a700fb0) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/que/que0que.cc:1028
#16 que_run_threads (thr=thr@entry=0x55644a700fb0) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/que/que0que.cc:1068
#17 0x0000556442ce4b11 in srv_task_execute (slot=0x556443b3ae80 <srv_sys+832>) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/srv/srv0srv.cc:2432
#18 srv_worker_thread (arg=<optimized out>) at /usr/src/debug/MariaDB-10.4.31/src_0/storage/innobase/srv/srv0srv.cc:2487

This crash was triggered by the following:

			ib::error()
				<< "tried to purge non-delete-marked record"
				" in index " << index->name
				<< " of table " << index->table->name
				<< ": tuple: " << *entry
				<< ", record: " << rec_index_print(
					btr_cur_get_rec(
						btr_pcur_get_btr_cur(&pcur)),
					index);
 
			ut_ad(0);

The corresponding server error log was still available:

10.4 e146940ab3532ae324ff5c596a1222f7cdb1e3f7

Version: '10.4.31-MariaDB-debug-log'  socket: '/dev/shm/tmp/1/mysqld.1.sock'  port: 16000  MariaDB Server
CURRENT_TEST: gcol.gcol_select_innodb
CURRENT_TEST: gcol.gcol_supported_sql_funcs_innodb
CURRENT_TEST: gcol.gcol_trigger_sp_innodb
CURRENT_TEST: gcol.gcol_update
CURRENT_TEST: gcol.gcol_view_innodb
CURRENT_TEST: gcol.innodb_prefix_index_check
CURRENT_TEST: gcol.innodb_virtual_blob
CURRENT_TEST: gcol.innodb_virtual_debug
2023-06-30  8:32:58 1 [ERROR] InnoDB: tried to purge non-delete-marked record in index `idx_1` of table `test`.`t`: tuple: TUPLE (info_bits=0, 2 fields): {[4]    (0x8000001D),[6]     r(0x000000000972)}, record: COMPACT RECORD(info_bits=0, 2 fields): {[4]    (0x8000001D),[6]     r(0x000000000972)}
mysqld: /home/buildbot/buildbot/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX/mariadb-10.4.31/storage/innobase/row/row0purge.cc:603: bool row_purge_remove_sec_if_poss_leaf(purge_node_t*, dict_index_t*, const dtuple_t*): Assertion `0' failed.

Could it be that this type of a bug is also possible in later major versions, but not so easily reproducible, because the test in 10.5 can no longer make use of DEBUG_SYNC due to MDEV-16264?

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