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

grpc-netty-shaded incompatible with netty-transport-native-epoll #4732

Closed
snowp opened this issue Aug 3, 2018 · 6 comments
Closed

grpc-netty-shaded incompatible with netty-transport-native-epoll #4732

snowp opened this issue Aug 3, 2018 · 6 comments
Assignees
Milestone

Comments

@snowp
Copy link
Contributor

snowp commented Aug 3, 2018

Please answer these questions before submitting your issue.

What version of gRPC are you using?

1.13.1

What did you expect to see?

I expected to be able to specify EpollEventLoopGroup and EpollDomainSocketChannel as the eventLoopGroup and channelType when using grpc-netty-shaded.

Due to netty-shading rewriting the package path, grpc-netty-shaded isn't compatible with regular netty packages. This is generally fine because grpc-netty-shaded contains all classes necessary to use netty with grpc, but jars like netty-transport-native-epoll are missing, making it impossible (I think?) to use them with grpc-netty-shaded.

Thoughts on this? Should netty-transport-native-epoll/netty-transport-native-kqueue be shaded into grpc-netty-shaded?

@ejona86
Copy link
Member

ejona86 commented Aug 3, 2018

Yes, it is incompatible. There's only two choices:

  1. If you're using something like epoll/kqueue native transports, use grpc-netty instead
  2. Add epoll/kqueue for all users, increasing everyone's binary size

At present (1), makes the most sense since you can't actually enable epoll/kqueue without using gRPC+Netty-specific APIs, which means using shaded names. At some point (maybe this quarter?) we'll have some built-in Unix Domain Socket handling, which will muddy the waters.

Are you wanting the performance, unix socket support, or something else?

@snowp
Copy link
Contributor Author

snowp commented Aug 3, 2018

We need it for unix socket support. Sounds like we should be moving back to grpc-netty until there's better built in support for unix sockets. Is there an issue tracking that work?

@njhill
Copy link
Contributor

njhill commented Aug 3, 2018

There's also this https://github.com/HubSpot/grpc-netty-shaded-epoll

@ejona86 ejona86 added this to the Unscheduled milestone Aug 7, 2018
@ejona86
Copy link
Member

ejona86 commented Aug 13, 2018

I've created a tracking issue: #4750. Note that #3085 is the main work.

@SamBarker
Copy link

I think this was fixed by #5581

@ejona86
Copy link
Member

ejona86 commented Aug 19, 2021

Yep. Fixed by #5581

@ejona86 ejona86 closed this as completed Aug 19, 2021
@ejona86 ejona86 modified the milestones: Unscheduled, 1.21 Aug 19, 2021
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 18, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants