An encryption test failed on a mandatory builder:
10.5 c8346c0bacfdbe3fd61c67becff9934e75e08ed3
|
encryption.innodb-redo-nokeys 'ctr,innodb' w12 [ fail ]
|
...
|
2023-12-08 7:46:08 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=53205,1435867
|
2023-12-08 7:46:08 0 [ERROR] InnoDB: Recovery cannot access file ./test/t1.ibd (tablespace 5)
|
2023-12-08 7:46:08 0 [Note] InnoDB: You may set innodb_force_recovery=1 to ignore this and possibly get a corrupted database.
|
mariadbd: /home/buildbot/amd64-ubuntu-2204-debug-ps/build/storage/innobase/log/log0recv.cc:3510: dberr_t recv_recovery_from_checkpoint_start(lsn_t): Assertion `!recv_sys.found_corrupt_fs' failed.
|
This is reproducible also when attempting to start up 10.6 on a copy of the data directory (data.tar.xz
).
The code path that outputs the error message when processing a FILE_MODIFY record will also set recv_sys.found_corrupt_fs. This is triggered by a fil_ibd_load() return value FIL_LOAD_INVALID because of missing encryption information:
if (crypt_data && !crypt_data->is_key_found()) {
|
crypt_data->~fil_space_crypt_t();
|
ut_free(crypt_data);
|
return FIL_LOAD_INVALID;
|
}
|
In 10.6 the code is different:
if (crypt_data && !fil_crypt_check(crypt_data, filename)) {
|
return FIL_LOAD_INVALID;
|
}
|
All we need to do is to relax the too strict debug assertion:
diff --git a/storage/innobase/log/log0recv.cc b/storage/innobase/log/log0recv.cc
|
index d52a62cec99..05120871b0a 100644
|
--- a/storage/innobase/log/log0recv.cc
|
+++ b/storage/innobase/log/log0recv.cc
|
@@ -3507,7 +3507,7 @@ recv_recovery_from_checkpoint_start(lsn_t flush_lsn)
|
recv_group_scan_log_recs(checkpoint_lsn, &contiguous_lsn, false);
|
/* The first scan should not have stored or applied any records. */
|
ut_ad(recv_sys.pages.empty());
|
- ut_ad(!recv_sys.found_corrupt_fs);
|
+ ut_ad(!recv_sys.found_corrupt_fs || !srv_force_recovery);
|
|
if (srv_read_only_mode && recv_needed_recovery) {
|
mysql_mutex_unlock(&log_sys.mutex);
|
In this way, the server startup will fail gracefully, just like it is expected by the test:
10.5 c8346c0bacfdbe3fd61c67becff9934e75e08ed3 with patch
|
2023-12-08 10:47:50 0 [Note] InnoDB: Starting crash recovery from checkpoint LSN=53205,1435867
|
2023-12-08 10:47:50 0 [ERROR] InnoDB: Recovery cannot access file ./test/t1.ibd (tablespace 5)
|
2023-12-08 10:47:50 0 [Note] InnoDB: You may set innodb_force_recovery=1 to ignore this and possibly get a corrupted database.
|
2023-12-08 10:47:50 0 [ERROR] InnoDB: Missing FILE_CHECKPOINT at 1435867 between the checkpoint 53205 and the end 1501184.
|
2023-12-08 10:47:50 0 [ERROR] InnoDB: Plugin initialization aborted at srv0start.cc[1480] with error Generic error
|
2023-12-08 10:47:50 0 [Note] InnoDB: Starting shutdown...
|
2023-12-08 10:47:51 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
|
In 10.8, the log format was changed and the logic around FILE_CHECKPOINT was rewritten in MDEV-14425. We would still invoke fil_name_process() on the FILE_MODIFY records, and recv_sys.found_corrupt_fs could be set for a similar reason, but there is no assertion failure in recv_recovery_from_checkpoint_start() after the initial call to recv_scan_log(). In our CI systems, I only found this type of failure on the 10.5 and 10.6 branches.
- relates to
-
MDEV-14425
Change the InnoDB redo log format to reduce write amplification
-
-
Closed
Transition |
Time In Source Status |
Execution Times |
Open |
|
In Progress |
|
7s
|
1
|
In Progress |
|
Closed |
|
1h 8m
|
1
|
{"report":{"fcp":993.2999999523163,"ttfb":299.89999997615814,"pageVisibility":"visible","entityId":126840,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":0.5,"journeyId":"54ef33c9-b102-411e-9778-b352edf39271","navigationType":0,"readyForUser":1086.3999999761581,"redirectCount":0,"resourceLoadedEnd":1137.5999999642372,"resourceLoadedStart":304.89999997615814,"resourceTiming":[{"duration":171.39999997615814,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":304.89999997615814,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":304.89999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":476.2999999523163,"responseStart":0,"secureConnectionStart":0},{"duration":171.4000000357628,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/css/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true","startTime":305.0999999642372,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":305.0999999642372,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":476.5,"responseStart":0,"secureConnectionStart":0},{"duration":191.80000001192093,"initiatorType":"script","name":"https://jira.mariadb.org/s/fbf975c0cce4b1abf04784eeae9ba1f4-CDN/lu2bu7/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":305.2999999523163,"connectEnd":305.2999999523163,"connectStart":305.2999999523163,"domainLookupEnd":305.2999999523163,"domainLookupStart":305.2999999523163,"fetchStart":305.2999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":305.2999999523163,"responseEnd":497.0999999642372,"responseStart":497.0999999642372,"secureConnectionStart":305.2999999523163},{"duration":264.69999998807907,"initiatorType":"script","name":"https://jira.mariadb.org/s/099b33461394b8015fc36c0a4b96e19f-CDN/lu2bu7/820016/12ta74/8679b4946efa1a0bb029a3a22206fb5d/_/download/contextbatch/js/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true","startTime":305.39999997615814,"connectEnd":305.39999997615814,"connectStart":305.39999997615814,"domainLookupEnd":305.39999997615814,"domainLookupStart":305.39999997615814,"fetchStart":305.39999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":305.39999997615814,"responseEnd":570.0999999642372,"responseStart":570.0999999642372,"secureConnectionStart":305.39999997615814},{"duration":268,"initiatorType":"script","name":"https://jira.mariadb.org/s/94c15bff32baef80f4096a08aceae8bc-CDN/lu2bu7/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":305.69999998807907,"connectEnd":305.69999998807907,"connectStart":305.69999998807907,"domainLookupEnd":305.69999998807907,"domainLookupStart":305.69999998807907,"fetchStart":305.69999998807907,"redirectEnd":0,"redirectStart":0,"requestStart":305.69999998807907,"responseEnd":573.6999999880791,"responseStart":573.6999999880791,"secureConnectionStart":305.69999998807907},{"duration":268.30000001192093,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":305.7999999523163,"connectEnd":305.7999999523163,"connectStart":305.7999999523163,"domainLookupEnd":305.7999999523163,"domainLookupStart":305.7999999523163,"fetchStart":305.7999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":305.7999999523163,"responseEnd":574.0999999642372,"responseStart":574.0999999642372,"secureConnectionStart":305.7999999523163},{"duration":268.39999997615814,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":306,"connectEnd":306,"connectStart":306,"domainLookupEnd":306,"domainLookupStart":306,"fetchStart":306,"redirectEnd":0,"redirectStart":0,"requestStart":306,"responseEnd":574.3999999761581,"responseStart":574.3999999761581,"secureConnectionStart":306},{"duration":331.89999997615814,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2bu7/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":306.19999998807907,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":306.19999998807907,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":638.0999999642372,"responseStart":0,"secureConnectionStart":0},{"duration":268.80000001192093,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":306.2999999523163,"connectEnd":306.2999999523163,"connectStart":306.2999999523163,"domainLookupEnd":306.2999999523163,"domainLookupStart":306.2999999523163,"fetchStart":306.2999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":306.2999999523163,"responseEnd":575.0999999642372,"responseStart":575.0999999642372,"secureConnectionStart":306.2999999523163},{"duration":331.60000002384186,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.css?jira.create.linked.issue=true","startTime":306.5999999642372,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":306.5999999642372,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":638.1999999880791,"responseStart":0,"secureConnectionStart":0},{"duration":269,"initiatorType":"script","name":"https://jira.mariadb.org/s/3339d87fa2538a859872f2df449bf8d0-CDN/lu2bu7/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.js?jira.create.linked.issue=true&locale=en","startTime":306.69999998807907,"connectEnd":306.69999998807907,"connectStart":306.69999998807907,"domainLookupEnd":306.69999998807907,"domainLookupStart":306.69999998807907,"fetchStart":306.69999998807907,"redirectEnd":0,"redirectStart":0,"requestStart":306.69999998807907,"responseEnd":575.6999999880791,"responseStart":575.6999999880791,"secureConnectionStart":306.69999998807907},{"duration":546.6999999880791,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":316.39999997615814,"connectEnd":316.39999997615814,"connectStart":316.39999997615814,"domainLookupEnd":316.39999997615814,"domainLookupStart":316.39999997615814,"fetchStart":316.39999997615814,"redirectEnd":0,"redirectStart":0,"requestStart":316.39999997615814,"responseEnd":863.0999999642372,"responseStart":863.0999999642372,"secureConnectionStart":316.39999997615814},{"duration":820.3999999761581,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2bu7/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":317.19999998807907,"connectEnd":317.19999998807907,"connectStart":317.19999998807907,"domainLookupEnd":317.19999998807907,"domainLookupStart":317.19999998807907,"fetchStart":317.19999998807907,"redirectEnd":0,"redirectStart":0,"requestStart":317.19999998807907,"responseEnd":1137.5999999642372,"responseStart":1137.5999999642372,"secureConnectionStart":317.19999998807907},{"duration":214.20000004768372,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":649.2999999523163,"connectEnd":649.2999999523163,"connectStart":649.2999999523163,"domainLookupEnd":649.2999999523163,"domainLookupStart":649.2999999523163,"fetchStart":649.2999999523163,"redirectEnd":0,"redirectStart":0,"requestStart":649.2999999523163,"responseEnd":863.5,"responseStart":863.5,"secureConnectionStart":649.2999999523163}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":121,"responseStart":300,"responseEnd":317,"domLoading":303,"domInteractive":1201,"domContentLoadedEventStart":1201,"domContentLoadedEventEnd":1247,"domComplete":2050,"loadEventStart":2051,"loadEventEnd":2051,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":1174.5999999642372},{"name":"bigPipe.sidebar-id.end","time":1175.8999999761581},{"name":"bigPipe.activity-panel-pipe-id.start","time":1176},{"name":"bigPipe.activity-panel-pipe-id.end","time":1177.0999999642372},{"name":"activityTabFullyLoaded","time":1260.8999999761581}],"measures":[],"correlationId":"e8e1eb93b55a18","effectiveType":"4g","downlink":9.4,"rtt":0,"serverDuration":111,"dbReadsTimeInMs":15,"dbConnsTimeInMs":28,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}