-
Notifications
You must be signed in to change notification settings - Fork 76
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
Gruf 2.13 seems to fail to allow connections #147
Comments
@tmtrademarked Hm, I wonder if we have an issue with the server start delegation that we pushed to grpc in ef139b7 - I'll take a look at this this week to figure out what's going on. Strange that our unit + e2e tests and the gruf-demo app do not have this issue. Is there anything unique you're doing in your client/server instantiation? (Channel args, deadlines, interceptors, etc) |
We do have some interceptors configured, but they are nothing particularly special - just a logging interceptor, and two for error handling. From what I can see, no code in these interceptors ever gets invoked, though. And when I try running gruf with Our config for the server is pretty basic:
I don't think we're doing anything special with channels or deadlines anywhere, but I'll keep digging and see if anything pops up. I confess that I'm pretty surprised by this too, because this release has been out for a while, and I would have expected something this bad to have been encountered before if it was at all common. |
@tmtrademarked Actually, taking a look at this - I think there's an issue where |
Awesome - thanks @splittingred ! Just to sort of prove the hypothesis, in my local gem I was adding some binding.pry statements in |
@tmtrademarked I think so, I think the thread we use to start and update the Process title isn't properly allowing the underlying started variable to properly allow the |
… to bind connections and never reach serving state (fixes #147)
@tmtrademarked I've opened #148 to address the issue. |
… to bind connections and never reach serving state (fixes #147)
… to bind connections and never reach serving state (fixes #147)
… to bind connections and never reach serving state (fixes #147)
… to bind connections and never reach serving state (fixes #147)
… to bind connections and never reach serving state (fixes #147)
… to bind connections and never reach serving state (fixes #147)
… to bind connections and never reach serving state (fixes #147)
Please describe the issue
After updating to Gruf 2.13, I can no longer make connections from my gRPC clients to my gRPC server. With Gruf 2.12, everything works fine - but with 2.13, it seems like connections are just never serviced. I see the following error reported by my client:
I don't see any logging in the server process, not even any logs about starting up/etc. (That appears unchanged in both 2.12 and 2.13, but it makes it harder for me to diagnose where the problem might be)
The truly odd part is that this feels like an error in the gRPC library itself somehow, given the error message. But I haven't changed gRPC versions, just gruf versions - and when I try upgrading gRPC as well, to 1.43.1, I seem to see the same behavior. I saw notes in previous Gruf releases about gRPC incompatibility, and figured maybe it was related, but thus far, no dice.
How to Reproduce
I don't know quite how to describe this for reproduction in another application - but in my application, it's very simple:
bundle exec gruf
, attempt to make any gRPC request viaGruf::Client.new(<options>).call
What should happen?
The server should accept connections from the calling client.
Anything else we should know?
The text was updated successfully, but these errors were encountered: