-
Notifications
You must be signed in to change notification settings - Fork 29k
[SPARK-54177][BUILD] Upgrade gRPC to 1.76 and protobuf to 6.33 #52879
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
### What changes were proposed in this pull request? Bump gRPC from 1.67 to 1.76, with additional Python package upgrades for consistency: - `googleapis-common-protos==1.71.0` - `protobuf==6.33.0` And `buf v33.0` Fix the shading leaks of the `spark-connect` jar before ``` $ jar tf spark-connect_2.13-4.1.0-preview3.jar | grep '.class$' | grep -v 'org/apache/spark' | grep -v 'org/sparkproject' | grep -v 'META-INF' javax/annotation/Generated.class ... javax/ejb/EJB.class ... javax/persistence/PersistenceContext.class ... javax/xml/ws/WebServiceRef.class ... com/google/shopping/type/Price$Builder.class ... com/google/apps/card/v1/Widget$DataCase.class ... ``` after ``` $ jar tf spark-connect_2.13-4.2.0-SNAPSHOT.jar | grep '.class$' | grep -v 'org/apache/spark' | grep -v 'org/sparkproject' | grep -v 'META-INF' <no-output> ``` ### Why are the changes needed? For Python: - [grpcio v1.75.1](https://github.com/grpc/grpc/releases/tag/v1.75.1) addes official Python 3.14 support - googleapis-common-proto v1.71.0 addes official Python 3.14 support, see googleapis/google-cloud-python#14699 For Java: - v1.74 removes dependency on Tomcat's annotation API, see grpc/grpc-java#9179 Check full release notes at: https://github.com/grpc/grpc/releases ### Does this PR introduce _any_ user-facing change? Maybe, reduce the potential conflict risks between Spark and user classes. ### How was this patch tested? Pass GHA, plus manual checks (see above sections). ### Was this patch authored or co-authored using generative AI tooling? No. Closes apache#52874 from pan3793/SPARK-54177. Authored-by: Cheng Pan <[email protected]> Signed-off-by: Dongjoon Hyun <[email protected]>
|
cc @dongjoon-hyun. the diff from previous attempt is 6fcab50 |
|
I confirm the issue has gone by building the image locally. |
dongjoon-hyun
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.
+1, LGTM. Merged to master only first. Thank you, @pan3793 .
|
I'll monitor the |
|
@dongjoon-hyun, thank you for taking care of this, and once you think it's stable, I can create the backport PR to branch-4.1 |
Second attempt of #52874, fixed the grpcio deps version for Python 3.14, which was missed in the previous attempt. ### What changes were proposed in this pull request? Bump gRPC from 1.67 to 1.76, with additional Python package upgrades for consistency: - `googleapis-common-protos==1.71.0` - `protobuf==6.33.0` And `buf v33.0` Fix the shading leaks of the `spark-connect` jar before ``` $ jar tf spark-connect_2.13-4.1.0-preview3.jar | grep '.class$' | grep -v 'org/apache/spark' | grep -v 'org/sparkproject' | grep -v 'META-INF' javax/annotation/Generated.class ... javax/ejb/EJB.class ... javax/persistence/PersistenceContext.class ... javax/xml/ws/WebServiceRef.class ... com/google/shopping/type/Price$Builder.class ... com/google/apps/card/v1/Widget$DataCase.class ... ``` after ``` $ jar tf spark-connect_2.13-4.2.0-SNAPSHOT.jar | grep '.class$' | grep -v 'org/apache/spark' | grep -v 'org/sparkproject' | grep -v 'META-INF' <no-output> ``` ### Why are the changes needed? For Python: - [grpcio v1.75.1](https://github.com/grpc/grpc/releases/tag/v1.75.1) addes official Python 3.14 support - googleapis-common-proto v1.71.0 addes official Python 3.14 support, see googleapis/google-cloud-python#14699 For Java: - v1.74 removes dependency on Tomcat's annotation API, see grpc/grpc-java#9179 Check full release notes at: https://github.com/grpc/grpc/releases ### Does this PR introduce _any_ user-facing change? Maybe, reduce the potential conflict risks between Spark and user classes. ### How was this patch tested? Pass GHA, plus manual checks (see above sections). ### Was this patch authored or co-authored using generative AI tooling? No. Closes #52879 from pan3793/SPARK-54177-2. Authored-by: Cheng Pan <[email protected]> Signed-off-by: Dongjoon Hyun <[email protected]> (cherry picked from commit 83e49b7) Signed-off-by: Dongjoon Hyun <[email protected]>
|
Thank you. I cherry-picked it directly. :) |
Second attempt of apache#52874, fixed the grpcio deps version for Python 3.14, which was missed in the previous attempt. ### What changes were proposed in this pull request? Bump gRPC from 1.67 to 1.76, with additional Python package upgrades for consistency: - `googleapis-common-protos==1.71.0` - `protobuf==6.33.0` And `buf v33.0` Fix the shading leaks of the `spark-connect` jar before ``` $ jar tf spark-connect_2.13-4.1.0-preview3.jar | grep '.class$' | grep -v 'org/apache/spark' | grep -v 'org/sparkproject' | grep -v 'META-INF' javax/annotation/Generated.class ... javax/ejb/EJB.class ... javax/persistence/PersistenceContext.class ... javax/xml/ws/WebServiceRef.class ... com/google/shopping/type/Price$Builder.class ... com/google/apps/card/v1/Widget$DataCase.class ... ``` after ``` $ jar tf spark-connect_2.13-4.2.0-SNAPSHOT.jar | grep '.class$' | grep -v 'org/apache/spark' | grep -v 'org/sparkproject' | grep -v 'META-INF' <no-output> ``` ### Why are the changes needed? For Python: - [grpcio v1.75.1](https://github.com/grpc/grpc/releases/tag/v1.75.1) addes official Python 3.14 support - googleapis-common-proto v1.71.0 addes official Python 3.14 support, see googleapis/google-cloud-python#14699 For Java: - v1.74 removes dependency on Tomcat's annotation API, see grpc/grpc-java#9179 Check full release notes at: https://github.com/grpc/grpc/releases ### Does this PR introduce _any_ user-facing change? Maybe, reduce the potential conflict risks between Spark and user classes. ### How was this patch tested? Pass GHA, plus manual checks (see above sections). ### Was this patch authored or co-authored using generative AI tooling? No. Closes apache#52879 from pan3793/SPARK-54177-2. Authored-by: Cheng Pan <[email protected]> Signed-off-by: Dongjoon Hyun <[email protected]>
Second attempt of #52874, fixed the grpcio deps version for Python 3.14, which was missed in the previous attempt.
What changes were proposed in this pull request?
Bump gRPC from 1.67 to 1.76, with additional Python package upgrades for consistency:
googleapis-common-protos==1.71.0protobuf==6.33.0And
buf v33.0Fix the shading leaks of the
spark-connectjarbefore
after
Why are the changes needed?
For Python:
For Java:
Check full release notes at: https://github.com/grpc/grpc/releases
Does this PR introduce any user-facing change?
Maybe, reduce the potential conflict risks between Spark and user classes.
How was this patch tested?
Pass GHA, plus manual checks (see above sections).
Was this patch authored or co-authored using generative AI tooling?
No.