Recently, we find our YarnShuffleService has a lot of half-open connections where shuffle servers' connections are active while clients have already closed.
For example, from server's `ss -nt sport = :7337` output we have
However, on client `ss -nt dport =: 7337 | grep server` would return nothing.
Looking at the code, `YarnShuffleService` creates a `TransportContext` with `closeIdleConnections` set to false.
Hence, it's possible the channel may never get closed at server side if the server misses the event that the client has closed it.
I find that parameter is true for `ExternalShuffleService`.
Is there any reason for the difference here ? Can we enable closeIdleConnections in YarnShuffleService or at least add a configuration to enable it ?