Skip to content

Conversation

@Davidyz
Copy link
Owner

@Davidyz Davidyz commented Jul 8, 2025

Fix #240

@Davidyz Davidyz added bug Something isn't working fix labels Jul 8, 2025
@codecov
Copy link

codecov bot commented Jul 8, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 99.76%. Comparing base (c8741c9) to head (b2e8c26).
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #241   +/-   ##
=======================================
  Coverage   99.76%   99.76%           
=======================================
  Files          24       24           
  Lines        1732     1737    +5     
=======================================
+ Hits         1728     1733    +5     
  Misses          4        4           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Davidyz Davidyz force-pushed the fix/verify_db_url branch from e6b4b24 to b2e8c26 Compare July 8, 2025 07:07
@Davidyz Davidyz merged commit bb52bcd into main Jul 8, 2025
16 checks passed
@Davidyz Davidyz deleted the fix/verify_db_url branch July 8, 2025 07:11
@broken-wheel
Copy link

@Davidyz

This breaks interoperation with standalone ChromaDB v0.6.3, which is the recommended setup in the docs:

... it is recommended to set up a standalone local server ...

If you're setting up a standalone ChromaDB server, I recommend sticking to v0.6.3, because VectorCode is not ready for the upgrade to ChromaDB 1.0 yet.

This breaks because ChromaDB v0.6.3 doesn't have /openapi.json. I tried v0.6.2, but its /openapi.json has the following entry:

$ curl http://172.17.0.1:8765/openapi.json | jq '.info'
{
  "title": "FastAPI",
  "version": "0.1.0"
}

which fails the check because title is FastAPI, not chroma.

@Davidyz
Copy link
Owner Author

Davidyz commented Jul 15, 2025

@broken-wheel Thanks for spotting this. I was able to reproduce the issue with 0.6.2, but from my side 0.6.3 worked fine:

$ curl http://127.0.0.1:8000/openapi.json | jq .info
{
  "title": "Chroma",
  "version": "0.6.3"
}

I'll think about how to better detect the server version.

@broken-wheel
Copy link

broken-wheel commented Jul 15, 2025

@broken-wheel Thanks for spotting this. I was able to reproduce the issue with 0.6.2, but from my side 0.6.3 worked fine:

$ curl http://127.0.0.1:8000/openapi.json | jq .info
{
  "title": "Chroma",
  "version": "0.6.3"
}

How did you launch the chormaDB server v0.6.3? This is what I did:

docker run --rm -d -v ./data/chromadb:/data -p 9999:8000 chromadb/chroma:0.6.3

and this is what I get:

$ curl localhost:9999/openapi.json
{"error":"PackageNotFoundError('chromadb')"}

@Davidyz
Copy link
Owner Author

Davidyz commented Jul 15, 2025

How did you launch the chormaDB server v0.6.3?

Turns out this is the problem. I installed Chromadb with uv tool and wrote a systemd user service to manage the chroma process, which didn't have this problem. I was able to reproduce this with the chromadb 0.6.3 Docker image. Since this is unlikely to get fixed by the upstream, I'll revert this PR and just throw a warning when the creation of a client fails.

@outp1
Copy link
Contributor

outp1 commented Jul 16, 2025

$ curl localhost:9999/openapi.json
{"error":"PackageNotFoundError('chromadb')"}

The same problem. It looks like VectorCode needs to add support for a newer Chromadb version. Until then, there is no way to work with a Docker container.

@Davidyz
Copy link
Owner Author

Davidyz commented Jul 16, 2025

It looks like VectorCode needs to add support for a newer Chromadb version.

Yep, the problem is the newer (1.0.x) chromadb server doesn't work on database files created by 0.6.x

I really don't want to force people to re-vectorise every repo. I'll keep an eye on this.

@ya-hitho
Copy link

How did you launch the chormaDB server v0.6.3? This is what I did:

docker run --rm -d -v ./data/chromadb:/data -p 9999:8000 chromadb/chroma:0.6.3

and this is what I get:

$ curl localhost:9999/openapi.json
{"error":"PackageNotFoundError('chromadb')"}

I got the same problem, with similar way to run chromadb.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] ClientManager should verify db_url is pointing to a chroma server before creating the client

4 participants