ExportXMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.2
    • Affects Version/s: None
    • Component/s: None
    • Query Execution
    • Fully Compatible
    • ALL
    • v9.0
    • 0
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Temporarily disable the IFR flag featureFlagChangeStreamOptimizedUpdateLookup in 9.0.2 to avoid a getMore failure affecting updateLookup change streams on sharded clusters.

      On a sharded cluster, an updateLookup change stream watching a collection in a database that exists only in a shard's local catalog (no config.databases entry, e.g. mongot's __mdb_internal_search materialized-view database, used for $vectorSearch auto-embedding) aborts its getMore with NamespaceNotFound instead of returning the update's post-image. This breaks any consumer of updateLookup for such a database; for mongot specifically, it prevents filter-only updates to autoEmbed $vectorSearch filter fields from reaching the index.

      Note: a related fix (SERVER-134745) maps this same NamespaceNotFound to a null fullDocument instead of failing getMore, but that fix is not present in 9.0.2, and on its own would trade this failure for a silent-wrong-data bug for legitimate shard-local databases (SERVER-134952). Both issues are fixed for 9.1.0; disabling the flag here avoids both by falling back to the pre-9.0 updateLookup path.

      The next 9.0 releases should have the IFR flag enabled again once the underlying fixes are backported.

            Assignee:
            Denis Grebennicov
            Reporter:
            Denis Grebennicov
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: