Vincent Ladeuil wrote:
> > It requires the API user to care about the connection timeout.
>
> Right, but the same kind of constraint already applies to http
> transports for example and the strategy there has been to reconnect
> transparently on transient errors. I suspect the same kind of approach
> could be taken for ssh transports.
Perhaps. It will be less than transparent for some users: they will get
prompted for a passphrase. And it's much more expensive in roundtrips
to reestablish an SSH session than it is to make a new HTTP connection.
Reconnecting is probably a tolerable compromise, but it's not ideal.
Ideally we'd avoid disconnecting connections unless we are certain they
aren't wanted, or are wasting resources (e.g. we are running low on
fds).
Vincent Ladeuil wrote:
> > It requires the API user to care about the connection timeout.
>
> Right, but the same kind of constraint already applies to http
> transports for example and the strategy there has been to reconnect
> transparently on transient errors. I suspect the same kind of approach
> could be taken for ssh transports.
Perhaps. It will be less than transparent for some users: they will get
prompted for a passphrase. And it's much more expensive in roundtrips
to reestablish an SSH session than it is to make a new HTTP connection.
Reconnecting is probably a tolerable compromise, but it's not ideal.
Ideally we'd avoid disconnecting connections unless we are certain they
aren't wanted, or are wasting resources (e.g. we are running low on
fds).
-Andrew.