• Type: Sub-task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Integration
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Extensions aren’t allowed in hybrid search stages ($rankFusion and $scoreFusion) until featureFlagExtensionsInsideHybridSearch is enabled. In parseAndValidate{Rank|Scor}edSelectionPipelines:

       

      std::map<std::string, std::unique_ptr<Pipeline>> parseAndValidate{Rank|Scor}

      edSelectionPipelines(...) {
      // ...
      if (!feature_flags::featureFlagExtensionsInsideHybridSearch.isEnabled() && liteParsedPipeline.hasExtensionSearchStage()

      { search_metrics::inHybridSearchKickbackRetryCount.increment(); uassertStatusOK(Status(IFRFlagRetryInfo(feature_flags::gFeatureFlagSearchExtension.getName())));         }

      // ...
      }

       

      Integration Tests:

      • $search/$searchMeta inside hybrid search with the appropriate flag disabled.
        • IFR kickback fires and the query retries.
        • The appropriate metric is incremented.
      • $search/$searchMeta inside hybrid search with the appropriate flag enabled.
        • No IFR kickback or metric increment.

            Assignee:
            Unassigned
            Reporter:
            Josh Siegel
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: