Feedback: MariaDB: "MySQL server has gone away" when trying to DROP with Docker VMM enabled

I saw the option for Docker VMM so I wanted to try it out and up until now it worked very well.

When I just tried to drop a database in a MariaDB container via a PHPMyAdmin container, this error popped up:

MariaDB error log
2024-11-13 16:20:24 2024-11-13 16:20:24 7 [ERROR] InnoDB: Operating system error number 5 in a file operation.
2024-11-13 16:20:24 2024-11-13 16:20:24 7 [ERROR] InnoDB: Error number 5 means 'Input/output error'
2024-11-13 16:20:24 2024-11-13 16:20:24 7 [Note] InnoDB: Some operating system error numbers are described at https://mariadb.com/kb/en/library/operating-system-error-codes/
2024-11-13 16:20:24 2024-11-13 16:20:24 7 [ERROR] InnoDB: File (unknown): 'close' returned OS error 205. Cannot continue operation
2024-11-13 16:20:24 241113 16:20:24 [ERROR] mysqld got signal 6 ;
2024-11-13 16:20:24 This could be because you hit a bug. It is also possible that this binary
2024-11-13 16:20:24 or one of the libraries it was linked against is corrupt, improperly built,
2024-11-13 16:20:24 or misconfigured. This error can also be caused by malfunctioning hardware.
2024-11-13 16:20:24 
2024-11-13 16:20:24 To report this bug, see https://mariadb.com/kb/en/reporting-bugs
2024-11-13 16:20:24 
2024-11-13 16:20:24 We will try our best to scrape up some info that will hopefully help
2024-11-13 16:20:24 diagnose the problem, but since we have already crashed, 
2024-11-13 16:20:24 something is definitely wrong and this may fail.
2024-11-13 16:20:24 
2024-11-13 16:20:24 Server version: 10.10.2-MariaDB-1:10.10.2+maria~ubu2204
2024-11-13 16:20:24 key_buffer_size=134217728
2024-11-13 16:20:24 read_buffer_size=131072
2024-11-13 16:20:24 max_used_connections=2
2024-11-13 16:20:24 max_threads=153
2024-11-13 16:20:24 thread_count=2
2024-11-13 16:20:24 It is possible that mysqld could use up to 
2024-11-13 16:20:24 key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 468025 K  bytes of memory
2024-11-13 16:20:24 Hope that's ok; if not, decrease some variables in the equation.
2024-11-13 16:20:24 
2024-11-13 16:20:24 Thread pointer: 0xfffeec000c78
2024-11-13 16:20:24 Attempting backtrace. You can use the following information to find out
2024-11-13 16:20:24 where mysqld died. If you see no messages after this, something went
2024-11-13 16:20:24 terribly wrong...
2024-11-13 16:20:24 stack_bottom = 0xffffb41fe688 thread_stack 0x49000
2024-11-13 16:20:24 Printing to addr2line failed
2024-11-13 16:20:24 mariadbd(my_print_stacktrace+0x30)[0xaaaaddc1bc40]
2024-11-13 16:20:24 mariadbd(handle_fatal_signal+0x45c)[0xaaaadd72c63c]
2024-11-13 16:20:24 linux-vdso.so.1(__kernel_rt_sigreturn+0x0)[0xffffb6e687a0]
2024-11-13 16:20:25 /lib/aarch64-linux-gnu/libc.so.6(+0x7f200)[0xffffb64cf200]
2024-11-13 16:20:25 /lib/aarch64-linux-gnu/libc.so.6(raise+0x1c)[0xffffb648a67c]
2024-11-13 16:20:25 /lib/aarch64-linux-gnu/libc.so.6(abort+0xe4)[0xffffb6477130]
2024-11-13 16:20:25 mariadbd(+0xcbba5c)[0xaaaadda3ba5c]
2024-11-13 16:20:25 mariadbd(+0xcbbaa4)[0xaaaadda3baa4]
2024-11-13 16:20:25 mariadbd(+0xc5cdfc)[0xaaaadd9dcdfc]
2024-11-13 16:20:25 mariadbd(+0x9b115c)[0xaaaadd73115c]
2024-11-13 16:20:25 mariadbd(_Z15ha_delete_tableP3THDP10handlertonPKcPK25st_mysql_const_lex_stringS7_b+0xb4)[0xaaaadd737124]
2024-11-13 16:20:25 mariadbd(_Z23mysql_rm_table_no_locksP3THDP10TABLE_LISTPK25st_mysql_const_lex_stringP16st_ddl_log_statebbbbbb+0xc34)[0xaaaadd5a6f98]
2024-11-13 16:20:25 mariadbd(_Z14mysql_rm_tableP3THDP10TABLE_LISTbbbb+0x1ac)[0xaaaadd5a813c]
2024-11-13 16:20:25 mariadbd(_Z21mysql_execute_commandP3THDb+0x14b4)[0xaaaadd511ce8]
2024-11-13 16:20:25 mariadbd(_Z11mysql_parseP3THDPcjP12Parser_state+0x1c4)[0xaaaadd515a44]
2024-11-13 16:20:25 mariadbd(_Z16dispatch_command19enum_server_commandP3THDPcjb+0xec4)[0xaaaadd5178d8]
2024-11-13 16:20:25 mariadbd(_Z10do_commandP3THDb+0x118)[0xaaaadd5193b8]
2024-11-13 16:20:25 mariadbd(_Z24do_handle_one_connectionP7CONNECTb+0x460)[0xaaaadd617bd0]
2024-11-13 16:20:25 mariadbd(handle_one_connection+0x60)[0xaaaadd617f44]
2024-11-13 16:20:25 mariadbd(+0xba901c)[0xaaaadd92901c]
2024-11-13 16:20:25 /lib/aarch64-linux-gnu/libc.so.6(+0x7d5c8)[0xffffb64cd5c8]
2024-11-13 16:20:25 /lib/aarch64-linux-gnu/libc.so.6(+0xe5d1c)[0xffffb6535d1c]
2024-11-13 16:20:25 
2024-11-13 16:20:25 Trying to get some variables.
2024-11-13 16:20:25 Some pointers may be invalid and cause the dump to abort.
2024-11-13 16:20:25 Query (0xfffeec0109d0): DROP TABLE `redacted_for_privacy`
2024-11-13 16:20:25 
2024-11-13 16:20:25 Connection ID (thread ID): 7
2024-11-13 16:20:25 Status: NOT_KILLED
2024-11-13 16:20:25 
2024-11-13 16:20:25 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
2024-11-13 16:20:25 
2024-11-13 16:20:25 The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/ contains
2024-11-13 16:20:25 information that should help you find out what is causing the crash.
2024-11-13 16:20:25 Writing a core file...
2024-11-13 16:20:25 Working directory at /var/lib/mysql
2024-11-13 16:20:25 Resource Limits:
2024-11-13 16:20:25 Limit                     Soft Limit           Hard Limit           Units     
2024-11-13 16:20:25 Max cpu time              unlimited            unlimited            seconds   
2024-11-13 16:20:25 Max file size             unlimited            unlimited            bytes     
2024-11-13 16:20:25 Max data size             unlimited            unlimited            bytes     
2024-11-13 16:20:25 Max stack size            8388608              unlimited            bytes     
2024-11-13 16:20:25 Max core file size        0                    unlimited            bytes     
2024-11-13 16:20:25 Max resident set          unlimited            unlimited            bytes     
2024-11-13 16:20:25 Max processes             unlimited            unlimited            processes 
2024-11-13 16:20:25 Max open files            1048576              1048576              files     
2024-11-13 16:20:25 Max locked memory         unlimited            unlimited            bytes     
2024-11-13 16:20:25 Max address space         unlimited            unlimited            bytes     
2024-11-13 16:20:25 Max file locks            unlimited            unlimited            locks     
2024-11-13 16:20:25 Max pending signals       63867                63867                signals   
2024-11-13 16:20:25 Max msgqueue size         819200               819200               bytes     
2024-11-13 16:20:25 Max nice priority         0                    0                    
2024-11-13 16:20:25 Max realtime priority     0                    0                    
2024-11-13 16:20:25 Max realtime timeout      unlimited            unlimited            us        
2024-11-13 16:20:25 Core pattern: core
2024-11-13 16:20:25 
2024-11-13 16:20:25 Kernel version: Linux version 6.10.11-linuxkit (root@buildkitsandbox) (gcc (Alpine 13.2.1_git20240309) 13.2.1 20240309, GNU ld (GNU Binutils) 2.42) #1 SMP Thu Oct  3 10:17:28 UTC 2024
2024-11-13 16:20:25 
2024-11-13 16:20:25 2024-11-13 16:20:25+01:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.10.2+maria~ubu2204 started.
2024-11-13 16:20:25 2024-11-13 16:20:25+01:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2024-11-13 16:20:25 2024-11-13 16:20:25+01:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.10.2+maria~ubu2204 started.
2024-11-13 16:20:25 2024-11-13 16:20:25+01:00 [Note] [Entrypoint]: MariaDB upgrade not required
2024-11-13 16:20:25 2024-11-13 16:20:25 0 [Note] mariadbd (server 10.10.2-MariaDB-1:10.10.2+maria~ubu2204) starting as process 1 ...
2024-11-13 16:20:25 2024-11-13 16:20:25 0 [Warning] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive
2024-11-13 16:20:25 2024-11-13 16:20:25 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2024-11-13 16:20:25 2024-11-13 16:20:25 0 [Note] InnoDB: Number of transaction pools: 1
2024-11-13 16:20:25 2024-11-13 16:20:25 0 [Note] InnoDB: Using ARMv8 crc32 + pmull instructions
2024-11-13 16:20:25 2024-11-13 16:20:25 0 [Note] InnoDB: Using liburing
2024-11-13 16:20:25 2024-11-13 16:20:25 0 [Note] InnoDB: Initializing buffer pool, total size = 128.000MiB, chunk size = 2.000MiB
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: Completed initialization of buffer pool
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: Buffered log writes (block size=512 bytes)
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=50724966260
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: Starting final batch to recover 16 pages from redo log.
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: 128 rollback segments are active.
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: Removed temporary tablespace data file: "./ibtmp1"
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: Setting file './ibtmp1' size to 12.000MiB. Physically writing the file full; Please wait ...
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: File './ibtmp1' size is now 12.000MiB.
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: log sequence number 50724978963; transaction id 10583253
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] Plugin 'FEEDBACK' is disabled.
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Warning] You need to use --log-bin to make --expire-logs-days or --binlog-expire-logs-seconds work.
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] DDL_LOG: Crash recovery executed 1 entries
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] Server socket created on IP: '0.0.0.0'.
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] Server socket created on IP: '::'.
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] mariadbd: ready for connections.
2024-11-13 16:20:26 Version: '10.10.2-MariaDB-1:10.10.2+maria~ubu2204'  socket: '/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution
2024-11-13 16:20:26 2024-11-13 16:20:26 0 [Note] InnoDB: Buffer pool(s) load completed at 241113 16:20:26

I thought this might be useful to know for the developers. Note that this only happens with Docker VMM enabled. When I switch back to Apple Virtualization Framework it behaves like it should.

System info
Software:

    System Software Overview:

      System Version: macOS 15.0 (24A335)
      Kernel Version: Darwin 24.0.0

Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro18,1
      Model Number: MK193N/A
      Chip: Apple M1 Pro
      Total Number of Cores: 10 (8 performance and 2 efficiency)
      Memory: 16 GB
      System Firmware Version: 11881.1.1
      OS Loader Version: 11881.1.1

Thank you for sharing the error message. Yes, it could be useful for developers, but it would be more visible to them on GitHub. Could you also open an issue there?

Here on the community forum we can mostly discuss issues that don’t require a Docker developer.