Skip to content

test: Benchmark slowdown of element-wise list comparison#25

Merged
Marius Merkle (MariusMerkleQC) merged 6 commits intomainfrom
benchmark
Mar 30, 2026
Merged

test: Benchmark slowdown of element-wise list comparison#25
Marius Merkle (MariusMerkleQC) merged 6 commits intomainfrom
benchmark

Conversation

@MariusMerkleQC
Copy link
Copy Markdown
Collaborator

@MariusMerkleQC Marius Merkle (MariusMerkleQC) commented Mar 27, 2026

Motivation

See this comment.

Changes

Adds a benchmark test on (long) list columns (20 elements each). The column has an integer data type, so no tolerance-based comparison is necessary. We call _compare_sequence_columns as soon as there's a list/array anywhere in the data type tree, independent of the inner type, and this is ~5-6 times slower than using _eq_missing directly.

@codecov
Copy link
Copy Markdown

codecov bot commented Mar 27, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (cccfad4) to head (c6e108f).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #25   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           10        10           
  Lines          758       758           
=========================================
  Hits           758       758           

☔ 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.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a performance-focused test to quantify the slowdown of element-wise list comparison vs eq_missing() for list columns with non-tolerance inner types, supporting follow-up optimization work around _compare_sequence_columns.

Changes:

  • Import internal comparison utilities/constants needed to call condition_equal_columns() directly.
  • Add a new performance regression-style test comparing eq_missing() vs element-wise list comparison timing.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@MariusMerkleQC Marius Merkle (MariusMerkleQC) changed the title test: Benchmark slowdown of element-wise list comparison test: Benchmark slowdown of element-wise list/array/struct comparison Mar 28, 2026
@MariusMerkleQC Marius Merkle (MariusMerkleQC) changed the title test: Benchmark slowdown of element-wise list/array/struct comparison test: Benchmark slowdown of element-wise list comparison Mar 28, 2026
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks :)

@MariusMerkleQC Marius Merkle (MariusMerkleQC) merged commit ff8439c into main Mar 30, 2026
18 checks passed
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.

3 participants