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

Passing featureFlagRequireTenantID to a fresh uninitialized replica set crashes

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 6.1.0-rc0, 6.2.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Fully Compatible
    • ALL
    • Server Serverless 2022-08-22, Server Serverless 2022-09-05

      On passing the feature flag featureFlagRequireTenantID as a startup parameter to an uninitialized replica-set, the primary crashes on the following invariant and backtrace.

      Invariant: 

      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.080+00:00"}
      ,"s":"F", "c":"ASSERT", "id":23079, "ctx":"initandlisten","msg":"Invariant failure","attr":{"expr":"isVersionInitialized()","file":"src/mongo/db/server_options.h","line":156}}
       
      

       

      Backtrace:

      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.300+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776E19B6","b":"7F7677124000","o":"5BD9B6","s":"_ZN5mongo18stack_trace_detail12_GLOBAL__N_122LibunwindStepIterationC2ERNS_14StackTraceSinkE","C":"mongo::stack_trace_detail::(anonymous namespace)::LibunwindStepIteration::LibunwindStepIteration(mongo::StackTraceSink&)","s+":"76"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.300+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776E1267","b":"7F7677124000","o":"5BD267","s":"_ZN5mongo18stack_trace_detail12_GLOBAL__N_119printStackTraceImplERKNS1_7OptionsEPNS_14StackTraceSinkE","C":"mongo::stack_trace_detail::(anonymous namespace)::printStackTraceImpl(mongo::stack_trace_detail::(anonymous namespace)::Options const&, mongo::StackTraceSink*)","s+":"87"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776E16E6","b":"7F7677124000","o":"5BD6E6","s":"_ZN5mongo15printStackTraceEv","C":"mongo::printStackTrace()","s+":"36"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776D5094","b":"7F7677124000","o":"5B1094","s":"_ZN5mongo12_GLOBAL__N_126printStackTraceNoRecursionEv","C":"mongo::(anonymous namespace)::printStackTraceNoRecursion()","s+":"34"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776D4820","b":"7F7677124000","o":"5B0820","s":"_ZN5mongo12_GLOBAL__N_123printSignalAndBacktraceEi","C":"mongo::(anonymous namespace)::printSignalAndBacktrace(int)","s+":"70"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776D4424","b":"7F7677124000","o":"5B0424","s":"abruptQuit","s+":"44"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776D495B","b":"7F7677124000","o":"5B095B","s":"abruptQuitAction","s+":"1B"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76750FB8A0","b":"7F76750E9000","o":"128A0","s":"funlockfile","s+":"50"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F7674D36F47","b":"7F7674CF8000","o":"3EF47","s":"gsignal","s+":"C7"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F7674D388B1","b":"7F7674CF8000","o":"408B1","s":"abort","s+":"141"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776A89AB","b":"7F7677124000","o":"5849AB","s":"_ZN5mongo12_GLOBAL__N_19callAbortEv","C":"mongo::(anonymous namespace)::callAbort()","s+":"2B"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76776A87A3","b":"7F7677124000","o":"5847A3","s":"_ZN5mongo15invariantFailedEPKcS1_j","C":"mongo::invariantFailed(char const*, char const*, unsigned int)","s+":"243"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F767753D08C","b":"7F7677124000","o":"41908C","s":"_ZN5mongo21invariantWithLocationIbEEvRKT_PKcS5_j","C":"void mongo::invariantWithLocation<bool>(bool const&, char const*, char const*, unsigned int)","s+":"3C"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.301+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F7673703468","b":"7F7673351000","o":"3B2468","s":"_ZNK5mongo18ServerGlobalParams20FeatureCompatibility10getVersionEv","C":"mongo::ServerGlobalParams::FeatureCompatibility::getVersion() const","s+":"48"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F766994938C","b":"7F76698AB000","o":"9E38C","s":"_ZNK5mongo18ServerGlobalParams20FeatureCompatibility22isGreaterThanOrEqualToENS_12multiversion27FeatureCompatibilityVersionEPS3_","C":"mongo::ServerGlobalParams::FeatureCompatibility::isGreaterThanOrEqualTo(mongo::multiversion::FeatureCompatibilityVersion, mongo::multiversion::FeatureCompatibilityVersion*) const","s+":"1C"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F7658EC241E","b":"7F7658EB1000","o":"1141E","s":"_ZNK5mongo11FeatureFlag9isEnabledERKNS_18ServerGlobalParams20FeatureCompatibilityE","C":"mongo::FeatureFlag::isEnabled(mongo::ServerGlobalParams::FeatureCompatibility const&) const","s+":"3E"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F766FAB9695","b":"7F766F9D8000","o":"E1695","s":"_ZNR5mongo4repl17MutableOplogEntry6setTidEN5boost8optionalINS_8TenantIdEEE","C":"mongo::repl::MutableOplogEntry::setTid(boost::optional<mongo::TenantId>) &","s+":"45"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F766FAAA048","b":"7F766F9D8000","o":"D2048","s":"_ZN5mongo14OpObserverImpl18onCreateCollectionEPNS_16OperationContextERKNS_13CollectionPtrERKNS_15NamespaceStringERKNS_17CollectionOptionsERKNS_7BSONObjERKNS_4repl6OpTimeEb","C":"mongo::OpObserverImpl::onCreateCollection(mongo::OperationContext*, mongo::CollectionPtr const&, mongo::NamespaceString const&, mongo::CollectionOptions const&, mongo::BSONObj const&, mongo::repl::OpTime const&, bool)","s+":"238"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F767680056D","b":"7F767663D000","o":"1C356D","s":"_ZN5mongo18OpObserverRegistry18onCreateCollectionEPNS_16OperationContextERKNS_13CollectionPtrERKNS_15NamespaceStringERKNS_17CollectionOptionsERKNS_7BSONObjERKNS_4repl6OpTimeEb","C":"mongo::OpObserverRegistry::onCreateCollection(mongo::OperationContext*, mongo::CollectionPtr const&, mongo::NamespaceString const&, mongo::CollectionOptions const&, mongo::BSONObj const&, mongo::repl::OpTime const&, bool)","s+":"ED"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F765B1C7834","b":"7F765AEEA000","o":"2DD834","s":"_ZNK5mongo12DatabaseImpl16createCollectionEPNS_16OperationContextERKNS_15NamespaceStringERKNS_17CollectionOptionsEbRKNS_7BSONObjEb","C":"mongo::DatabaseImpl::createCollection(mongo::OperationContext*, mongo::NamespaceString const&, mongo::CollectionOptions const&, bool, mongo::BSONObj const&, bool) const","s+":"1244"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F765B1C8E68","b":"7F765AEEA000","o":"2DEE68","s":"_ZNK5mongo12DatabaseImpl12userCreateNSEPNS_16OperationContextERKNS_15NamespaceStringENS_17CollectionOptionsEbRKNS_7BSONObjEb","C":"mongo::DatabaseImpl::userCreateNS(mongo::OperationContext*, mongo::NamespaceString const&, mongo::CollectionOptions, bool, mongo::BSONObj const&, bool) const","s+":"F48"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76767BF8F2","b":"7F767663D000","o":"1828F2","s":"_ZN5mongo12_GLOBAL__N_110logStartupEPNS_16OperationContextE","C":"mongo::(anonymous namespace)::logStartup(mongo::OperationContext*)","s+":"8A2"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76767BCA76","b":"7F767663D000","o":"17FA76","s":"_ZN5mongo12_GLOBAL__N_114_initAndListenEPNS_14ServiceContextEi","C":"mongo::(anonymous namespace)::_initAndListen(mongo::ServiceContext*, int)","s+":"2946"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76767AEC87","b":"7F767663D000","o":"171C87","s":"_ZN5mongo12_GLOBAL__N_113initAndListenEPNS_14ServiceContextEi","C":"mongo::(anonymous namespace)::initAndListen(mongo::ServiceContext*, int)","s+":"37"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.302+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F76767A9DDA","b":"7F767663D000","o":"16CDDA","s":"_ZN5mongo11mongod_mainEiPPc","C":"mongo::mongod_main(int, char**)","s+":"98A"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.303+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"55D86A1A9F32","b":"55D86A1A9000","o":"F32","s":"main","s+":"22"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.303+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"7F7674D19B97","b":"7F7674CF8000","o":"21B97","s":"__libc_start_main","s+":"E7"}
      }}
      [js_test:basic_read_from_change_collection] d20040| {"t":
      {"$date":"2022-08-17T13:24:24.303+00:00"}
      ,"s":"I", "c":"CONTROL", "id":31445, "ctx":"initandlisten","msg":"Frame","attr":{"frame":
      {"a":"55D86A1A9E4A","b":"55D86A1A9000","o":"E4A","s":"_start","s+":"2A"}
      }}
      

       

      It seems like the problem is that while the feature flag is being used the FCV is not initialized.

            Assignee:
            janna.golden@mongodb.com Janna Golden
            Reporter:
            rishab.joshi@mongodb.com Rishab Joshi (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: