[Chore] Remove row-based query from Stream, Measure and Trace
Author: hanahmilyCreated Aug 24, 2026Updated Sep 17, 2026
Labelschoredatabase
Summary
Remove the legacy row-based query code path from the Stream, Measure and Trace query engines in BanyanDB.
Motivation
Row-based query is the old (per-row / per-data-point) execution path. The newer columnar / vectorized execution model has been the default for some time, and the row-based path is now dead weight: duplicated tests, larger binary, and a maintenance tax. Removing it shrinks the surface area and forces callers onto the supported code path.
Scope
- Identify every reference to the row-based query path in:
banyand/internal/query(or wherever the query engines live — verify during research).- Public API / proto definitions, if row-mode is exposed there.
- Tests, fixtures, benchmarks.
- Remove the code paths, their flags / options, and any still-supported APIs.
- Update docs (
docs/concept/,docs/api-reference.md) to drop row-mode mentions. - Ensure all existing tests pass on the remaining code path.
Tasks
- Research — enumerate call sites and the public surface that exposes row-mode (CLI flags, HTTP/gRPC fields, env vars).
- Removal — delete the row-mode code, its tests, and benchmarks.
- Compatibility — if any documented option still names row-mode, return a clear error / 410 Gone for a transition period (decision in design step).
- Tests — make sure CI is green after deletion; update coverage reports.
- Docs — sweep docs and examples.
Acceptance Criteria
- No remaining row-mode code, tests, or flags in the repo.
- All previously-passing tests still pass on the columnar/vectorized path.
- Docs no longer reference row-mode.
- Binary size / build time measurably reduced.
Related
- Parent milestone: BanyanDB - 0.12.0 (#264)
Source: apache/skywalking