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

add option to mtr to start mariabackup under rr

Details

    Description

      Adding such option would be useful for debug purposes. See suggested fix here: https://github.com/MariaDB/server/tree/10.6-MDEV-28607-rr-backup.

      Attachments

        Activity

          this should be implemented in My::Debugger and work for all debuggers and all tools ($MYSQL, etc)

          serg Sergei Golubchik added a comment - this should be implemented in My::Debugger and work for all debuggers and all tools ($MYSQL, etc)

          There is one additional consideration for 10.8 and later releases. Quoting a comment in MDEV-14425:

          An observation was made during testing: rr record mariadb-backup --backup cannot work reliably if the redo log file was opened via mmap(). The reason is that rr assumes that the mmap file contents may only be changed by the traced process(es). To avoid bogus failures while running backup under rr, there are a few solutions:

          • Build without libpmem: rm CMakeCache.txt; cmake -DCMAKE_DISABLE_FIND_PACKAGE_PMEM=1 /path/to/source
          • Place the server’s redo log somewhere else than /dev/shm or a PMEM device mounted with -o dax.
          • Patch log_t::attach() so that mmap() will not be attempted if srv_operation == SRV_OPERATION_BACKUP.
          • Implement server-side backup (MDEV-14992).

          One more (probably impractical) alternative would be to trace both the server and the backup process in a single rr record process.

          marko Marko Mäkelä added a comment - There is one additional consideration for 10.8 and later releases. Quoting a comment in MDEV-14425 : An observation was made during testing: rr record mariadb-backup --backup cannot work reliably if the redo log file was opened via mmap() . The reason is that rr assumes that the mmap file contents may only be changed by the traced process(es) . To avoid bogus failures while running backup under rr , there are a few solutions: Build without libpmem : rm CMakeCache.txt; cmake -DCMAKE_DISABLE_FIND_PACKAGE_PMEM=1 /path/to/source Place the server’s redo log somewhere else than /dev/shm or a PMEM device mounted with -o dax . Patch log_t::attach() so that mmap() will not be attempted if srv_operation == SRV_OPERATION_BACKUP . Implement server-side backup ( MDEV-14992 ). One more (probably impractical) alternative would be to trace both the server and the backup process in a single rr record process.

          People

            vlad.lesin Vladislav Lesin
            vlad.lesin Vladislav Lesin
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.