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

[SPARK-48116][INFRA] Run pyspark-pandas* only in PR builder and Daily Python CIs #46367

Closed
wants to merge 1 commit into from

Conversation

dongjoon-hyun
Copy link
Member

@dongjoon-hyun dongjoon-hyun commented May 3, 2024

What changes were proposed in this pull request?

This PR aims to run pyspark-pandas* only in PR builder and Daily Python CIs. In other words, only the commit builder will skip it by default. Please note that all PR builders is not consuming ASF resources and they provides lots of test coverage everyday.

Why are the changes needed?

To reduce GitHub Action usage to meet ASF INFRA policy.

Although pandas is an optional package in PySpark, this is essential for PySpark users and we have 6 test pipelines which requires lots of resources. We need to optimize the job concurrently level to less than or equal to 20 while keeping the test capability as much as possible.

# PySpark dependencies (optional)
numpy>=1.21
pyarrow>=4.0.0
six==1.16.0
pandas>=1.4.4

  • pyspark-pandas
  • pyspark-pandas-slow
  • pyspark-pandas-connect-part0
  • pyspark-pandas-connect-part1
  • pyspark-pandas-connect-part2
  • pyspark-pandas-connect-part3

Does this PR introduce any user-facing change?

No.

How was this patch tested?

Manual review.

Was this patch authored or co-authored using generative AI tooling?

No.

@github-actions github-actions bot added the INFRA label May 3, 2024
@dongjoon-hyun dongjoon-hyun marked this pull request as draft May 3, 2024 16:31
@dongjoon-hyun dongjoon-hyun changed the title [SPARK-48116][INFRA] Move pyspark-pandas* tests to Daily Python CIs [SPARK-48116][INFRA] Run pyspark-pandas* in PR builder and Daily Python CIs May 3, 2024
@dongjoon-hyun dongjoon-hyun marked this pull request as ready for review May 3, 2024 16:53
@dongjoon-hyun dongjoon-hyun changed the title [SPARK-48116][INFRA] Run pyspark-pandas* in PR builder and Daily Python CIs [SPARK-48116][INFRA] Run pyspark-pandas* only in PR builder and Daily Python CIs May 3, 2024
@dongjoon-hyun
Copy link
Member Author

Could you review this PR, @HyukjinKwon ?

@dongjoon-hyun
Copy link
Member Author

Could you review this PR, @zhengruifeng ?

@dongjoon-hyun
Copy link
Member Author

dongjoon-hyun commented May 4, 2024

ASF Infra team requested GitHub Action usage control to Apache Spark PMC officially.

Here is the umbrella JIRA issue to meet ASF Infra policy.

@dongjoon-hyun
Copy link
Member Author

Could you review this PR, @gengliangwang ?

@@ -347,12 +353,139 @@ jobs:
pyspark-core, pyspark-errors, pyspark-streaming
- >-
pyspark-mllib, pyspark-ml, pyspark-ml-connect
- >-
Copy link
Member

Choose a reason for hiding this comment

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

I'm fine with sikpping itself but wonder if we can deduplicate this by directly adding an if to the module based on the JSON input above. I can follow up.

@HyukjinKwon
Copy link
Member

LGTM,one comment but I can followup.

@dongjoon-hyun
Copy link
Member Author

Thank you for the suggestion. Yes, I hope to do the deduplication later~
Let me merge this to monitor the reduced usage. Thank you, @HyukjinKwon

@dongjoon-hyun
Copy link
Member Author

Merged to master~

HyukjinKwon added a commit that referenced this pull request May 4, 2024
…condition

### What changes were proposed in this pull request?

This PR is a followup of #46367 that simplifies the build and deduplicate them.

### Why are the changes needed?

To fix the condition, and make it deduplicated.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

Manually.

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes #46380 from HyukjinKwon/SPARK-48116-followup.

Authored-by: Hyukjin Kwon <gurwls223@apache.org>
Signed-off-by: Hyukjin Kwon <gurwls223@apache.org>
HyukjinKwon added a commit that referenced this pull request May 4, 2024
…ogic

### What changes were proposed in this pull request?

This PR is another try of #46380 that is a followup of #46367 that simplifies the build and deduplicate them.

### Why are the changes needed?

To fix the condition, and make it deduplicated.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

Will test in my own fork: https://github.com/HyukjinKwon/spark/actions/runs/8948215777

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes #46381 from HyukjinKwon/SPARK-48116-followup2.

