Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-21572

buf_page_get_gen() should apply buffered page initialized redo log during recovery

Details

    Description

      Unfortunately, logs are no longer available. So, it's just for a record, until it fails again.

      10.3 4923604ee2fba372f28c856a3f41274f winx64-debug

      innodb.leaf_page_corrupted_during_recovery 'innodb' w4 [ fail ]
              Test ended at 2019-12-29 15:11:24
       
      CURRENT_TEST: innodb.leaf_page_corrupted_during_recovery
      mysqltest: At line 51: query 'SELECT * FROM t1 WHERE PK = 1' failed: 2013: Lost connection to MySQL server during query
       
      The result from queries just before the failure was:
      CREATE TABLE t1 (pk INT PRIMARY KEY, c CHAR(255))ENGINE=InnoDB STATS_PERSISTENT=0;
      SET GLOBAL INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG = 2;
      INSERT INTO t1 VALUES(1, 'sql'), (2, 'server'), (3, 'mariadb'),
      (4, 'mariadb'), (5, 'test1'), (6, 'test2'), (7, 'test3'),
      (8, 'test4'), (9, 'test5'), (10, 'test6'), (11, 'test7'),
      (12, 'test8');
      SELECT COUNT(*) FROM t1;
      COUNT(*)
      12
      UPDATE t1 SET c='best8' WHERE pk=12;
      # Kill the server
      # Corrupt the pages
      SELECT * FROM t1 WHERE PK = 1;
      ERROR 42000: Unknown storage engine 'InnoDB'
      SELECT * FROM t1 WHERE PK = 1;
       
       
      Server [mysqld.1 - pid: 7164, winpid: 7164, exit: 768] failed during test run
      Server log from this test:
      ----------SERVER LOG START-----------
      2019-12-29 15:11:11 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe (mysqld 10.3.22-MariaDB-debug-log) starting as process 7436 ...
      2019-12-29 15:11:11 0 [Note] Plugin 'SEQUENCE' is disabled.
      2019-12-29 15:11:11 0 [Note] Plugin 'partition' is disabled.
      2019-12-29 15:11:11 0 [Note] InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
      2019-12-29 15:11:11 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
      2019-12-29 15:11:11 0 [Note] InnoDB: Uses event mutexes
      2019-12-29 15:11:11 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
      2019-12-29 15:11:11 0 [Note] InnoDB: Number of pools: 1
      2019-12-29 15:11:11 0 [Note] InnoDB: Using SSE2 crc32 instructions
      2019-12-29 15:11:11 0 [Note] InnoDB: Initializing buffer pool, total size = 8M, instances = 1, chunk size = 8M
      2019-12-29 15:11:11 0 [Note] InnoDB: Completed initialization of buffer pool
      2019-12-29 15:11:12 0 [Note] InnoDB: 128 out of 128 rollback segments are active.
      2019-12-29 15:11:12 0 [Note] InnoDB: Creating shared tablespace for temporary tables
      2019-12-29 15:11:12 0 [Note] InnoDB: Setting file '.\ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
      2019-12-29 15:11:12 0 [Note] InnoDB: File '.\ibtmp1' size is now 12 MB.
      2019-12-29 15:11:12 0 [Note] InnoDB: Waiting for purge to start
      2019-12-29 15:11:12 0 [Note] InnoDB: 10.3.22 started; log sequence number 1636581; transaction id 34
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_MUTEXES' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_CMP' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_TABLESPACES_ENCRYPTION' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'FEEDBACK' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'user_variables' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
      2019-12-29 15:11:12 0 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
      2019-12-29 15:11:12 0 [Warning] D:/winx64-debug/build/sql//Debug/mysqld.exe: unknown option '--loose-pam-debug'
      2019-12-29 15:11:12 0 [Note] Server socket created on IP: '::'.
      2019-12-29 15:11:12 0 [Note] Reading of all Master_info entries succeeded
      2019-12-29 15:11:12 0 [Note] Added new Master_info '' to hash table
      2019-12-29 15:11:12 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe: ready for connections.
      Version: '10.3.22-MariaDB-debug-log'  socket: ''  port: 16060  Source distribution
      2019-12-29 15:11:12 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe (initiated by: root[root] @ localhost [::1]): Normal shutdown
      2019-12-29 15:11:12 0 [Note] Event Scheduler: Purging the queue. 0 events
      2019-12-29 15:11:12 0 [Note] InnoDB: FTS optimize thread exiting.
      2019-12-29 15:11:12 0 [Note] InnoDB: Starting shutdown...
      2019-12-29 15:11:12 0 [Note] InnoDB: Dumping buffer pool(s) to D:\winx64-debug\build\mysql-test\var\4\mysqld.1\data\ib_buffer_pool
      2019-12-29 15:11:12 0 [Note] InnoDB: Instance 0, restricted to 128 pages due to innodb_buf_pool_dump_pct=25
      2019-12-29 15:11:12 0 [Note] InnoDB: Buffer pool(s) dump completed at 191229 15:11:12
      2019-12-29 15:11:13 0 [Note] InnoDB: Shutdown completed; log sequence number 1646317; transaction id 38
      2019-12-29 15:11:13 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
      2019-12-29 15:11:13 0 [Note] Debug sync points hit:                   1514
      2019-12-29 15:11:13 0 [Note] Debug sync points executed:              0
      2019-12-29 15:11:13 0 [Note] Debug sync points max active per thread: 0
      2019-12-29 15:11:13 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe: Shutdown complete
       
      2019-12-29 15:11:15 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe (mysqld 10.3.22-MariaDB-debug-log) starting as process 9788 ...
      2019-12-29 15:11:15 0 [Note] Plugin 'SEQUENCE' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'partition' is disabled.
      2019-12-29 15:11:15 0 [Note] InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
      2019-12-29 15:11:15 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
      2019-12-29 15:11:15 0 [Note] InnoDB: Uses event mutexes
      2019-12-29 15:11:15 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
      2019-12-29 15:11:15 0 [Note] InnoDB: Number of pools: 1
      2019-12-29 15:11:15 0 [Note] InnoDB: Using SSE2 crc32 instructions
      2019-12-29 15:11:15 0 [Note] InnoDB: Initializing buffer pool, total size = 8M, instances = 1, chunk size = 8M
      2019-12-29 15:11:15 0 [Note] InnoDB: Completed initialization of buffer pool
      2019-12-29 15:11:15 0 [Note] InnoDB: 128 out of 128 rollback segments are active.
      2019-12-29 15:11:15 0 [Note] InnoDB: Creating shared tablespace for temporary tables
      2019-12-29 15:11:15 0 [Note] InnoDB: Setting file '.\ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
      2019-12-29 15:11:15 0 [Note] InnoDB: File '.\ibtmp1' size is now 12 MB.
      2019-12-29 15:11:15 0 [Note] InnoDB: Waiting for purge to start
      2019-12-29 15:11:15 0 [Note] InnoDB: 10.3.22 started; log sequence number 1646317; transaction id 40
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_MUTEXES' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_CMP' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_TABLESPACES_ENCRYPTION' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'FEEDBACK' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'user_variables' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
      2019-12-29 15:11:15 0 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
      2019-12-29 15:11:15 0 [Warning] D:/winx64-debug/build/sql//Debug/mysqld.exe: unknown option '--loose-pam-debug'
      2019-12-29 15:11:15 0 [Note] Server socket created on IP: '::'.
      2019-12-29 15:11:15 0 [Note] Reading of all Master_info entries succeeded
      2019-12-29 15:11:15 0 [Note] Added new Master_info '' to hash table
      2019-12-29 15:11:15 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe: ready for connections.
      Version: '10.3.22-MariaDB-debug-log'  socket: ''  port: 16060  Source distribution
      2019-12-29 15:11:16 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe (mysqld 10.3.22-MariaDB-debug-log) starting as process 9876 ...
      2019-12-29 15:11:16 0 [Note] Plugin 'SEQUENCE' is disabled.
      2019-12-29 15:11:16 0 [Note] Plugin 'partition' is disabled.
      2019-12-29 15:11:16 0 [Note] InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
      2019-12-29 15:11:16 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
      2019-12-29 15:11:16 0 [Note] InnoDB: Uses event mutexes
      2019-12-29 15:11:16 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
      2019-12-29 15:11:16 0 [Note] InnoDB: Number of pools: 1
      2019-12-29 15:11:16 0 [Note] InnoDB: Using SSE2 crc32 instructions
      2019-12-29 15:11:16 0 [Note] InnoDB: Initializing buffer pool, total size = 8M, instances = 1, chunk size = 8M
      2019-12-29 15:11:16 0 [Note] InnoDB: Completed initialization of buffer pool
      2019-12-29 15:11:17 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=1646317
      2019-12-29 15:11:17 0 [Note] InnoDB: Starting final batch to recover 1 pages from redo log.
      2019-12-29 15:11:17 0 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:17 0 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:17 0 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:17 0 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:17 0 [ERROR] InnoDB: Failed to read file '.\test\t1.ibd' at offset 19: Page read from tablespace is corrupted.
      2019-12-29 15:11:17 0 [Note] InnoDB: Set innodb_force_recovery=1 to ignore corrupted pages.
      2019-12-29 15:11:17 0 [ERROR] InnoDB: Plugin initialization aborted at srv0start.cc[2009] with error Data structure corruption
      2019-12-29 15:11:18 0 [Note] InnoDB: Starting shutdown...
      2019-12-29 15:11:18 0 [ERROR] Plugin 'InnoDB' init function returned error.
      2019-12-29 15:11:18 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_MUTEXES' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_CMP' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_TABLESPACES_ENCRYPTION' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'FEEDBACK' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'user_variables' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
      2019-12-29 15:11:18 0 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
      2019-12-29 15:11:18 0 [Warning] D:/winx64-debug/build/sql//Debug/mysqld.exe: unknown option '--loose-pam-debug'
      2019-12-29 15:11:18 0 [Note] Server socket created on IP: '::'.
      2019-12-29 15:11:18 0 [Note] Reading of all Master_info entries succeeded
      2019-12-29 15:11:18 0 [Note] Added new Master_info '' to hash table
      2019-12-29 15:11:18 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe: ready for connections.
      Version: '10.3.22-MariaDB-debug-log'  socket: ''  port: 16060  Source distribution
      2019-12-29 15:11:18 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe (initiated by: root[root] @ localhost [127.0.0.1]): Normal shutdown
      2019-12-29 15:11:18 0 [Note] Event Scheduler: Purging the queue. 0 events
      2019-12-29 15:11:18 0 [Note] Debug sync points hit:                   238
      2019-12-29 15:11:18 0 [Note] Debug sync points executed:              0
      2019-12-29 15:11:18 0 [Note] Debug sync points max active per thread: 0
      2019-12-29 15:11:18 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe: Shutdown complete
       
      2019-12-29 15:11:20 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe (mysqld 10.3.22-MariaDB-debug-log) starting as process 8500 ...
      2019-12-29 15:11:20 0 [Note] Plugin 'SEQUENCE' is disabled.
      2019-12-29 15:11:20 0 [Note] Plugin 'partition' is disabled.
      2019-12-29 15:11:20 0 [Note] InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
      2019-12-29 15:11:20 0 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
      2019-12-29 15:11:20 0 [Note] InnoDB: Uses event mutexes
      2019-12-29 15:11:20 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
      2019-12-29 15:11:20 0 [Note] InnoDB: Number of pools: 1
      2019-12-29 15:11:20 0 [Note] InnoDB: Using SSE2 crc32 instructions
      2019-12-29 15:11:20 0 [Note] InnoDB: Initializing buffer pool, total size = 8M, instances = 1, chunk size = 8M
      2019-12-29 15:11:20 0 [Note] InnoDB: Completed initialization of buffer pool
      2019-12-29 15:11:20 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=1646317
      2019-12-29 15:11:20 0 [Note] InnoDB: Starting final batch to recover 1 pages from redo log.
      2019-12-29 15:11:20 0 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:20 0 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:20 0 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:20 0 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:20 0 [ERROR] InnoDB: Failed to read file '.\test\t1.ibd' at offset 19: Page read from tablespace is corrupted.
      2019-12-29 15:11:21 0 [Note] InnoDB: 128 out of 128 rollback segments are active.
      2019-12-29 15:11:21 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
      2019-12-29 15:11:21 0 [Note] InnoDB: Creating shared tablespace for temporary tables
      2019-12-29 15:11:21 0 [Note] InnoDB: Setting file '.\ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
      2019-12-29 15:11:21 0 [Note] InnoDB: File '.\ibtmp1' size is now 12 MB.
      2019-12-29 15:11:21 0 [Note] InnoDB: Waiting for purge to start
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 4 [Warning] InnoDB:  Error code: 107 btr_pcur_open_low  level: 0 called from file: D:\winx64-debug\build\src\storage\innobase\row\row0row.cc line: 1052 table: `test`.`t1` index: `PRIMARY`
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 0 [Note] InnoDB: 10.3.22 started; log sequence number 1647063; transaction id 44
      2019-12-29 15:11:21 0 [Note] InnoDB: !!! innodb_force_recovery is set to 1 !!!
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_MUTEXES' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_CMP' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_TABLESPACES_ENCRYPTION' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 0 [Note] Plugin 'FEEDBACK' is disabled.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 0 [Note] Plugin 'user_variables' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 0 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 0 [Warning] D:/winx64-debug/build/sql//Debug/mysqld.exe: unknown option '--loose-pam-debug'
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 0 [Note] Server socket created on IP: '::'.
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 0 [Note] Reading of all Master_info entries succeeded
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 0 [Note] Added new Master_info '' to hash table
      2019-12-29 15:11:21 0 [Note] D:/winx64-debug/build/sql//Debug/mysqld.exe: ready for connections.
      Version: '10.3.22-MariaDB-debug-log'  socket: ''  port: 16060  Source distribution
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library/innodb-recovery-modes/ for information about forcing recovery.
      2019-12-29 15:11:21 1 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page [page id: space=5, page number=19]. You may have to recover from a backup.
      2019-12-29 15:11:21 1 [Note] InnoDB: Uncompressed page, stored checksum in field1 1786080875, calculated checksums for field1: crc32 1044816981, innodb 593965754,  page type 17855 == INDEX.none 3735928559, stored checksum in field2 1044816981, calculated checksums for field2: crc32 1044816981, innodb 834101323, none 3735928559,  page LSN 0 1646109, low 4 bytes of LSN at page end 1646109, page number (if stored to page already) 19, space id (if created with >= MySQL-4.1.1 and stored already) 5
      2019-12-29 15:11:21 1 [Note] InnoDB: Page may be an index page where index id is 25
      2019-12-29 15:11:21 1 [Note] InnoDB: Index 25 is `PRIMARY` in table `test`.`t1`
      2019-12-29 15:11:21 1 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to https://mariadb.com/kb/en/library
      

      Attachments

        Issue Links

          Activity

            Related to this, we observed another failure on 10.4:

            encryption.innodb-redo-badkey 'ctr,innodb,strict_crc32' w1 [ fail ]
            …
            2019-12-12 16:39:18 0 [Note] InnoDB: Row compressed page could be encrypted with key_version 1
            2019-12-12 16:39:18 0 [Note] InnoDB: Page [page id: space=5, page number=4] zip_decompress failure.
            

            While working on MDEV-12353, I noticed that we are still unnecessarily reading pages that would be completely initialized by the redo log (MDEV-12699). These unnecessary reads were mentioned in MDEV-20688. It is possible that the MDEV-20688 fix is failing to do something special to compressed pages.

            In any case, I think that we should try to modify buf_page_get_gen() so that it will avoid a read from the file if buffered redo log records for initializing the page exist. That could fix this failure. As part of that, perhaps we can revert the code change that was made in MDEV-20688.

            marko Marko Mäkelä added a comment - Related to this, we observed another failure on 10.4: encryption.innodb-redo-badkey 'ctr,innodb,strict_crc32' w1 [ fail ] … 2019-12-12 16:39:18 0 [Note] InnoDB: Row compressed page could be encrypted with key_version 1 2019-12-12 16:39:18 0 [Note] InnoDB: Page [page id: space=5, page number=4] zip_decompress failure. While working on MDEV-12353 , I noticed that we are still unnecessarily reading pages that would be completely initialized by the redo log ( MDEV-12699 ). These unnecessary reads were mentioned in MDEV-20688 . It is possible that the MDEV-20688 fix is failing to do something special to compressed pages. In any case, I think that we should try to modify buf_page_get_gen() so that it will avoid a read from the file if buffered redo log records for initializing the page exist. That could fix this failure. As part of that, perhaps we can revert the code change that was made in MDEV-20688 .

            On January 13, I got a similar failure locally in a 10.5-based MDEV-12353 development branch. In that crash, we failed to apply log to the clustered index root page (page number 3) of a ROW_FORMAT=COMPRESSED table, even though the page was fully initialized by redo log records.

            We have a call to buf_page_get_gen() before recv_recovery_from_checkpoint_finish() had been invoked. That is, the redo log recovery is running in parallel with the undo log recovery, and normally buf_page_get_gen() would apply log as it goes. But, in this case we should do better and avoid reading the page, extending the MDEV-12699 fix.

            Here is the call stack of the problematic call:

            #0  buf_page_get_gen (page_id=..., zip_size=2048, rw_latch=1, guess=0x0, 
                mode=10, 
                file=0x555556f45374 "/mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc", line=2993, mtr=0x7fffffff51b8, err=0x0, allow_ibuf_merge=false)
                at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0buf.cc:4174
            #1  0x0000555556a7354c in dict_load_table_one (name=..., 
                ignore_err=DICT_ERR_IGNORE_RECOVER_LOCK, 
                fk_tables=std::deque with 0 elements)
                at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc:2991
            #2  0x0000555556a71de2 in dict_load_table (name=0x55555852e078 "test/t3", 
                ignore_err=DICT_ERR_IGNORE_RECOVER_LOCK)
                at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc:2742
            #3  0x0000555556a745d2 in dict_load_table_on_id (table_id=20, 
                ignore_err=DICT_ERR_IGNORE_RECOVER_LOCK)
                at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc:3179
            #4  0x0000555556a5217a in dict_table_open_on_id_low (table_id=20, 
                ignore_err=DICT_ERR_IGNORE_RECOVER_LOCK, cached_only=false)
                at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0dict.cc:225
            #5  0x0000555556a52055 in dict_table_open_on_id (table_id=20, 
                dict_locked=false, table_op=DICT_TABLE_OP_LOAD_TABLESPACE, thd=0x0, 
                mdl=0x0)
                at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0dict.cc:933
            #6  0x000055555693fac0 in trx_resurrect_table_locks (trx=0x7ffff14c6138, 
                undo=0x555558513b90)
                at /mariadb/10.5-MDEV-12353/storage/innobase/trx/trx0trx.cc:612
            #7  0x000055555693f53d in trx_resurrect (undo=0x555558513b90, 
                rseg=0x555558513950, start_time=1578896797, start_time_micro=4761331065, 
                rows_to_undo=0x7fffffff6a08, is_old_insert=false)
                at /mariadb/10.5-MDEV-12353/storage/innobase/trx/trx0trx.cc:709
            #8  0x000055555693ea3a in trx_lists_init_at_db_start ()
                at /mariadb/10.5-MDEV-12353/storage/innobase/trx/trx0trx.cc:770
            #9  0x00005555568d5177 in srv_start (create_new_db=false)
                at /mariadb/10.5-MDEV-12353/storage/innobase/srv/srv0start.cc:1727
            

            Here is the stack trace for the read completion:

            #0  buf_page_io_complete (bpage=0x7ffff034ab60, dblwr=false, evict=false)
                at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0buf.cc:5862
            #1  0x0000555556a33fd5 in buf_read_page_low (err=0x7fffffff4384, sync=true, 
                mode=132, page_id=..., zip_size=2048, unzip=false, ignore=false)
                at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0rea.cc:198
            #2  0x0000555556a340c4 in buf_read_page (page_id=..., zip_size=2048)
                at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0rea.cc:400
            #3  0x00005555569e7cb5 in buf_page_get_gen (page_id=..., zip_size=2048, 
                rw_latch=1, guess=0x0, mode=10, 
                file=0x555556f45374 "/mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc", line=2993, mtr=0x7fffffff51b8, err=0x0, allow_ibuf_merge=false)
                at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0buf.cc:4330
            

            Note: It is possible that MDEV-16264 (MariaDB 10.5.1) changed buf_page_get_gen() so that it will invoke a synchronous read, instead of switching to a separate I/O handler thread and back.

            I think that we must add some logic to buf_page_get_gen(), to give recovery a chance to initialize the page. That would likely require introducing another function. The code path should be similar to the one where recv_apply_hashed_log_recs() has invoked buf_page_create(). The new function should return a status, indicating whether the page read can be skipped. (If yes, then the page would have been recovered when the call returns to buf_page_get_gen().)

            marko Marko Mäkelä added a comment - On January 13, I got a similar failure locally in a 10.5-based MDEV-12353 development branch. In that crash, we failed to apply log to the clustered index root page (page number 3) of a ROW_FORMAT=COMPRESSED table, even though the page was fully initialized by redo log records. We have a call to buf_page_get_gen() before recv_recovery_from_checkpoint_finish() had been invoked. That is, the redo log recovery is running in parallel with the undo log recovery, and normally buf_page_get_gen() would apply log as it goes. But, in this case we should do better and avoid reading the page, extending the MDEV-12699 fix. Here is the call stack of the problematic call: #0 buf_page_get_gen (page_id=..., zip_size=2048, rw_latch=1, guess=0x0, mode=10, file=0x555556f45374 "/mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc", line=2993, mtr=0x7fffffff51b8, err=0x0, allow_ibuf_merge=false) at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0buf.cc:4174 #1 0x0000555556a7354c in dict_load_table_one (name=..., ignore_err=DICT_ERR_IGNORE_RECOVER_LOCK, fk_tables=std::deque with 0 elements) at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc:2991 #2 0x0000555556a71de2 in dict_load_table (name=0x55555852e078 "test/t3", ignore_err=DICT_ERR_IGNORE_RECOVER_LOCK) at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc:2742 #3 0x0000555556a745d2 in dict_load_table_on_id (table_id=20, ignore_err=DICT_ERR_IGNORE_RECOVER_LOCK) at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc:3179 #4 0x0000555556a5217a in dict_table_open_on_id_low (table_id=20, ignore_err=DICT_ERR_IGNORE_RECOVER_LOCK, cached_only=false) at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0dict.cc:225 #5 0x0000555556a52055 in dict_table_open_on_id (table_id=20, dict_locked=false, table_op=DICT_TABLE_OP_LOAD_TABLESPACE, thd=0x0, mdl=0x0) at /mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0dict.cc:933 #6 0x000055555693fac0 in trx_resurrect_table_locks (trx=0x7ffff14c6138, undo=0x555558513b90) at /mariadb/10.5-MDEV-12353/storage/innobase/trx/trx0trx.cc:612 #7 0x000055555693f53d in trx_resurrect (undo=0x555558513b90, rseg=0x555558513950, start_time=1578896797, start_time_micro=4761331065, rows_to_undo=0x7fffffff6a08, is_old_insert=false) at /mariadb/10.5-MDEV-12353/storage/innobase/trx/trx0trx.cc:709 #8 0x000055555693ea3a in trx_lists_init_at_db_start () at /mariadb/10.5-MDEV-12353/storage/innobase/trx/trx0trx.cc:770 #9 0x00005555568d5177 in srv_start (create_new_db=false) at /mariadb/10.5-MDEV-12353/storage/innobase/srv/srv0start.cc:1727 Here is the stack trace for the read completion: #0 buf_page_io_complete (bpage=0x7ffff034ab60, dblwr=false, evict=false) at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0buf.cc:5862 #1 0x0000555556a33fd5 in buf_read_page_low (err=0x7fffffff4384, sync=true, mode=132, page_id=..., zip_size=2048, unzip=false, ignore=false) at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0rea.cc:198 #2 0x0000555556a340c4 in buf_read_page (page_id=..., zip_size=2048) at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0rea.cc:400 #3 0x00005555569e7cb5 in buf_page_get_gen (page_id=..., zip_size=2048, rw_latch=1, guess=0x0, mode=10, file=0x555556f45374 "/mariadb/10.5-MDEV-12353/storage/innobase/dict/dict0load.cc", line=2993, mtr=0x7fffffff51b8, err=0x0, allow_ibuf_merge=false) at /mariadb/10.5-MDEV-12353/storage/innobase/buf/buf0buf.cc:4330 Note: It is possible that MDEV-16264 (MariaDB 10.5.1) changed buf_page_get_gen() so that it will invoke a synchronous read, instead of switching to a separate I/O handler thread and back. I think that we must add some logic to buf_page_get_gen() , to give recovery a chance to initialize the page. That would likely require introducing another function. The code path should be similar to the one where recv_apply_hashed_log_recs() has invoked buf_page_create() . The new function should return a status, indicating whether the page read can be skipped. (If yes, then the page would have been recovered when the call returns to buf_page_get_gen() .)

            Patch is in bb-10.2-thiru.

            thiru Thirunarayanan Balathandayuthapani added a comment - Patch is in bb-10.2-thiru.

            The revised patch is OK to push after testing, and after fixing some formatting.

            marko Marko Mäkelä added a comment - The revised patch is OK to push after testing, and after fixing some formatting.

            Results of RQG testing on origin/bb-10.2-thiru c87be18dc3fcc0e85115f427033468cab639dc8f 2020-03-20T18:41:46+05:30 compiled with debug
            1. No not yet known SEGV's or asserts
            2. There is some significant fraction of tests failing with
                1932: Table .... doesn't exist in engine.
                All of the corresponding tests contained DDL. None of the DML only tests failed with that.
                 And it is a known fact that DDL is not crash safe/atomic. == actual 10.2 shows that too
            IMHO bb-10.2-thiru is ok
            

            mleich Matthias Leich added a comment - Results of RQG testing on origin/bb-10.2-thiru c87be18dc3fcc0e85115f427033468cab639dc8f 2020-03-20T18:41:46+05:30 compiled with debug 1. No not yet known SEGV's or asserts 2. There is some significant fraction of tests failing with 1932: Table .... doesn't exist in engine. All of the corresponding tests contained DDL. None of the DML only tests failed with that. And it is a known fact that DDL is not crash safe/atomic. == actual 10.2 shows that too IMHO bb-10.2-thiru is ok

            People

              thiru Thirunarayanan Balathandayuthapani
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.