-
Notifications
You must be signed in to change notification settings - Fork 127
select preserve validity of fields
#6260
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
Conversation
CodSpeed Performance ReportMerging this PR will improve performance by 40.65%Comparing Summary
Performance Changes
Footnotes
|
Benchmarks: Random AccessSummary
|
Benchmarks: FineWeb NVMeSummary
Detailed Results Table
|
Benchmarks: TPC-H SF=1 on NVMESummary
Detailed Results Table
|
Benchmarks: TPC-H SF=1 on S3Summary
Detailed Results Table
|
Benchmarks: TPC-DS SF=1 on NVMESummary
Detailed Results Table
|
Benchmarks: TPC-H SF=10 on NVMESummary
Detailed Results Table
|
🚨🚨🚨❌❌❌ SQL BENCHMARK FAILED ❌❌❌🚨🚨🚨Benchmark Edit: seems like Github failed to download the file |
Benchmarks: Statistical and Population GeneticsSummary
Detailed Results Table
|
Benchmarks: TPC-H SF=10 on S3Summary
Detailed Results Table
|
Benchmarks: Clickbench on NVMESummary
Detailed Results Table
|
Benchmarks: CompressionSummary
Detailed Results Table
|
4c302af to
1de77eb
Compare
| /// - `root().a` has free fields `{a}` | ||
| /// - `root().d` has free fields `{d}` | ||
| /// - The full expression has free fields `{a, d}` (not `b`, only top-level fields are tracked) | ||
| pub fn make_free_field_annotator( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can rename this back but this makes more sense to me
| let expr = and( | ||
| get_item("y", get_item("a", root())), | ||
| select(["a", "b"], root()), | ||
| ); | ||
| let expr = expr.optimize_recursive(&dtype).unwrap(); | ||
| let partitioned = partition(expr, &dtype, annotate_scope_access(fields)).unwrap(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This test doesn't make sense since we should not be able to select over a partition.
| assert!( | ||
| result | ||
| .scalar_at(1) | ||
| .unwrap() | ||
| .as_struct() | ||
| .field_by_idx(0) | ||
| .unwrap() | ||
| .is_null(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This test was wrong since the struct at row 1 should be null.
1de77eb to
1398abd
Compare
Benchmarks: FineWeb S3Summary
Detailed Results Table
|
robert3005
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should move to the vtable
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
1398abd to
34e7693
Compare
|
discussed offline, we wont move this to the expression vtable just yet |
Should fix #6255? Not sure.
This change fixes the incorrect simplification rule from
selecttopack(get_item(...)). That fix broke a few other things that made the (incorrect) assumption thatselectwould always turn intoget_items.