gripleaf opened a new pull request, #318:
URL: https://github.com/apache/paimon-cpp/pull/318
### Purpose
Related to #301. Extracts the field-count optimization into an independent
PR as requested in review.
Replace StructArray::fields().size() with num_fields() when validating a
leaf predicate’s field index and formatting the out-of-range error. This avoids
materializing all child arrays merely to obtain the field count, while
preserving
evaluation results and error messages.
### Tests
- PredicateTest.TestLeafFieldBoundsOnWideSlicedBatch: covers a sliced
64-column batch, NULL values, the last valid field, and an out-of-range field.
- WriteAndReadInteTest.TestAppendReadWithNestedPredicateAcrossBatches:
covers nested AND/OR predicates, reordered projections, NULL and duplicate
rows, batch sizes 1/4/7, filtering enabled/disabled, and EOF across Parquet,
ORC, and Avro.
Validated in the existing x86_64 Debug devcontainer:
- 49 predicate tests passed.
- 3 format-parameterized integration tests passed, covering 36 read
configurations.
- Clang-tidy passed for the modified predicate header and unit-test file.
- Pre-commit checks for all changed files and git diff --check passed.
Full repository tests and sanitizers were not run.
### API and Format
No public API, storage format, or protocol changes.
### Documentation
No new user-facing feature or configuration. No documentation changes
required.
### Generative AI tooling
Generated-by: OpenAI Codex (GPT-6).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]