These docs are outdated. Read the latest.
PaveDB 0.9.3
English
PaveDB 0.9.3 is a patch release focused on raw-vector workflows and operational hardening.
Highlights
- Raw vectors / BYOV. Adds identity, vector-only collections and raw-vector ingest and search; validates vector dimensions and metadata; preserves BYOV vectors across restarts; and exposes vector add and search through the public Python client.
- API and input safety. Rejects invalid collection names, overlong document IDs, non-object metadata, invalid search limits, metadata-only multipart ingest, and oversized ingest requests with structured errors. The CLI also returns JSON errors for malformed options.
- Recovery, concurrency, and authentication. Preserves per-collection backend and embedder configuration during catalog recovery, keeps search capacity occupied until timed-out or cancelled workers finish, reuses the generated admin key across workers, validates authentication configuration, and protects metrics with admin authentication.
- SDK and local-client alignment. Shares the local client surface with
pavedb-sdk, scopes query lookup and replay by tenant and collection, aligns collection-move responses and error mapping, and makes BYOV available through the public client API. - Distribution and containers. Moves build-tool configuration to
pyproject.toml, generates third-party license data, records apip freezesnapshot for release tags, builds the CPU container in CI, and includes project metadata and the license in the image.
Upgrade and operator notes
- PaveDB persists per-collection backend and embedder settings in
collection.json. When upgrading a legacy custom-model collection, keep its existingcatalog.dbintact for the first 0.9.3 startup so PaveDB can backfill a missing sidecar before any later catalog recovery. - The documented
docker runexample now passesPAVEDB_AUTH__GLOBAL_KEYinto the container and mounts/root/pavedb, so it uses the operator-selected key and preserves instance data.