Skip to content

[Chore] Remove the legacy query engines from Measure, Stream, and Trace #14066

Closed

Description

@hanahmily

Summary

Delete the separate legacy query engines and make vectorized execution the only supported engine. This is the legacy-engine removal portion of parent #13998, not completion of end-to-end batch-native query processing.

Size audit and status

Classification: tracking child for an existing cleanup PR, not an automated implementation task.
Implementation: apache/skywalking-banyandb#1326.
Boundary: legacy planners, engine dispatch/fallback, and obsolete storage-result APIs across Measure, Stream, and Trace.
This tracks the existing cross-engine cleanup; it is not a new request to implement the remaining batch-native work in that PR.

Scope

Completion criteria

Verification

Startup tests cover omission, =true, and =false for the compatibility flags. Query fixtures preserve selected values, ordering, and pagination; documented behavior changes remain explicit.

go test ./pkg/query/... ./banyand/query ./banyand/measure ./banyand/stream ./banyand/trace
go test ./test/integration/standalone/query/... ./test/integration/distributed/query/...

Out of scope

Row-based processing still used internally by the vectorized engine; implementing the four follow-up workstreams; removing transition flags ahead of the documented release. The umbrella retains the final flag/adapter cleanup audit.

Parent: #13998.

Compatibility and review policy

  • Preserve existing on-disk and wire formats and mixed-version compatibility. Any necessary protocol change requires a separately reviewed compatibility contract.
  • Use explicit, hand-calculated expected results; do not depend on the removed row engine as the test oracle.
  • Human review enforces the no-new-row-path policy. A row-call-site lint guard is not required.

Activity

  1. SammyUrfen commented on Sep 22, 2026

    @SammyUrfen

    The completion criteria look met. apache/skywalking-banyandb#1326 merged, keeping the filter-first bounded index-order merge from #1331, and the row-call-site lint guard is gone. The merge carried no closing keyword, so this issue stayed open.

    Can this close? It blocks the four seam issues under #13998.

  2. hanahmily commented on Oct 4, 2026

    @hanahmily
    ContributorAuthor

    Closing: the completion criterion here was apache/skywalking-banyandb#1326 merging, and it has (merged 2026-09-16). Measure, Stream and Trace now run on the vectorized engine without the legacy row-based fallback. Parent #13998 stays open for the remaining follow-up workstreams (#14067-#14070).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    databaseBanyanDB - SkyWalking native database

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions