Skip to content

Conversation

@joseph-isaacs
Copy link
Contributor

Expand nullable fields missing in the struct

…ting to expand nullable fields missing in the struct

Signed-off-by: Joe Isaacs <[email protected]>
Signed-off-by: Joe Isaacs <[email protected]>
@codspeed-hq
Copy link

codspeed-hq bot commented Jan 6, 2026

CodSpeed Performance Report

Merging #5867 will degrade performance by 11.37%

Comparing ji/fix-up-operators (2cb295e) with develop (eb5c300)

Summary

❌ 3 regressions
✅ 1251 untouched
⏩ 623 skipped1

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Benchmarks breakdown

Benchmark BASE HEAD Efficiency
filter_runend[(1000, 256, 0.01)] 23.8 µs 26.9 µs -11.37%
filter_runend[(1000, 256, 0.03)] 23.8 µs 26.9 µs -11.37%
filter_runend[(1000, 256, 0.005)] 23.8 µs 26.9 µs -11.37%

Footnotes

  1. 623 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

Signed-off-by: Joe Isaacs <[email protected]>
@codecov
Copy link

codecov bot commented Jan 6, 2026

Codecov Report

❌ Patch coverage is 27.65957% with 34 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.95%. Comparing base (eb5c300) to head (2cb295e).
⚠️ Report is 1 commits behind head on develop.

Files with missing lines Patch % Lines
vortex-array/src/arrays/struct_/vtable/rules.rs 0.00% 18 Missing ⚠️
vortex-array/src/arrays/scalar_fn/rules.rs 28.57% 10 Missing ⚠️
vortex-datafusion/src/persistent/opener.rs 71.42% 2 Missing ⚠️
vortex-scan/src/arrow.rs 66.66% 2 Missing ⚠️
vortex-array/src/arrow/executor/byte.rs 0.00% 1 Missing ⚠️
vortex-array/src/arrow/executor/struct_.rs 0.00% 1 Missing ⚠️

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@0ax1 0ax1 self-requested a review January 6, 2026 16:45
.map(move |chunk| {
if *USE_VORTEX_OPERATORS {
chunk.execute_record_batch(&projected_schema, &chunk_session)
let schema = chunk.dtype().to_arrow_schema()?;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you can get the schema once from the scan and projection expression and use it here (I'm doing it in the DF52 PR, so not a blocker)

) -> VortexResult<ArrowArrayRef> {
let mut arrow_fields = Vec::with_capacity(vortex_fields.len());
for (field, vx_field) in fields.iter().zip(vortex_fields.into_iter()) {
for (field, vx_field) in fields.iter().zip_eq(vortex_fields.into_iter()) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

ParentRuleSet::new(&[ParentRuleSet::lift(&ScalarFnUnaryFilterPushDownRule)]);

/// Converts a ScalarFnArray with Pack into a StructArray directly.
#[derive(Debug)]
Copy link
Contributor

@0ax1 0ax1 Jan 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is derive(debug) needed?

@joseph-isaacs joseph-isaacs merged commit fb96a1d into develop Jan 6, 2026
48 of 50 checks passed
@joseph-isaacs joseph-isaacs deleted the ji/fix-up-operators branch January 6, 2026 16:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants