-
Notifications
You must be signed in to change notification settings - Fork 652
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/grpc-js & grpc.max_metadata_size #1533
Comments
Unfortunately, it's not that simple. According to my team, that setting you linked is just advisory. The other libraries need to do explicit enforcement of that option and I can't find anything in the Node |
well in our case we need to increase it actually. |
That sounds like a bug. A stream hanging like that is never an intended outcome, even if there is a violation of that kind of restriction. |
@murgatroid99 so on my machine the threshold is ~64K, not 32K - my bad. |
That is interesting. I don't know what might cause that. One potentially important thing to note there is that that parameter that you are using is for sending trailing metadata. You can send headers using the |
Yup, tried that as well. Same result |
OK, I tried changing the value of the setting that you linked to on both the client and the server, and that did not change the behavior of the test. So that's definitely not the right solution here. I think the next step is to create the same test using only Node's built in http2 module. If that has the same behavior, then this is definitely a bug in Node itself, and an issue should be filed there. |
I played with that setting as well. |
Michael, hey. Spent some time investigating further and got some findings. Do you think you can now support Thanks |
Now that you have a reproduction using only the As I mentioned in my previous comment, the The documentation for
If you set that option and then exceed it, do you get the |
Michael, I don't think there's an issue with node's The server indeed emits As for the client side - client only gets the Probably |
UPD
Then maybe just adding a log/error message? WDYT? |
Wait, the client gets the |
The client does get |
Michael, added debug printouts into call-stream.ts#attachHttp2Stream events and I don't get the Also tried adding
and now I don't see any halts any more, instead I get an error
probably can be improved with some other error code? |
The
Closing and destroying the stream should trigger the |
After doing my own testing, I have filed nodejs/node#35133. I will also figure out a good setting for |
@murgatroid99 thanks! |
Is your feature request related to a problem? Please describe.
In order to migrate from
grpc
togrpc-js
as suggested I need to be able to specifygprc.max_metadata_size
, which isn't supported currently.If I understand correctly, the default of 64k is implied by the core
http2
module and supporting it seems to be pretty easyThe text was updated successfully, but these errors were encountered: