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

MariaDB slow start after crash recovery

    Details

      Description

      If InnoDB crash recovery was needed, the InnoDB function srv_start() would invoke extra validation:

      			bool validate = recv_needed_recovery
      				&& srv_force_recovery == 0;
       
      			dict_check_tablespaces_and_store_max_id(validate);
      

      This time-consuming validation (reading something from every InnoDB data file) should be unnecessary now that RENAME operations inside InnoDB are crash-safe (MDEV-14717).

      The validation can be skipped by setting innodb_force_recovery=1, but that setting will also cause InnoDB crash recovery to turn a blind eye on some problems, such as data files missing, and redo log for missing files being skipped.

      We should skip the extra validation in MariaDB 10.3 onwards. In MariaDB 10.2 we can skip it unless the compatibility setting innodb_safe_truncate=OFF is active.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                marko Marko Mäkelä
                Reporter:
                marko Marko Mäkelä
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: