Repository navigation
Fix: keep Milvus Lite paths out of MILVUS_URI - #179
Merged
zc277584121 merged 3 commits intoJul 31, 2026
Merged
Conversation
…e-only pymilvus 3.x's orm.connections parses the MILVUS_URI env var at import time and rejects non-http values, so mfs reusing it to carry a Milvus Lite local path (e.g. /data/milvus.db) crashed on startup before MilvusClient ran. Stop using MILVUS_URI for Lite paths: - Lite: <MFS_HOME>/milvus.db default, or MFS_MILVUS_URI (mfs namespace, pymilvus does not read it - the only override safe for a local path) - Remote: ZILLIZ_URI / MILVUS_URI (pymilvus parses http fine) - docker-compose passes ZILLIZ_* directly instead of MILVUS_URI - config reads MFS_MILVUS_URI/MFS_MILVUS_TOKEN as top priority, which also fixes Helm: it always injected MFS_MILVUS_* but the server never read them, so Helm's Milvus config was silently ignored No regression: any env that starts today has no MILVUS_URI=<local path> (it would already crash); docker-compose users are unaffected (default path is still /data/milvus.db).
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.
resolve #178
Summary
Docker Compose crashed on the default Milvus Lite path because it exported
MILVUS_URI=/data/milvus.db. pymilvus 3.x parses that environment variableduring import as a remote HTTP(S) URI and rejects the local file path before
MFS can create
MilvusClient.This keeps the fix at the deployment boundary and does not add another public
configuration namespace:
MFS_HOME=/datamakes theexisting fallback resolve to
/data/milvus.db.MILVUS_URI/MILVUS_TOKENentries remain available as commented,opt-in Compose settings.
MILVUS_URIis documented as remote-only.MILVUS_URI/MILVUS_TOKENvariables andrequires
search.uri, since API and worker pods must share a remote vectordatabase rather than create separate pod-local Lite files.
MFS_MILVUS_*environment variables are introduced.Verification
docker compose configrenders withoutMILVUS_URIorMILVUS_TOKENinthe default service environment.
helm lint deployments/helm/mfs --set search.uri=https://example.zillizcloud.compasses.
MILVUS_URIandMILVUS_TOKENfor both API and worker pods.search.urifails with the intended validationmessage.
$MFS_HOME/milvus.db.MILVUS_URI=https://...still resolves normally.ruff format --checkandruff checkpass.