Authored-by: Hyukjin Kwon <gurwls223@apache.org>
Signed-off-by: Hyukjin Kwon <gurwls223@apache.org>
sinaiamonkar-sai pushed a commit to sinaiamonkar-sai/spark that referenced this pull request May 5, 2024
…condition

### What changes were proposed in this pull request?

This PR is a followup of apache#46367 that simplifies the build and deduplicate them.

### Why are the changes needed?

To fix the condition, and make it deduplicated.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

Manually.

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes apache#46380 from HyukjinKwon/SPARK-48116-followup.

Authored-by: Hyukjin Kwon <gurwls223@apache.org>
Signed-off-by: Hyukjin Kwon <gurwls223@apache.org>
sinaiamonkar-sai pushed a commit to sinaiamonkar-sai/spark that referenced this pull request May 5, 2024
…ogic

### What changes were proposed in this pull request?

This PR is another try of apache#46380 that is a followup of apache#46367 that simplifies the build and deduplicate them.

### Why are the changes needed?

To fix the condition, and make it deduplicated.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

Will test in my own fork: https://github.com/HyukjinKwon/spark/actions/runs/8948215777

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes apache#46381 from HyukjinKwon/SPARK-48116-followup2.

Authored-by: Hyukjin Kwon <gurwls223@apache.org>
Signed-off-by: Hyukjin Kwon <gurwls223@apache.org>
@zhengruifeng
Copy link
Contributor

late LGTM, thanks @dongjoon-hyun

@dongjoon-hyun
Copy link
Member Author

Thanks, @zhengruifeng

@dongjoon-hyun dongjoon-hyun deleted the SPARK-48116 branch May 6, 2024 03:48
JacobZheng0927 pushed a commit to JacobZheng0927/spark that referenced this pull request May 11, 2024
…ly Python CIs

### What changes were proposed in this pull request?

This PR aims to run `pyspark-pandas*` only in PR builder and Daily Python CIs. In other words, only the commit builder will skip it by default. Please note that all PR builders is not consuming ASF resources and they provides lots of test coverage everyday.
- https://github.com/apache/spark/actions/workflows/build_python.yml

### Why are the changes needed?

To reduce GitHub Action usage to meet ASF INFRA policy.
- https://infra.apache.org/github-actions-policy.html

    > All workflows MUST have a job concurrency level less than or equal to 20. This means a workflow cannot have more than 20 jobs running at the same time across all matrices.

Although `pandas` is an **optional** package in PySpark, this is essential for PySpark users and we have **6 test pipelines** which requires lots of resources. We need to optimize the job concurrently level to `less than or equal to 20` while keeping the test capability as much as possible.

https://github.com/apache/spark/blob/f450272a9aac812d735eb5f741eec1f6cf1c837c/dev/requirements.txt#L4-L8

- pyspark-pandas
- pyspark-pandas-slow
- pyspark-pandas-connect-part0
- pyspark-pandas-connect-part1
- pyspark-pandas-connect-part2
- pyspark-pandas-connect-part3

### Does this PR introduce _any_ user-facing change?

No.

### How was this patch tested?

Manual review.

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes apache#46367 from dongjoon-hyun/SPARK-48116.

Authored-by: Dongjoon Hyun <dhyun@apple.com>
Signed-off-by: Dongjoon Hyun <dhyun@apple.com>
JacobZheng0927 pushed a commit to JacobZheng0927/spark that referenced this pull request May 11, 2024
…condition

### What changes were proposed in this pull request?

This PR is a followup of apache#46367 that simplifies the build and deduplicate them.

### Why are the changes needed?

To fix the condition, and make it deduplicated.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

Manually.

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes apache#46380 from HyukjinKwon/SPARK-48116-followup.

Authored-by: Hyukjin Kwon <gurwls223@apache.org>
Signed-off-by: Hyukjin Kwon <gurwls223@apache.org>
JacobZheng0927 pushed a commit to JacobZheng0927/spark that referenced this pull request May 11, 2024
…ogic

### What changes were proposed in this pull request?

This PR is another try of apache#46380 that is a followup of apache#46367 that simplifies the build and deduplicate them.

### Why are the changes needed?

To fix the condition, and make it deduplicated.

### Does this PR introduce _any_ user-facing change?

No, dev-only.

### How was this patch tested?

Will test in my own fork: https://github.com/HyukjinKwon/spark/actions/runs/8948215777

### Was this patch authored or co-authored using generative AI tooling?

No.

Closes apache#46381 from HyukjinKwon/SPARK-48116-followup2.

Authored-by: Hyukjin Kwon <gurwls223@apache.org>
Signed-off-by: Hyukjin Kwon <gurwls223@apache.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
3 participants