Skip to content

Evaluate primitive predicates directly on encoded pages #8697

Description

@Xuanwo

Goal

Evaluate supported primitive predicates directly on encoded pages when doing so is cheaper than decoding the predicate column to Arrow.

Context

Implementation and benchmark: #8661

Contract

  • Support exact i32/u32 comparisons on Constant, RLE, and bitpacked pages.
  • Select the encoded path independently per fragment from encoding, sampled selectivity, selected ranges, and predicted read amplification.
  • Retain the ordinary decoded filter for unsupported or unfavorable cases.
  • Stop encoded evaluation when bounded amplification or selected-range limits are exceeded.
  • Short-circuit Constant outcomes only when metadata and nullability make the result exact.
  • Preserve query results and fallback behavior for every unsupported encoding and predicate.

Completion gates

  • perf: evaluate primitive predicates on encoded pages #8661 is reviewed and merged.
  • Exact-result and fallback coverage passes across supported encodings, nullability, and fragmented inputs.
  • Representative Local FS and object-storage measurements document accepted wins and rejected-path overhead.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions