[MDEV-29902] Not applying INSERT_REUSE_DYNAMIC due to corruption on page Created: 2022-10-27  Updated: 2022-10-27

Status: Open
Project: MariaDB Server
Component/s: Storage Engine - InnoDB
Affects Version/s: 10.5.12
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Haidong Ji Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None


 Description   

The initial crash was due to long semaphore wait. After that, the instance couldn't start due to corruption. The error message is 'Not applying INSERT_REUSE_DYNAMIC due to corruption'.

It is similar to MDEV-25031, but the crash is triggered from a different code path. Unlike MDEV-25031 that is triggered from the "page_apply_insert_redundant" function, this bug here follows the path of "page_apply_insert_dynamic" before the crash.

2022-05-23 10:11:53 0 [Note] InnoDB: Uses event mutexes
2022-05-23 10:11:53 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2022-05-23 10:11:53 0 [Note] InnoDB: Number of pools: 1
2022-05-23 10:11:53 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions
2022-05-23 10:11:53 0 [Note] InnoDB: Using Linux native AIO
2022-05-23 10:11:53 0 [Note] InnoDB: Initializing buffer pool, total size = 99857989632, chunk size = 134217728
2022-05-23 10:11:55 0 [Note] InnoDB: Completed initialization of buffer pool
2022-05-23 10:11:55 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=8924294531973,8924294921637
2022-05-23 10:12:09 0 [Note] InnoDB: Transaction 1764268394 was in the XA prepared state.
2022-05-23 10:12:09 0 [Note] InnoDB: 4 transaction(s) which must be rolled back or cleaned up in total 6043 row operations to undo
2022-05-23 10:12:09 0 [Note] InnoDB: Trx id counter is 1764268395
2022-05-23 10:12:09 0 [Note] InnoDB: Starting final batch to recover 118354 pages from redo log.
2022-05-23 10:12:10 0 [Note] InnoDB: To recover: 117693 pages from log
2022-05-23 10:12:14 0 [ERROR] InnoDB: Not applying INSERT_REUSE_DYNAMIC due to corruption on [page id: space=745895, page number=647870]
2022-05-23 10:12:14 0 [ERROR] InnoDB: Set innodb_force_recovery=1 to ignore corruption.
2022-05-23 10:12:25 0 [Note] InnoDB: To recover: 98118 pages from log
2022-05-23 10:12:40 0 [Note] InnoDB: To recover: 82875 pages from log
2022-05-23 10:12:55 0 [Note] InnoDB: To recover: 67551 pages from log
2022-05-23 10:13:10 0 [Note] InnoDB: To recover: 52518 pages from log
2022-05-23 10:13:25 0 [Note] InnoDB: To recover: 37001 pages from log
2022-05-23 10:13:40 0 [Note] InnoDB: To recover: 21482 pages from log
2022-05-23 10:13:55 0 [Note] InnoDB: To recover: 6819 pages from log
2022-05-23 10:14:02 0 [ERROR] InnoDB: Plugin initialization aborted with error Data structure corruption
2022-05-23 10:14:02 0 [Note] InnoDB: Starting shutdown...
2022-05-23 10:14:03 0 [ERROR] Plugin 'InnoDB' init function returned error.
2022-05-23 10:14:03 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2022-05-23 10:14:03 0 [Note] Plugin 'FEEDBACK' is disabled.
2022-05-23 10:14:03 0 [ERROR] Unknown/unsupported storage engine: InnoDB
2022-05-23 10:14:03 0 [ERROR] Aborting


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