ParqDB 0.2.0rc1
Pre-release
Pre-release
[0.2.0rc1] - 2026-08-18
Added
- Reusable IVF centroid artifacts used by source, LVQ4, and LVQ8 logical
indexes. - Cosine distance and
list<double>source-vector support through canonical
float conversion. - Portable source, LVQ4, and LVQ8 conformance fixtures under IVF schema
version 1. - A reproducible GIST benchmark runner for ParqDB and Faiss Flat, SQ4, and SQ8
comparisons. - Native, process-scoped index build coordination with observable status,
bounded parallelism, failure retention, and retry. - Bounded incremental Arrow IPC encoding and decoding with transport-level
backpressure and no full-result buffering. - An HTTP transport and Python ASGI server using the same session facades,
source and index lifecycle, error hierarchy, and managed query streams as
embedded execution. Server-side source registration uses an explicit URI
prefix allowlist. - A
parqdb servedeployment command and TOML configuration, with a safe
loopback-only default template generated byparqdb config init. - Portable, source-free index packages that can be registered against an exact
source through the embedded or HTTP table API.
Changed
- The public Python API now uses portable session and table facades instead of
inheriting DataFusion objects. DataFusion remains available through an
explicit embedded-only escape hatch. - ParqDB now has one supported DataFusion execution path. The public backend,
builder, Spark, and StarRocks extension surfaces have been removed while the
open index specification remains available to other engines. - IVF postings no longer copy full source vectors. The public
IVF
configuration selectssource,lvq4, orlvq8encoding and
l2_squaredorcosinedistance. - Portable SQL terminals now reject DDL, DML,
COPY, and session-mutating
statements before execution. - Index names are scoped by their owning table identifier. Build status and
transport errors expose stable failure codes for embedded/HTTP parity. - Server implementation is organized into
server,transport, andruntime
packages. The publicparqdb.serverfactory remains unchanged. - Embedded sessions and server deployment now use a required local
rootplus
an optionalwarehousefor index relations. SQLite catalog placement is no
longer a public configuration parameter. - A session uses one warehouse for all index metadata and relations. Published
locations are warehouse-relative, while each catalog owns its source
bindings independently.
Fixed
- LVQ distance evaluation now honors non-zero Arrow array offsets when cached
postings batches are sliced.
Removed
- The versioned backend and builder SDKs, capability registry, experimental
Spark and StarRocks modules, and their public configuration objects. catalog=,index_root=,Session.indexes, and the top-level
open_index_catalogAPI. Index lifecycle is table-centered.