Details
-
Bug
-
Status: Stalled (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.6.14, 10.4(EOL), 10.5, 10.6, 10.7(EOL), 10.8(EOL), 10.9(EOL), 10.10(EOL), 10.11, 11.0(EOL), 11.1(EOL)
Description
Scenario:
|
1. Start the server and generate some initial data
|
2. Two "worker" session runs a DDL/DML mix
|
3. After some time the testing tool random query generator (RQG) detects that
|
one of the session running the DDL/DML mix is left over and has exceeded some
|
threshold for the execution of its statement and assumes some server hang/freeze.
|
- 21:19:51 (~ 352s after the "worker" session ID 17 started its activity)
|
ID -- COMMAND -- TIME -- INFO -- state
|
13 -- Sleep -- 352 -- <undef> -- ok
|
14 -- Killed -- 273 -- FLUSH TABLES /* E_R Thread1 QNO 1230 CON_ID 14 */ -- stalled?
|
50 -- Query -- 0 -- SHOW FULL PROCESSLIST -- ok
|
- 21:21:14 Why does ID 14 not switch to "Sleep"
|
ID -- COMMAND -- TIME -- INFO -- state
|
14 -- Killed -- 356 -- FLUSH TABLES /* E_R Thread1 QNO 1230 CON_ID 14 */
|
60 -- Query -- 0 -- SHOW FULL PROCESSLIST
|
|
# 2023-06-01T21:21:14 [446281] Reporter 'Deadlock': Content of processlist ---------- begin
|
# 2023-06-01T21:21:14 [446281] Reporter 'Deadlock': ID -- COMMAND -- TIME -- INFO -- state
|
# 2023-06-01T21:21:14 [446281] Reporter 'Deadlock': 13 -- Sleep -- 435 -- <undef> -- ok
|
# 2023-06-01T21:21:14 [446281] Reporter 'Deadlock': 14 -- Killed -- 356 -- FLUSH TABLES /* E_R
|
|
pluto:/data/results/1685644381/Freeze$ gdb -c ./1/data/core /data/Server_bin/bb-10.6-MDEV-30986B_asan_Og/bin/mysqld
|
|
Unfortunately I cannot exclude that RQG makes false alarm.
|
|
RQG
|
===
|
# git clone https://github.com/mleich1/rqg --branch <pick the right branch> RQG
|
#
|
# GIT_SHOW: HEAD -> master, origin/master, origin/HEAD 2cfe27f6ea2427e6d80314d26649e804d3bdf1c6 2023-05-26T16:45:32+02:00
|
# rqg.pl : Version 4.2.1 (2022-12)
|
#
|
# $RQG_HOME/rqg.pl \
|
# --gendata=conf/engines/innodb/full_text_search.zz \
|
# --max_gd_duration=1200 \
|
# --short_column_names \
|
# --grammar=conf/engines/innodb/full_text_search.yy \
|
# --redefine=conf/mariadb/alter_table.yy \
|
# --redefine=conf/mariadb/instant_add.yy \
|
# --redefine=conf/mariadb/modules/alter_table_columns.yy \
|
# --redefine=conf/mariadb/bulk_insert.yy \
|
# --redefine=conf/mariadb/modules/foreign_keys.yy \
|
# --redefine=conf/mariadb/modules/locks.yy \
|
# --redefine=conf/mariadb/modules/sql_mode.yy \
|
# --redefine=conf/mariadb/redefine_temporary_tables.yy \
|
# --redefine=conf/mariadb/versioning.yy \
|
# --redefine=conf/mariadb/sequences.yy \
|
# --mysqld=--loose-innodb_lock_schedule_algorithm=fcfs \
|
# --mysqld=--loose-idle_write_transaction_timeout=0 \
|
# --mysqld=--loose-idle_transaction_timeout=0 \
|
# --mysqld=--loose-idle_readonly_transaction_timeout=0 \
|
# --mysqld=--connect_timeout=60 \
|
# --mysqld=--interactive_timeout=28800 \
|
# --mysqld=--slave_net_timeout=60 \
|
# --mysqld=--net_read_timeout=30 \
|
# --mysqld=--net_write_timeout=60 \
|
# --mysqld=--loose-table_lock_wait_timeout=50 \
|
# --mysqld=--wait_timeout=28800 \
|
# --mysqld=--lock-wait-timeout=86400 \
|
# --mysqld=--innodb-lock-wait-timeout=50 \
|
# --no_mask \
|
# --queries=10000000 \
|
# --seed=random \
|
# --reporters=None \
|
# --reporters=ErrorLog \
|
# --reporters=Deadlock \
|
# --validators=None \
|
# --validators=None \
|
# --mysqld=--log_output=none \
|
# --mysqld=--log_bin_trust_function_creators=1 \
|
# --mysqld=--loose-debug_assert_on_not_freed_memory=0 \
|
# --engine=InnoDB \
|
# --restart_timeout=240 \
|
# --mysqld=--plugin-load-add=file_key_management.so \
|
# --mysqld=--loose-file-key-management-filename=$RQG_HOME/conf/mariadb/encryption_keys.txt \
|
# --mysqld=--plugin-load-add=provider_lzo.so \
|
# --mysqld=--plugin-load-add=provider_bzip2.so \
|
# --mysqld=--plugin-load-add=provider_lzma.so \
|
# --mysqld=--plugin-load-add=provider_snappy.so \
|
# --mysqld=--plugin-load-add=provider_lz4.so \
|
# --mysqld=--loose-innodb_compression_level=1 \
|
# --duration=300 \
|
# --mysqld=--loose-innodb_fatal_semaphore_wait_threshold=300 \
|
# --mysqld=--loose-innodb_read_only_compressed=OFF \
|
# --mysqld=--loose-innodb-sync-debug \
|
# --mysqld=--innodb_stats_persistent=off \
|
# --mysqld=--innodb_adaptive_hash_index=off \
|
# --mysqld=--innodb_random_read_ahead=ON \
|
# --mysqld=--loose-innodb_evict_tables_on_commit_debug=off \
|
# --mysqld=--loose-max-statement-time=30 \
|
# --threads=1 \
|
# --mysqld=--innodb_use_native_aio=1 \
|
# --mysqld=--innodb_undo_log_truncate=ON \
|
# --mysqld=--loose_innodb_change_buffering=none \
|
# --mysqld=--innodb_undo_tablespaces=16 \
|
# --mysqld=--innodb_rollback_on_timeout=ON \
|
# --mysqld=--innodb_page_size=32K \
|
# --mysqld=--innodb-buffer-pool-size=256M \
|
# <local settings>
|
|
Attachments
Issue Links
- relates to
-
MDEV-31941 Assertion failures upon using OQGraph table under lock
- Confirmed
-
MDEV-5336 Implement BACKUP STAGE for safe external backups
- Closed