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

dbCheck will cause rollback to abort

    • Type: Icon: Task Task
    • Resolution: Won't Do
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 3.5.12
    • Component/s: Storage
    • Labels:
    • Replication

      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.

            Assignee:
            backlog-server-repl [DO NOT USE] Backlog - Replication Team
            Reporter:
            robert.guo@mongodb.com Robert Guo (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: