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

MariaBackup logs "[ERROR]" on Invalid log block checksum despite retrying and succeeding later. Could this be changed to "[Warning]" unless it can no longer retry?

    XMLWordPrintable

    Details

      Description

      2020-12-15 20:38:03 0 [ERROR] InnoDB: Invalid log block checksum. block: 811904837 checkpoint no: 10978 expected: 3929835436 found: 881240600
      

      This causes user confusion because it is a transient error that can be retried and overcome. Per Marko: {
      --backup will invoke the function in a loop:

      for (int retries= 0; retries < 100; retries++) {
          if (log_sys.log.read_log_seg(&lsn, end_lsn)
          || lsn != start_lsn) {
              break;
          }
          msg("Retrying read of log at LSN=" LSN_PF, lsn);
          my_sleep(1000);
      }
      

      If the function log_t::files::read_log_seg() fails, it will display the message:

      ib::error() << "Invalid log block checksum."
      << " block: " << block_number
      << " checkpoint no: "
      << log_block_get_checkpoint_no(buf)
      << " expected: " << crc
      << " found: " << cksum;
      

      If you are also seeing the "Retrying read of log" message, there should be nothing to worry about. Due to the inter-process communication via the file system, Mariabackup must be prepared to retry reading data pages (innodb_page_size bytes) or log blocks (512 bytes) that appear corrupted.
      }

      So could this be changed to a [Warning] until it stops retrying?

        Attachments

          Activity

            People

            Assignee:
            wlad Vladislav Vaintroub
            Reporter:
            juan.vera Juan
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: