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

[CELEBORN-1356] Split rpc module into rpc_app and rpc_service #2460

Closed
wants to merge 5 commits into from

Conversation

mridulm
Copy link
Contributor

@mridulm mridulm commented Apr 16, 2024

What changes were proposed in this pull request?

Split the rpc transport module into rpc_app and rpc_service to allow for them to be independently configured.

Why are the changes needed?

We need the ability to independently configure communication between application components (driver/executors in spark applications) and those to/from Celeborn service (master/workers) components.

This is particularly relevant for TLS support where applications might be running with TLS disabled for their rpc services or using self-signed certificates (see CELEBORN-1354 for an example), while services would have signed certs.

Does this PR introduce any user-facing change?

Yes, it allows users to independently configure rpc env within the application and those to/from services.
Backward compatibility is maintained - and so existing rpc is the fallback in case rpc_app or rpc_service config is not found.

How was this patch tested?

Unit tests were enhanced, existing tests pass.

@mridulm
Copy link
Contributor Author

mridulm commented Apr 16, 2024

If it makes it easier to review, I can split it into two - updates to CelebornConf, which is mostly config updates; and wiring up the new transport module to RpcEnv and usages.
Please let me know if that helps.

@mridulm
Copy link
Contributor Author

mridulm commented Apr 16, 2024

The test failure seems to be some timeout issue ? this is ready for review.

+CC @otterc , @waitinfuture, @FMX , @pan3793

Copy link
Contributor

@FMX FMX left a comment

Choose a reason for hiding this comment

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

I think split rpc module looks fine to me, but there is no need to introduce something not used currently.

@pan3793 pan3793 changed the title [CELEBORN-1356] Split rpc module [CELEBORN-1356] Split rpc module into rpc_app and rpc_service Apr 17, 2024
@pan3793
Copy link
Member

pan3793 commented Apr 17, 2024

code change lgtm, could you pls add an item to the migration guide?

@mridulm
Copy link
Contributor Author

mridulm commented Apr 17, 2024

code change lgtm, could you pls add an item to the migration guide?

I was planning to add that as part of https://issues.apache.org/jira/browse/CELEBORN-1353 .. should I be adding it as part of this PR instead ?

Edit: added a note in CELEBORN-1353 on migration guide

@pan3793 pan3793 closed this in f27ede4 Apr 17, 2024
@pan3793
Copy link
Member

pan3793 commented Apr 17, 2024

@mridulm thanks for opening a dedicated ticket for docs, merged to main for 0.5

@mridulm
Copy link
Contributor Author

mridulm commented Apr 17, 2024

Thanks for the reviews @FMX and @pan3793 !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants