-
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
Timeouts Far Earlier Than Expected #54
Comments
Hi @isheff, We've run into a small handful of scenarios where certain error conditions (e.g. an unreachable host under certain network conditions) seem to be reported as a timeout from the C core, regardless of the actual timeout value supplied when making the client call. So it wouldn't surprise me if something similar is happening w.r.t. a max size violation. You might try playing with the Max size limits on channels can be modified via channel args, cf. this test and #35. However, it looks like like I only bound So it looks like there's certainly some attention needed there, specifically for the max send size, but the test I linked above seems to indicate a different status code for the failure case ( The fix is likely to add support for the max send size channel arg, and set it appropriately; it would also be useful to determine the source of the error reporting bug. PRs welcome =). BTW, I'm more than happy to dig into this, but won't have cycles in the super short term to do so. Thanks for the feedback! |
I wrote a quick-and-dirty script to test gRPC vs Thrift Haskell libraries when moving large, structured data over a channel. As can be seen by running the main application, even though all client timeouts are set to 10000000 seconds, I consistently get a time-out after only a second or so:
I cannot figure out why this is. Is it possible that a max size limit violation is being interpreted as a timeout? Can the max size limit be changed?
This only occurs when the data structure being sent is large enough. To give an idea of the approximate size, when
show
is called on a "too large" data structure, the result is about 10,000,000 characters long. A known "not too large" data structureshow
s to about 6,000,000 characters.Help?
P.S. gRPC is way, way faster than Thrift when sending big messages (~ 20-30x). Thanks so much!
The text was updated successfully, but these errors were encountered: