Skip to content

Set a channel's idle timeout #2046

@joshuakarp

Description

@joshuakarp

Is your feature request related to a problem? Please describe.

A gRPC channel has observable connection states: CONNECTING, READY, TRANSIENT_FAILURE, IDLE, and SHUTDOWN (as per https://grpc.github.io/grpc/core/md_doc_connectivity-semantics-and-api.html). Specifically, the channel's transition from READY to IDLE is governed by the "idle timeout" value of the channel. There's a couple of pieces of documentation from gRPC core that talk about this idle timeout parameter:

We use these low-level transitions to perform specific logic on our domain's connections, and would like to test this specific transition from READY to IDLE (but don't want a test that runs for 5 or 30 minutes).

Describe the solution you'd like

We'd like a publicly-exposed means of adjusting the value of the channel's idle timeout (e.g. a ChannelOptions parameter when initialising the channel).

Describe alternatives you've considered

We've taken a look in the ClientOptions and ChannelOptions in grpc-js, but have had no luck in finding anything that would resolve this problem.

Although, there are the options of keepalive_time_ms and keepalive_timeout_ms. Would it be possible to use these to augment this functionality? Or any other further options that might be useful here?

Additional context

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions