Skip to content

Move Count to functions-aggregate, update MSRV to rust 1.75 - #10484

Merged
jayzhan211 merged 81 commits into
apache:mainfrom
jayzhan211:count-for-all
Jun 12, 2024
Merged

Move Count to functions-aggregate, update MSRV to rust 1.75#10484
jayzhan211 merged 81 commits into
apache:mainfrom
jayzhan211:count-for-all

Conversation

@jayzhan211

@jayzhan211jayzhan211 commented May 13, 2024

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

Part of #8708

Rationale for this change

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

There are 3 todos after this PR,

  1. remove builtin aggregate function Count:
  2. remove expr_fn::count and count distinct
  3. rename count's name lowercase

I will file an issue before merging this one

Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
@github-actionsgithub-actionsBot added sql SQL Planner logical-expr Logical plan and expressions physical-expr Changes to the physical-expr crates optimizer Optimizer rules core Core DataFusion crate sqllogictest SQL Logic Tests (.slt) labels May 13, 2024
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
@github-actionsgithub-actionsBot added the substrait Changes to the substrait crate label May 14, 2024
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
@jayzhan211
jayzhan211 marked this pull request as ready for review June 5, 2024 06:34
@jayzhan211
jayzhan211 requested a review from alambJune 5, 2024 06:35
@jayzhan211

jayzhan211 commented Jun 5, 2024

Copy link
Copy Markdown
ContributorAuthor
error: package `clap_builder v4.5.2` cannot be built because it requires rustc 1.74 or newer, while the currently active rustc version is 1.73.0
Either upgrade to rustc 1.74 or newer, or use
cargo update -p clap_builder@4.5.2 --precise ver
where `ver` is the latest version of `clap_builder` supporting rustc 1.73.0

clap_builder needs 1.74, which used in criterion v0.5.1 (in datafusion-physical-expr)

│ │ ├── petgraph v0.6.5
│ │ │ ├── fixedbitset v0.4.2
│ │ │ └── indexmap v2.2.6 (*)
│ │ └── regex v1.10.4 (*)
│ │ [dev-dependencies]
│ │ ├── arrow v51.0.0 (*)
│ │ ├── criterion v0.5.1
│ │ │ ├── anes v0.1.6
│ │ │ ├── cast v0.3.0
│ │ │ ├── ciborium v0.2.2
│ │ │ │ ├── ciborium-io v0.2.2
│ │ │ │ ├── ciborium-ll v0.2.2
│ │ │ │ │ ├── ciborium-io v0.2.2
│ │ │ │ │ └── half v2.4.1 (*)
│ │ │ │ └── serde v1.0.203 (*)
│ │ │ ├── clap v4.5.4
│ │ │ │ ├── clap_builder v4.5.2
│ │ │ │ │ ├── anstream v0.6.14 (*)
│ │ │ │ │ ├── anstyle v1.0.7
│ │ │ │ │ ├── clap_lex v0.7.0
│ │ │ │ │ └── strsim v0.11.1
│ │ │ │ └── clap_derive v4.5.4 (proc-macro)
│ │ │ │ ├── heck v0.5.0
│ │ │ │ ├── proc-macro2 v1.0.85 (*)
│ │ │ │ ├── quote v1.0.36 (*)
│ │ │ │ └── syn v2.0.66 (*)

I upgrade to 1.75 to the latest available version.

I'm not sure why we have this issue in this PR 🤔

@alamb

Copy link
Copy Markdown
Contributor

This PR has several conflicts -- other than those, do you think this PR is ready for another review @jayzhan211 ?

@jayzhan211

Copy link
Copy Markdown
ContributorAuthor

This PR has several conflicts -- other than those, do you think this PR is ready for another review @jayzhan211 ?

Yes, it is ready for review.

Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
@jayzhan211
jayzhan211 marked this pull request as draft June 12, 2024 07:53
@jayzhan211
jayzhan211force-pushed the count-for-all branch 2 times, most recently from 45249fb to 4bd680dCompareJune 12, 2024 13:48
@jayzhan211
jayzhan211 marked this pull request as ready for review June 12, 2024 14:21
@alambalamb changed the title Move Count to functions-aggregateMove Count to functions-aggregate, update MSRVJun 12, 2024
@alambalamb changed the title Move Count to functions-aggregate, update MSRVMove Count to functions-aggregate, update MSRV to rust 1.75Jun 12, 2024

@alambalamb left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Awesome -- thank you @jayzhan211 -- let's do it.

Comment threadCargo.toml
readme = "README.md"
repository = "https://github.com/apache/datafusion"
rust-version = "1.73"
rust-version = "1.75"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

By my reading of https://github.com/apache/datafusion?tab=readme-ov-file#rust-version-compatibility-policy

is that since 1.74 was released in Nov 2023, we can safely update in this PR

@jayzhan211
jayzhan211 merged commit 8f718dd into apache:mainJun 12, 2024
@jayzhan211
jayzhan211 deleted the count-for-all branch June 12, 2024 23:54
@jayzhan211

Copy link
Copy Markdown
ContributorAuthor

Thanks @alamb !

findepi pushed a commit to findepi/datafusion that referenced this pull request Jul 16, 2024
…he#10484)
* mv accumulate indices
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* complete udaf
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* register
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix expr
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* filter distinct count
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* todo: need to move count distinct too
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* move code around
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* move distinct to aggr-crate
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* replace
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* backup
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix function name and physical expr
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix physical optimizer
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix all slt
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* cleanup
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* cleanup
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix with args
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* add label
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* revert builtin related code back
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix test
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix substrait
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix doc
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fmy
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix udaf macro for distinct but not apply
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fmt
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix count distinct and use workspace
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* add reverse
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* remove old code
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* backup
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* use macro
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* expr builder
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* introduce expr builder
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* add example
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fmt
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* clean agg sta
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* combine agg
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* limit distinct and fmt
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* cleanup name
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix ci
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix window
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fmt
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix ci
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fmt
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix merged
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix rebase
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* cleanup
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* use std
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* update mrsv
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* upd msrv
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* revert test
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fmt
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* downgrade to 1.75
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* 1.76
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* ahas
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* revert to 1.75
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* rm count
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix merge
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fmt
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* clippy
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* rm sum in test_no_duplicate_name
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
* fix
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
---------
Signed-off-by: jayzhan211 <jayzhan211@gmail.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

coreCore DataFusion cratelogical-exprLogical plan and expressionsoptimizerOptimizer rulesphysical-exprChanges to the physical-expr cratessqllogictestSQL Logic Tests (.slt)substraitChanges to the substrait crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@jayzhan211@alamb