Bug #118659 doing optimize table crash

Submitted: 15 Jul 2025 7:31 Modified: 21 Aug 2025 12:37
Reporter: Alice Alice Email Updates:
Status: No Feedback Impact on me:
None 
Category:MySQL Server: DDL Severity:S3 (Non-critical)
Version:8.0.41 OS:Linux
Assigned to: Assigned Account CPU Architecture:Any

[15 Jul 2025 7:31] Alice Alice
Description:
doing optimize table and update same time will lead to crash.

the stack:
#0  0x0000ffff885f0d68 in pthread_kill () from /usr/lib64/libpthread.so.0
#1  0x000000000200ee6c in my_write_core (sig=<optimized out>) at ../../../include/my_thread.h:88
#2  0x0000000000e226b0 in handle_fatal_signal (sig=11) at ../../../sql/signal_handler.cc:180
#3  <signal handler called>
#4  trx_undo_read_v_cols (table=0xffff40522c90, ptr=0xffff1fc661ae ' ' <repeats 18 times>, "\200\003\037V\200\003w\027w59gaLiYKO5WK4A3q", ptr@entry=0xffff1fc6604d "B\005\001\021\006\024", 
    row=row@entry=0xffff40678590, in_purge=in_purge@entry=false, online=online@entry=true, col_map=0xffff3ffc7c40, heap=heap@entry=0xffff40678520) at ../../../../storage/innobase/trx/trx0rec.cc:2719
#5  0x0000000002260048 in row_log_table_apply_op (thr=thr@entry=0xffff4800f160, trx_id_col=trx_id_col@entry=1, new_trx_id_col=new_trx_id_col@entry=1, dup=dup@entry=0xffff87eb2cd8, 
    error=error@entry=0xffff87eb2a74, offsets_heap=offsets_heap@entry=0xffff405c7d20, heap=heap@entry=0xffff40678520, mrec=0xffff1fc66007 "", mrec@entry=0xffff1fc66000 "B\005\005\b\004\024", 
    mrec_end=mrec_end@entry=0xffff1fc66515 "", offsets=offsets@entry=0xffff4ac3eb20) at ../../../../storage/innobase/row/row0log.cc:2573
#6  0x0000000002260ebc in row_log_table_apply_ops (thr=thr@entry=0xffff4800f160, dup=dup@entry=0xffff87eb2cd8, stage=0xffff4acb6710) at ../../../../storage/innobase/row/row0log.cc:2924
#7  0x000000000226196c in row_log_table_apply (thr=0xffff4800f160, old_table=<optimized out>, table=table@entry=0xffff4ac64028, stage=<optimized out>) at ../../../../storage/innobase/row/row0log.cc:3015
#8  0x00000000021775b8 in ha_innobase::inplace_alter_table_impl<dd::Table> (this=this@entry=0xffff55efbc30, altered_table=altered_table@entry=0xffff4ac64028, ha_alter_info=ha_alter_info@entry=0xffff87eb3980, 
    old_dd_tab=old_dd_tab@entry=0xffff4acee7e0, new_dd_tab=new_dd_tab@entry=0xffff341133e0) at ../../../../storage/innobase/include/dict0dict.ic:1336
#9  0x00000000021772f8 in ha_innobase::inplace_alter_table (this=0xffff55efbc30, altered_table=0xffff4ac64028, ha_alter_info=0xffff87eb3980, old_dd_tab=0xffff4acee7e0, new_dd_tab=0xffff341133e0)
    at ../../../../storage/innobase/handler/handler0alter.cc:1282
#10 0x0000000000d82b0c in handler::ha_inplace_alter_table (new_table_def=0xffff341133e0, old_table_def=0xffff4acee7e0, ha_alter_info=0xffff87eb3980, altered_table=0xffff4ac64028, this=<optimized out>)
    at ../../../sql/handler.h:5908
#11 mysql_inplace_alter_table (thd=thd@entry=0xffff4d09c800, schema=..., new_schema=..., table_def=0xffff4acee7e0, altered_table_def=0xffff341133e0, table_list=0xffff3eea2058, table=0xffff4a00b428, 
    altered_table=0xffff4ac64028, ha_alter_info=0xffff87eb3980, inplace_supported=<optimized out>, alter_ctx=alter_ctx@entry=0xffff87eb44f0, columns=..., fk_key_info=fk_key_info@entry=0xffff561993f0, 
    fk_key_count=0, fk_invalidator=fk_invalidator@entry=0xffff87eb38c0) at ../../../sql/sql_table.cc:13035
#12 0x0000000000d78a50 in mysql_alter_table (thd=thd@entry=0xffff4d09c800, new_db=0x0, new_name=0x0, create_info=create_info@entry=0xffff87eb59a0, table_list=<optimized out>, table_list@entry=0xffff3eea2058, 
    alter_info=alter_info@entry=0xffff87eb5ae0) at ../../../sql/sql_table.cc:17044
#13 0x0000000001153760 in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0xffff4d09c800) at ../../../sql/sql_alter.cc:349
#14 0x0000000000a71260 in mysql_execute_command (thd=0xffff4d09c800, first_level=false) at ../../../sql/sql_parse.cc:4813
#15 0x0000000000a76838 in dispatch_sql_command (thd=0xffff4d09c800, parser_state=<optimized out>) at ../../../sql/sql_parse.cc:5414
#16 0x0000000000a77bc4 in dispatch_command (thd=0xffff4d09c800, com_data=<optimized out>, command=COM_QUERY) at ../../../sql/sql_parse.cc:2044
#17 0x0000000000a77168 in do_command (thd=thd@entry=0xffff4d09c800) at ../../../sql/sql_parse.cc:1335
#18 0x0000000000bcd350 in threadpool_process_request (thd=0xffff4d09c800) at ../../../../plugin/threadpool/threadpool_common.cc:241
#19 0x0000000000bcdd78 in handle_event (connection=0xffff75ddbd28) at ../../../../plugin/threadpool/threadpool_unix.cc:1574
#20 worker_main (param=param@entry=0x4ea2a00 <all_groups>) at ../../../../plugin/threadpool/threadpool_unix.cc:1620
#21 0x000000000250cb40 in pfs_spawn_thread (arg=<optimized out>) at ../../../../storage/perfschema/pfs.cc:2899
#22 0x0000ffff885e97b0 in ?? () from /usr/lib64/libpthread.so.0
#23 0x0000ffff880aa56c in ?? () from /usr/lib64/libc.so.6
 

How to repeat:
commit: 59101bd8a816b536e1441cb9f51a5238c1c58b41
date: 2024-12-16 08:40:40 +0100
build-date: 2024-12-16 09:22:30 +0000
short: 59101bd8a81
branch: mysql-8.0.41-release

MySQL source 8.0.41

like this bug: https://bugs.mysql.com/bug.php?id=108925

Suggested fix:
no suggest
[21 Jul 2025 12:36] MySQL Verification Team
Hi,

I cannot reproduce this. Also I do not understand link to 
Bug #108925 as that one is fixed and that test does not fail with 8.0.41 nor if I run optimize during that test case I reproduced a crash.

Can you share more details on how to reproduce this?

Thanks
[22 Aug 2025 1:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.051 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.