[InnoDB] Assertion failure: ut0ut.cc:553 thread 140235111884544【筆記】
APPLIES TO:
MySQL Server - Version 8.0 and later
Information in this document applies to any platform.
SYMPTOMS
On : 8.0 version, Server Crash
ERROR
-----------------------
STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Have a high load of transactions on the server
2. The page cleaner gets overloaded
3. At least one innodb page gets truncated from the undo log pages
BUSINESS IMPACT
-----------------------
The issue has the following business impact:
Due to this issue, users cannot trust the server under load without corruption.
CAUSE
A transaction was still active on the table mentioned, however, may not have been required for some time after, or simply the data was on a different page to when the truncation occurred.
Once the truncated page was attempted to be accessed, it was recognised as corrupted and the messages shown in the error log and then the final assertion to avoid any further corruption.
There were large data reads and purging based on end-of-month processes.
Corruption shows up in the mysqld error log like:
2021-08-31T20:03:20.817267-04:00 1960210 [ERROR] [MY-013183] [InnoDB] Assertion failure: ut0ut.cc:553 thread 139840586462976
The ut0ut line shows that an assertion failure was thrown simply because it was unable to read all the required data from the page of the tablespace.
Multiple times in the log there are the following lines relating to truncating UNDO tablespace files.
This only happens in relation to the trx0trx.cc code which is for handling transactions.
2021-08-31T01:33:04.157713-04:00 0 [Note] [MY-011953] [InnoDB] Page cleaner took 20524ms to flush 2002 and evict 0 pages
2021-08-31T01:34:16.779531-04:00 0 [Note] [MY-011953] [InnoDB] Page cleaner took 23558ms to flush 2002 and evict 0 pages
2021-08-31T01:39:57.091897-04:00 0 [Note] [MY-011953] [InnoDB] Page cleaner took 5213ms to flush 2002 and evict 0 pages
2021-08-31T01:40:31.821776-04:00 0 [Note] [MY-011953] [InnoDB] Page cleaner took 15728ms to flush 2002 and evict 0 pages
2021-08-31T01:41:29.927435-04:00 0 [Note] [MY-011953] [InnoDB] Page cleaner took 9172ms to flush 2002 and evict 0 pages
2021-08-31T02:17:48.360155-04:00 0 [Note] [MY-012994] [InnoDB] Truncating UNDO tablespace innodb_undo_002
2021-08-31T02:17:48.373022-04:00 0 [Note] [MY-013000] [InnoDB] Completed truncate of undo tablespace innodb_undo_002.
2021-08-31T02:18:01.107204-04:00 0 [Note] [MY-012994] [InnoDB] Truncating UNDO tablespace undo_003
2021-08-31T02:18:01.119293-04:00 0 [Note] [MY-013000] [InnoDB] Completed truncate of undo tablespace undo_003.
2021-08-31T02:18:12.133887-04:00 0 [Note] [MY-012994] [InnoDB] Truncating UNDO tablespace undo_004
2021-08-31T02:18:12.146118-04:00 0 [Note] [MY-013000] [InnoDB] Completed truncate of undo tablespace undo_004.
2021-08-31T02:18:20.764099-04:00 0 [Note] [MY-012994] [InnoDB] Truncating UNDO tablespace innodb_undo_001
2021-08-31T02:18:20.775965-04:00 0 [Note] [MY-013000] [InnoDB] Completed truncate of undo tablespace innodb_undo_001.
This is explained in the following bug:
Bug.33162828: INNODB: Assertion failure: ut0ut.cc:552
SOLUTION
To implement the solution, please execute the following steps:
1. Download and review the release notes for the 8.0.27 version or higher.
2. Ensure that you have taken a backup of your system before upgrading.
3. Apply the upgrade in a test environment, if possible.
4. Retest the issue.
5. Migrate the solution as appropriate to other environments.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29863023/viewspace-2843750/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 轉:Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:]AIUIViewIndex
- MySQL 8.0 Reference Manual(讀書筆記73節--Thread Concurrency for InnoDB and I/O Threads)MySql筆記thread
- InnoDB文件筆記(一)筆記
- InnoDB文件筆記(二)—— Redo Log筆記
- InnoDB文件筆記(三)—— Undo Log筆記
- 2018.03.12、Java-Thread學習筆記Javathread筆記
- (RT-Thread學習筆記1)基於 CubeMX 移植 RT-Thread Nanothread筆記NaN
- MySQL:Innodb恢復的學習筆記MySql筆記
- innodb學習筆記(一) aio的使用筆記AI
- MySQL提升筆記(4)InnoDB儲存結構MySql筆記
- rt-thread學習筆記——8、建立訊號量thread筆記
- vulnhub - ASSERTION1.0.1
- MySQL 8.0 Reference Manual(讀書筆記63節--InnoDB Locking)MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記80節-- InnoDB Row Formats)MySql筆記ORM
- MySQL 8.0 Reference Manual(讀書筆記69節--InnoDB Startup Configuration)MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記57節--Optimizing for InnoDB Tables)MySql筆記
- RT-Thread學習筆記2-互斥量與訊號量thread筆記
- MySQL:一個innodb_thread_concurrency設定不當引發的故障MySqlthread
- MySQL 8.0 Reference Manual(讀書筆記76節--Optimizer Statistics for InnoDB (2))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記81節-- InnoDB and Online DDL (1))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記82節-- InnoDB and Online DDL (2))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記83節-- InnoDB and Online DDL (3))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記84節-- InnoDB and Online DDL (4))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記75節--Optimizer Statistics for InnoDB (1))MySql筆記
- design for failureAI
- MySQL 8.0 Reference Manual(讀書筆記61節--Examining Server Thread (Process) Information(2))MySql筆記ServerthreadORM
- MySQL 8.0 Reference Manual(讀書筆記61節--Examining Server Thread (Process) Information(1))MySql筆記ServerthreadORM
- MySQL 8.0 Reference Manual(讀書筆記78節-- InnoDB Table and Page Compression (1))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記79節-- InnoDB Table and Page Compression (2))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記70節--InnoDB Buffer Pool Configuration (1))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記71節--InnoDB Buffer Pool Configuration (2))MySql筆記
- MySQL 8.0 Reference Manual(讀書筆記72節--InnoDB Buffer Pool Configuration (3))MySql筆記
- 《MySQL實戰45講》學習筆記4——MySQL中InnoDB的索引MySql筆記索引
- MySQL InnoDB記憶體配置MySql記憶體
- MySQL 8.0 Reference Manual(讀書筆記86節-- InnoDB INFORMATION_SCHEMA Tables(2))MySql筆記ORM
- MySQL 8.0 Reference Manual(讀書筆記85節-- InnoDB INFORMATION_SCHEMA Tables(1))MySql筆記ORM
- RT-Thread學習筆記1-啟動順序與執行緒建立thread筆記執行緒
- RT-Thread學習筆記3-執行緒間通訊 & 定時器thread筆記執行緒定時器