Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(rust!): prepare for join coalescing argument #15418

Merged
merged 4 commits into from Apr 29, 2024
Merged

Conversation

ritchie46
Copy link
Member

@ritchie46 ritchie46 commented Apr 1, 2024

Prepare for a coalesce: None | bool argument in the join operator. This will default to None and keep the join specific join key coalescing behavior. But users will be able to set the behavior and force/turn off coalescing if needed.

TODO: instead of gathering the redundant column, clone it post-join as this will save 1 column of data.

@github-actions github-actions bot added breaking Change that breaks backwards compatibility internal An internal refactor or improvement rust Related to Rust Polars labels Apr 1, 2024
Copy link

codspeed-hq bot commented Apr 29, 2024

CodSpeed Performance Report

Merging #15418 will improve performances by 28.76%

Comparing join_coal (21b8416) with main (3bf32f0)

Summary

⚡ 1 improvements
✅ 12 untouched benchmarks

Benchmarks breakdown

Benchmark main join_coal Change
test_filter2 2.9 ms 2.3 ms +28.76%

Copy link

codecov bot commented Apr 29, 2024

Codecov Report

Attention: Patch coverage is 91.93548% with 5 lines in your changes are missing coverage. Please review.

Project coverage is 81.30%. Comparing base (c3f4201) to head (21b8416).
Report is 2 commits behind head on main.

Files Patch % Lines
crates/polars-ops/src/frame/join/args.rs 90.00% 2 Missing ⚠️
crates/polars-sql/src/context.rs 0.00% 2 Missing ⚠️
py-polars/src/lazyframe/mod.rs 83.33% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #15418      +/-   ##
==========================================
+ Coverage   81.28%   81.30%   +0.01%     
==========================================
  Files        1381     1381              
  Lines      176849   176876      +27     
  Branches     3042     3043       +1     
==========================================
+ Hits       143756   143809      +53     
+ Misses      32611    32585      -26     
  Partials      482      482              
Flag Coverage Δ
python 74.77% <80.64%> (+0.03%) ⬆️
rust 78.41% <88.70%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

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

@ritchie46 ritchie46 changed the title refactor(rust)!: prepare for join coalescing argument refactor(rust!): prepare for join coalescing argument Apr 29, 2024
@ritchie46 ritchie46 added breaking rust Change that breaks backwards compatibility for the Rust crate and removed breaking Change that breaks backwards compatibility labels Apr 29, 2024
@ritchie46 ritchie46 merged commit f0dbb6a into main Apr 29, 2024
30 checks passed
@ritchie46 ritchie46 deleted the join_coal branch April 29, 2024 11:33
@c-peters c-peters added the accepted Ready for implementation label May 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accepted Ready for implementation breaking rust Change that breaks backwards compatibility for the Rust crate internal An internal refactor or improvement rust Related to Rust Polars
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

None yet

2 participants