no connection data found for keepalive grpc connection

Bug #2003265 reported by Andre Marianiello
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Nginx
New
Undecided
Unassigned

Bug Description

Version: 1.19.10
Config: see attached nginx.conf

What happened: Someone reported this issue on this ingress-nginx project on github here https://github.com/kubernetes/ingress-nginx/issues/4836, but I believe this is an underlying nginx issue, so I am reporting here as well. Essentially, when nginx connects to an upstream and keepalive is in effect, the connection used may be a preexisting connection that was already created previously. The grpc module assumes that any connection cached connection it receives was initially created for grpc use, but the connection cache does not track this information, so it could pass the grpc module a plain old http1 connection that was originally created by some other module. When this happens the grpc module cannot use it and bails out. This seems like behavior that could be fixed somehow, but I'm not sure.

What I expected: I would expect the connection caching to only allow reuse of viable connections. Either tracking whether a connection is viable for grpc, or by allowing http1-created connections to be successfully used by the grpc module.

Revision history for this message
Andre Marianiello (andre-marianiello) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.