Releases: Query-farm/vgi-java
v0.4.0
Sync of the upstream enum-validation + narrow-bind batch (vgi 28539a4..129aff1, vgi-python 59e332b/595481d). Full launcher suite green (178 pass / 13 skip / 0 fail); CI green on all three lanes (launch / http / shm).
Changes
- fix(serializer): emit canonical
order_preservationwire names (PRESERVES_ORDER/NO_ORDER_GUARANTEE/FIXED_ORDER). vgi now throws on any unrecognized wire enum (was: silent default for all butfunction_type), which surfaced this latent bug. AddedOrderPreservation.wireName()(enum constants stay DuckDB-aligned). - feat(catalog): extra-catalog tables —
Worker.registerExtraCatalogTable+ routing in the four catalog-table RPCs, backing thenarrow_bindreproducer catalog (a worker whose bind output_schema is narrower than the table it advertises must fail closed at bind, not segfault the client). - feat(fixtures):
query_seedscalar (the onlyCONSISTENT_WITHIN_QUERYfixture),overlapping_range_partitionedtable fn (the onlyOVERLAPPING_PARTITIONSfixture), and thebad_enumfixture worker (advertises an unrecognizednull_handlingto exercise the C++ strict-enum rejection).
Depends on farm.query:vgirpc:0.10.2 (unchanged).
v0.3.0
farm.query:vgi 0.3.0
Tracks upstream VGI main / Haybarn v1.5.4-rc1. Ports the new test-suite
features and fixes numeric type promotion. Suite: 185/185.
Core (farm.query:vgi)
- Numeric promotion —
add_values/doublenow promote like the canonical
Python worker: decimals gain a digit of precision, unsigned integers widen
one tier, decimal addition merges precision/scale (TypeRules,
ScalarHelpersunsigned + newtoBigDecimal). - Pushdown introspection — new
PushdownFilters.filteredColumns()and
hasFilterForColumn(). - Typed const decoding —
VectorScalarCodec.readnow decodes timestamp and
unsigned-integer scalars predictably.
Example worker fixtures
typed_probetable function (typed const args: TIMESTAMPTZ / INTERVAL / BLOB
/ UBIGINT with worker-side defaults).filtered_columns_echotable function (filter-column introspection).secret_fieldandscale_by_settingscalar functions.
Depends on farm.query:vgirpc:0.10.2.
v0.2.0
Second release of farm.query:vgi to Maven Central.
Highlights since 0.1.0
- Expression-filter pushdown — new
PushdownFilter.Expressionwire decode +PushdownFiltersDecoderrendering pushed expression trees (column refs, constants, functions, comparisons, conjunctions, geoarrow.wkb) to SQL predicates, withFunctionMetadata.withSupportedExpressionFilters(...)capability wiring. - HTTP transport hardening — the framework's filter / buffering producers are now serializable across the stateless HTTP transport's continuation tokens (no-arg ctors, plain-POJO state, a static storage holder that re-binds on resume). Pairs with vgirpc 0.10.2's state-serialization fixes.
- Integration CI — the upstream vgi sqllogictest suite now runs on every push across three transport lanes (launch, shm, http) against the prebuilt haybarn-unittest + signed community
vgiextension.
Depends on farm.query:vgirpc:0.10.2.
Upload is validated by CI but gated on a manual "Publish" click in the Sonatype Central Portal.
v0.1.0
First release of farm.query:vgi to Maven Central.
Java implementation of the VGI (Vector Gateway Interface) protocol for serving
catalog data to Haybarn, Query Farm's DuckDB-derived engine, from external
workers over Apache Arrow IPC.
Upload is validated by CI but gated on a manual "Publish" click in the
Sonatype Central Portal.