Prefer wire IFR flags over a lazily-materialized default context

XMLWordPrintableJSON

    • Query Integration
    • ALL
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      We originally thought this was a bug with the Extensions API or the mongot extension, but it turned out to be an issue with IFR flags being correctly initialized on a shard after being sent over-the-wire from a router.

      Original Description

      For queries on views over sharded collections, mongos serializes the resolved view into the $vectorSearch stage spec sent to shards (see document_source_vector_search.cpp; the legacy stage tolerates and strips it). The mongot-extension $vectorSearch parser rejects the spec with Location65127: Cannot specify the reserved field 'view' in a $vectorSearch stage. Still present in extension v2.0.2 and v2.0.3.

      This fails the sharded with_mongot_extension_* tasks on the mongot-integration-extensions-secure variants (red since their introduction in SERVER-130631): all of jstests/with_mongot/e2e/views/vector_search/ plus sharding_no_passthrough/sharded_view_kickback.js. single_node passes, consistent with the mongos-serialization path.

      Fix is extension-side (accept or strip the internally-serialized view field). The tests are excluded from the with_mongot_extension suites pending this fix (SERVER-131182).

            Assignee:
            Will Buerger
            Reporter:
            Will Buerger
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: