Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-31025

dbCheck will cause rollback to abort

    XMLWordPrintable

Details

    • Task
    • Status: Backlog
    • Major - P3
    • Resolution: Unresolved
    • 3.5.12
    • None
    • Storage

    Description

      The dbcheck oplog type OplogEntry::CommandType::kDbCheck is currently not supported by rollback, so attempting to roll back a dbCheck will cause rollback to terminate.

      [js_test:rollback_test_1504934424_0-dbCheckFassert] 2017-09-11T10:49:45.679-0400 d20013| 2017-09-11T10:49:45.678-0400 F ROLLBACK [rsBackgroundSync] Unable to complete rollback. A full resync may be needed: UnrecoverableRollbackError: need to rollback, but unable to determine common point between local and remote oplog: Can't roll back this command yet:  cmdname = dbCheck
      [js_test:rollback_test_1504934424_0-dbCheckFassert] 2017-09-11T10:49:45.679-0400 d20013| 2017-09-11T10:49:45.678-0400 F -        [rsBackgroundSync] Fatal Assertion 40507 at src/mongo/db/repl/rs_rollback.cpp 1459
      

      The correct behavior should be to make dbCheck a no-op during rollback similar to dropDatabase, as dbCheck commands do not need to be rolled back.

      Attachments

        Issue Links

          Activity

            People

              backlog-server-repl Backlog - Replication Team
              robert.guo@mongodb.com Robert Guo
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated: