• Felix Lange's avatar
    rpc: fix rare deadlock when canceling HTTP call context (#19715) · 8d815e36
    Felix Lange authored
    When cancelling the context for a call on a HTTP-based client while the
    call is running, the select in requestOp.wait may hit the <-context.Done()
    case instead of the <-op.resp case. This doesn't happen often -- our
    cancel test hasn't caught this even though it ran thousands of times
    on CI since the RPC client was added.
    
    Fixes #19714
    8d815e36
client.go 18.7 KB