Skip to content

gRPC client xDS failing to reconnect after MaxConnectionIdle #2666

@darren-west

Description

@darren-west

Problem description

When using the gRPC node client with xDS we have experienced an issue where the client fails to handle the server ending an idle connection. This seems to have become a problem from after v1.8

We are using a Go gRPC server with MaxConnectionIdle and after the server ends the connection I can see the client logs CONNECTING -> IDLE repeatedly and calls hang until the client times out.

Reproduction steps

To reproduce connect a client gRPC using xDS to a server with MaxConnectionIdle and leave the connection idle for longer than the timeout, then try to make a request.

Environment

  • OS [Alpine]
  • Node version [20.3.1]
  • Package name and version ["@grpc/grpc-js": "^1.10.0", "@grpc/grpc-js-xds": "^1.10.0"]

Additional context

I have seen this a few times across a variety of Docker images, so Im not sure it is related to a single OS.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions