Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-13396

[Server] Enhance "Troubleshoot Replica Sets" with invalid MinValidDocument remediation details

    XMLWordPrintableJSON

Details

    Description

      Description

      When migrating from 3.4 to 3.6, some customers can experience an error on their SECONDARY nodes due to a replset.minvalid document:

      2020-02-05T12:04:58.394+0000 I - [initandlisten] Detected data files in /var/lib/mongodb created by the ‘mmapv1’ storage engine, so setting the active storage engine to ‘mmapv1’.
      2020-02-05T12:04:58.403+0000 I JOURNAL [initandlisten] journal dir=/var/lib/mongodb/journal
      2020-02-05T12:04:58.403+0000 I JOURNAL [initandlisten] recover : no journal files present, no recovery needed
      2020-02-05T12:04:58.404+0000 I JOURNAL [durability] Durability thread started
      2020-02-05T12:04:58.405+0000 I JOURNAL [journal writer] Journal writer thread started
      2020-02-05T12:04:58.405+0000 I CONTROL [initandlisten]
      2020-02-05T12:04:58.405+0000 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
      2020-02-05T12:04:58.405+0000 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
      2020-02-05T12:04:58.405+0000 I CONTROL [initandlisten]
      2020-02-05T12:04:58.913+0000 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory ‘/var/lib/mongodb/diagnostic.data’
      2020-02-05T12:04:58.984+0000 I REPL [initandlisten] Did not find local initialized voted for document at startup.
      2020-02-05T12:04:58.985+0000 I REPL [initandlisten] Did not find local Rollback ID document at startup. Creating one.
      2020-02-05T12:04:58.985+0000 I STORAGE [initandlisten] createCollection: local.system.rollback.id with no UUID.
      2020-02-05T12:04:58.986+0000 I REPL [initandlisten] Initialized the rollback ID to 1
      2020-02-05T12:04:59.032+0000 F REPL [initandlisten] Caught exception during replication recovery: Location40415: BSON field ‘MinValidDocument.h’ is an unknown field.
      2020-02-05T12:04:59.032+0000 F - [initandlisten] terminate() called. An exception is active; attempting to gather more information
      2020-02-05T12:04:59.055+0000 F - [initandlisten] DBException::toString(): Location40415: BSON field ‘MinValidDocument.h’ is an unknown field.
      Actual exception type: mongo::error_details::throwExceptionForStatus(mongo::Status const&)::NonspecificAssertionException
      

      Scope of changes

      Add a section to https://docs.mongodb.com/manual/tutorial/troubleshoot-replica-sets/ that outlines:

      1. how to identify the replset.minvalid contains invalid docs

      db.getSiblingDB("local").replset.minvalid.find({}, { _id: 0, h: 1, op: 1, ns: 1, o: 1 })
      

      If the query displays any values then step 2 will be necessary

      2. how to update the docs:

      db.getSiblingDB("local").replset.minvalid.update({},{$unset:{h:"",op:"",ns:"",o:""}})
      

      Impact to Other Docs

      MVP (Work and Date)

      Resources (Scope or Design Docs, Invision, etc.)

      Attachments

        Activity

          People

            Unassigned Unassigned
            alex.bevilacqua@mongodb.com Alex Bevilacqua
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:
              44 weeks, 6 days ago