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

Checksum errors on restart when killing busy instance that uses encrypted XtraDB tables with <10.1.13

    XMLWordPrintable

Details

    • 10.1.11, 10.1.12, 10.1.13

    Description

      When using encrypted XtraDB tables there is a "good" chance to run into checksum errors in recovery when killing mysqld hard after large inserts on a table (e.g. restoring a mysqldump or doing a large INSERT ... SELECT).

      How to reproduce:

      • enable encryption by default
      • insert a lot of data
      • "killall -9 mysqld" right afterwards while changed tablespace data is still written back to disk
      • in about 1 of 3 cases I got a page checksum error when restarting the server

      e.g.:

      2016-01-14 16:04:47 139797272356736 [Note] InnoDB: Starting crash recovery.
      2016-01-14 16:04:47 139797272356736 [Note] InnoDB: Reading tablespace information from the .ibd files...
      2016-01-14 16:04:47 139797272356736 [Note] InnoDB: Restoring possible half-written data pages
      2016-01-14 16:04:47 139797272356736 [Note] InnoDB: from the doublewrite buffer...
      InnoDB: Doing recovery: scanned up to log sequence number 34316812800
      InnoDB: Doing recovery: scanned up to log sequence number 34322055680
      InnoDB: Doing recovery: scanned up to log sequence number 34327298560
      InnoDB: Doing recovery: scanned up to log sequence number 34332541440
      InnoDB: Doing recovery: scanned up to log sequence number 34337784320
      InnoDB: Doing recovery: scanned up to log sequence number 34343027200
      InnoDB: Doing recovery: scanned up to log sequence number 34348270080
      InnoDB: Doing recovery: scanned up to log sequence number 34353512960
      BROKEN: block: 67102352 checkpoint: 1119 4d783007 94202545
      BROKEN: block: 67102352 checkpoint: 1119 4d783007 94202545
      InnoDB: Log block no 67102352 at lsn 34356403712 has
      InnoDB: ok header, but checksum field contains 2485134661, should be 1299722247
      2016-01-14 16:04:48 139797272356736 [ERROR] InnoDB: Redo log crypto: failed to decrypt log block. Reason could be that requested key version is not found, required encryption key management plugin is not found or configured encryption algorithm and/or method does not match.
      2016-01-14 16:04:48 139797272356736 [ERROR] Plugin 'InnoDB' init function returned error.
      2016-01-14 16:04:48 139797272356736 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
      2016-01-14 16:04:48 139797272356736 [Note] Plugin 'FEEDBACK' is disabled.
      2016-01-14 16:04:48 139797272356736 [ERROR] Unknown/unsupported storage engine: InnoDB
      2016-01-14 16:04:48 139797272356736 [ERROR] Aborting

      Full dump of crashed instance base- and datadir is in http://php-groupies.de/encryption-crash.tar.gz (~8GB)

      Attachments

        Issue Links

          Activity

            People

              jplindst Jan Lindström (Inactive)
              jplindst Jan Lindström (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              3 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.