Skip to content

Channel exiting idle mode remains IDLE, not CONNECTING, until LB pick updated #10517

@ejona86

Description

@ejona86

This is because ManagedChannelImpl's exitIdleMode() does not call channelStateManager.gotoState(CONNECTING);. When exiting idle mode, the next state transition is in LbHelperImpl.updateBalancingState(), which is after the NR has returned its initial results.

This generally doesn't matter much because RPCs behave similarly for IDLE and CONNECTING. But it would be confusing when using the getState() API, like the user at https://stackoverflow.com/questions/76950718/after-the-channel-is-created-it-takes-1000ms-to-transition-from-idel-state-to .

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions