Skip to content

Add searchMeta stage tests#638

Merged
eerxuan merged 22 commits into
documentdb:mainfrom
danielfrankcom:pr/searchMeta-copy
Jul 7, 2026
Merged

Add searchMeta stage tests#638
eerxuan merged 22 commits into
documentdb:mainfrom
danielfrankcom:pr/searchMeta-copy

Conversation

@danielfrankcom

@danielfrankcom danielfrankcom commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator

This change adds tests for the $searchMeta aggregation stage.

This is the first operator which uses the external mongot topology to provide a required search index. I defined a number of file-scoped pytest fixtures to define the necessary indexed collections for these tests, as an index of this type is far more expensive to set up than the ones we use elsewhere (on the order of 30-60 secs). Using a module scoped fixture allows us to amortize this cost across the test cases rather than taking the hit each time.

Note: The CI runs for this change will fail until #617 is merged, as it is heavily dependent. If you want to see the change in its correct (working) context, see the pr/searchMeta branch for now. This is resolved now.

Closes #375

@danielfrankcom danielfrankcom requested a review from a team as a code owner June 23, 2026 17:07
@documentdb-triage-tool documentdb-triage-tool Bot added compatibility test Compatibility test related enhancement New feature or request labels Jun 23, 2026
@documentdb-triage-tool

Copy link
Copy Markdown

🤖 Auto-triaged by documentdb-triage-tool.

Applied: compatibility test, enhancement
Project fields suggested: Component test-coverage · Priority P2 · Effort XL · Status Needs Review
Confidence: 0.85 (mixed)

Reasoning

component from path globs (test-coverage, test-framework); effort from diff stats (3308+7 LOC, 18 files); LLM: Adds new test coverage for the $searchMeta aggregation stage, including a new external topology fixture pattern; self-contained within the test-coverage component.

If a label is wrong, remove it manually and ping @patty-chow so the rules can be tuned. The bot will not re-label items that already have component labels.

Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
@tonglyu

tonglyu commented Jun 29, 2026

Copy link
Copy Markdown

It seems all path field tested with $searchMeta only has one format from string. Can we also test other conditions even though it's not supported?

(array of strings, {value} document, {wildcard} document, {value, multi} multi-analyzer)
https://www.mongodb.com/docs/search/query/path-construction/

Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
@danielfrankcom

Copy link
Copy Markdown
Collaborator Author

Latest 3 commits are borrowed from #645 to provide some better diagnostics for mongot failures

…Source auth schema

Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
@danielfrankcom danielfrankcom requested a review from tonglyu July 1, 2026 17:56
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
eerxuan and others added 2 commits July 2, 2026 17:08
@danielfrankcom danielfrankcom requested a review from eerxuan July 7, 2026 17:09
@eerxuan eerxuan merged commit 52ff461 into documentdb:main Jul 7, 2026
20 checks passed
krishnasai453 pushed a commit to krishnasai453/functional-tests that referenced this pull request Jul 8, 2026
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
SarthakDalmia1 pushed a commit to SarthakDalmia1/functional-tests that referenced this pull request Jul 10, 2026
Signed-off-by: Daniel Frankcom <frankcom@amazon.com>
Signed-off-by: Sarthak Dalmia <sadalmia@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

compatibility test Compatibility test related enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add compatibility test for $searchMeta

3 participants