Re: Erlang SSH client hangs after some thousand requests
Hans Nilsson R <[email protected]> Mon, 12 Dec 2016 18:22:30 +0100
| Newsgroups | gmane.comp.lang.erlang.bugs |
|---|---|
| Organization | Ericsson AB |
| Message-ID | <[email protected]> |
Do you call ssh_connection:adjust_window/3?
-Hans
On 12/12/2016 06:01 PM, Mario Santoro wrote:
> Hi all,
> =
> I wrote an Erlang ssh client module for running commands on a remote
> host over an ssh connection.
> =
> The main calls to Erlang ssh library functions to setup the connection
> are the following:
> =
> ssh:connect/4
> =
> ssh_connection:session_channel/2
> =
> ssh_connection:ptty_alloc/3
> =
> ssh_connection:shell/2
> =
> =
> =
> afterwards I=92m issuing a command to remote host via:
> =
> ssh_connection:send/3
> =
> =
> =
> and receiving related reply in a msg loop, with the following format:
> =
> {ssh_cm, ConnectionRef, {data, ChannelId, Type, Data}}
> =
> =
> =
> Everything works fine and I=92m able to issue commands and receive
> responses correctly.
> =
> =
> =
> What I=92m experiencing is a strange behavior on long lasting ssh
> sessions: when I start a long loop of
> =
> ssh send-receive requests, it seems like the client connection hangs
> after a certain number or positive command requests (several thousands),
> =
> waiting indefinitely for a reply, wherefrom it exits with timeout.
> =
> The only way to recover from this status is to disconnect and reconnect
> to the server.
> =
> =
> =
> I tried with both Erlang OTP/17.x and OTP/18.x and towards remote hosts
> running Linux and/or Solaris OS, but the result is the same.
> =
> =
> =
> This behavior seems to be deterministic: given a command, it happens
> after the same number of issued requests (e.g. for a trivial =93pwd=94 co=
mmand,
> =
> the client always hangs after 2510 tries!!).
> =
> This make me think as there=92s a limited receive buffer size somewhere
> into the client ssh library or something similar (maybe something that I
> should set at connection setup?);
> =
> since I=92m quite newbie to Erlang, I=92d very much appreciate if anyone
> could help me to find out the reason for this behaviour.
> =
> =
> =
> Thanks in advance for your help!
> =
> =
> =
> Regards,
> =
> /Mario
> =
> =
> =
> =
> =
> =
> =
> Ericsson <http://www.ericsson.com/>
> =
> *MARIO SANTORO *
> Service Project Manager
> Region Mediterranean
> RMED ITC CU SCM SL AIB DMO
> =
> =
> *Ericsson*
> Via Anagnina, 203
> 00118, ROME, ITALY
> Mobile +39 335 699 5215
> Office +39 06 7258 8404
> [email protected]
> www.ericsson.com
> =
> =
> =
> http://www.ericsson.com/current_campaign
> <http://www.ericsson.com/current_campaign>
> =
> =
> =
> ----------
> =
> Legal entity: Ericsson Telecomunicazioni SpA, registered office in Rome.
> This Communication is Confidential. We only send and receive email on
> the basis of the terms set out at www.ericsson.com/email_disclaimer
> <http://www.ericsson.com/email_disclaimer>
> =
> =
> =
> _______________________________________________
> erlang-bugs mailing list
> [email protected]
> http://erlang.org/mailman/listinfo/erlang-bugs
> =
_______________________________________________
erlang-bugs mailing list
[email protected]
http://erlang.org/mailman/listinfo/erlang-bugs