fix: pin atlas local image to latest (MCP-331)#1240
Draft
blva wants to merge 13 commits into
Draft
Conversation
Atlas Local v1.0.11 added telemetry startup work (network calls to gather container and DB details) that pushes container startup time over testcontainers' default 60s ShellWaitStrategy timeout on Ubuntu CI. Setting DO_NOT_TRACK=1 skips that work and restores startup times to ~2.4s (down from ~13.7s). The image pin to 8.2.2 is kept because MongoDB 8.3+ has a regression where the search index management task executor enters a brief "shutting down" state after collection.drop(), causing subsequent createSearchIndex calls to fail. The TODO comment now explains both reasons for the pin clearly.
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the MongoDB Atlas Local search test container setup to reduce startup time regressions introduced by newer Atlas Local images, improving integration test reliability in CI.
Changes:
- Adds
DO_NOT_TRACK=1to the Atlas LocalGenericContainerused for search integration tests to skip telemetry startup work. - Expands the inline comment explaining why the Atlas Local image remains pinned to
8.2.x(CI startup timeout + MongoDB 8.3+ search-index regression).
Increases ShellWaitStrategy startup timeout from testcontainers' default 60s to 120s as a safety net alongside DO_NOT_TRACK=1. The env var keeps actual startup fast (~2.4s); the higher timeout covers slow CI environments where container scheduling itself adds overhead.
blva
force-pushed
the
claude/serene-satoshi-1ebed4
branch
from
June 10, 2026 17:46
f919b66 to
15986f4
Compare
Contributor
|
This PR has gone 30 days without any activity and meets the project's definition of "stale". This will be auto-closed if there is no new activity over the next 30 days. If the issue is still relevant and active, you can simply comment with a "bump" to keep it open, or add the label "not_stale". Thanks for keeping our repository healthy! |
…-1ebed4 # Conflicts: # tests/integration/tools/mongodb/mongodbClusterProcess.ts
…karound Testing showed DO_NOT_TRACK + preview pin still fails 4 search-index schema assertions deterministically, while latest passes cleanly with no wait strategy and no DO_NOT_TRACK needed. Keeping the wait strategy against latest was also tested and found to reproducibly destabilize the container mid-test (connection drops, "interrupted at shutdown"), so it stays removed.
…RACK workaround" This reverts commit cd8d376.
Vector indexes now include a "quantization" field; classic search indexes don't return "type" from listSearchIndexes() (only the collection-indexes tool synthesizes it); and dynamic-mapping search indexes include "numPartitions". Verified against a real preview container run (232 passed, 5 skipped, 0 failed, twice).
Local testing showed this combination (preview image, wait strategy, no DO_NOT_TRACK) reintroduces connection instability from slow container startup that DO_NOT_TRACK was added to avoid (12 test failures locally: MCP client connect failures, MongoNotConnectedError). Committing per explicit instruction; CI will be the final check.
Root cause traced at the container level: atlas-local's runner does a bootstrap-then-restart of mongod on every start. mongot reconnects to the restarted mongod ~1.1s later, but the ShellWaitStrategy's isWritablePrimary/getSearchIndexes check succeeds right after the restart, before mongot has reconnected - a race independent of DO_NOT_TRACK. Removing the wait strategy lets testcontainers fall back to port-availability plus the test helpers' own connection retry loop, which absorbs the restart window. Verified twice locally (232 passed, 5 skipped, 0 failed each run) with preview image and no DO_NOT_TRACK.
CI's mitmproxy-intercepted network is consistently slower than local for the sample-dataset download/import - the same test times out at 600s on main independent of this branch. 270s locally vs 840s+ in CI before getting killed shows 600s has no headroom there.
…to claude/serene-satoshi-1ebed4
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary