Skip to content

Support Milvus lifecycle and vector search over MySQL and PostgreSQL - #1

Merged
haorenfsa merged 5 commits into
mainfrom
fix-scalar-select
Sep 18, 2026
Merged

haorenfsa merged 5 commits into
mainfrom
fix-scalar-select

Conversation

@haorenfsa

@haorenfsa haorenfsa commented Sep 18, 2026 •

Copy link
Copy Markdown
Owner

Milvus SQL Proxy previously exposed only a partial MySQL path: SELECT dropped filters/pagination, CREATE assumed a field named vec, and malformed requests could panic or silently change data.

This change adds a shared, validated Milvus SQL session behind MySQL and PostgreSQL listeners. It supports database/collection lifecycle, five index methods, load/release/flush, partition management, typed insert/upsert/delete, scalar/count queries and dense vector ANN. Each client owns its database selection. Both protocols enforce configured credentials, support TLS and prepared queries, and reject unsupported relational semantics explicitly.

Validation passed on the final head:

  • go test -race ./... and go vet ./...; total unit statement coverage 91.6%, enforced by a 90% CI gate.
  • Real database/sql MySQL and pgx clients complete the lifecycle against Milvus 2.6.2. Coverage including integration: 92.1% in pkg.
  • Integration includes HNSW, IVF_FLAT, FLAT, AUTOINDEX, INVERTED, multiple vector fields with different metrics, simultaneous scalar/vector indexes, numeric COUNT, upsert content, delete visibility and prepared-query empty results.
  • Protocol tests include authentication rejection, verified TLS, parameter escaping/type inference, PostgreSQL extended-message error recovery and shutdown cancellation.
  • Two independent agent reviews found no remaining merge blockers after regression fixes. All branch commits have GitHub Verified signatures.

README documents the SQL subset and limits: no relational transactions/joins, PostgreSQL catalogs, sparse/hybrid search or bulk import.

@haorenfsa
haorenfsa merged commit 40ffbb2 into main Sep 18, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant