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

Add variable rocksdb_ignore_error to skip error at startup

Details

    Description

      In some cases error avoids to let RocksDB start.
      In this cases the only options is to restore a full backup , even if
      the error is not critical like

      [ERROR] RocksDB: Could not get index information for Index Number, (x,x) , table tablename
      [ERROR] RocksDB: Failed to initialize DDL mananger
      [ERROR] Plugin 'ROCKSDBĂ„ init function returned error.

      So in some cases there should be a possibility to skip the error.

      Suggestion:
      Add variable

      rocksdb_ignore_error

      Simple Version wood be a boolean, maybe it makes also sense to create a ENUM for different error types.
      Certainly default should be 0 or 'NONE'

      Attachments

        Activity

          psergei Sergei Petrunia added a comment - - edited

          Ok, the variable is named rocksdb_ignore_datadic_errors.

          It can be only set as a server argument or in my.cnf.
          Setting rocksdb_ignore_datadic_errors=1 will make the plugin to try to continue when seeing a class of MyRocks data dictionary errors that were experienced by the customer. (Note that this is NOT all kinds of errors. It is only "index definition is missing" error that can occur when a pre-10.6 server crashes in the middle of a DDL, as well as startup sanity check failure).

          - If somebody wonders why these errors are now ignored and others are not: The issue is that some errors are hard to ignore. So I've picked a subset that is trivial to handle and is what we've observed in the customer' reports.

          psergei Sergei Petrunia added a comment - - edited Ok, the variable is named rocksdb_ignore_datadic_errors . It can be only set as a server argument or in my.cnf. Setting rocksdb_ignore_datadic_errors=1 will make the plugin to try to continue when seeing a class of MyRocks data dictionary errors that were experienced by the customer. (Note that this is NOT all kinds of errors. It is only "index definition is missing" error that can occur when a pre-10.6 server crashes in the middle of a DDL, as well as startup sanity check failure ). - If somebody wonders why these errors are now ignored and others are not: The issue is that some errors are hard to ignore. So I've picked a subset that is trivial to handle and is what we've observed in the customer' reports.

          The branch with the fix is 10.4.13-7-myrocks-fixes in the Enterprise repo.

          psergei Sergei Petrunia added a comment - The branch with the fix is 10.4.13-7-myrocks-fixes in the Enterprise repo.
          psergei Sergei Petrunia added a comment - https://github.com/mariadb-corporation/MariaDBEnterprise/tree/10.4.13-7-myrocks-fixes

          People

            psergei Sergei Petrunia
            Richard Richard Stracke
            Votes:
            1 Vote for this issue
            Watchers:
            8 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.