Problems with Multiple SSH Sessions
We are having problems that occur when attempting to perform multiple SSH sessions within the same flow, The operations has useGlobalContext set to true so that it can be called from subflows, but has been modified so that SSH Shell Logon and SSH Shell Logoff are performed in the same context and do not overlap with another session. We have attempted to enclose them within Logon-Logout operations so that they don't clash in the global context. To avoid creating hung or undefined session environments, all SSH Shell operations have invalid connection parameters after the initial SSH Shell Logon.
Some of the issues we've observed are that:
- SessionID is generated using only the name of the host, port, and the user.
This becomes an issue when an SSH session has to be logged out to perform another SSH session and then resumed afterwards, and seems to result in instability within the SSH session. It also limits the way the operation can be used in. We've been able to get around it partially by using a different url for the same host.
- Exitting a connection on the remote host causes SSH Logout to fail.
While this might make sense, there should be a way to assure HPOO has performed cleanup of that session so. I tried to get past this by making a flow that attempted to perform the remote exit throguh a SSH Shell command and then call SSH Shell Logout, checking the logout message to determine if it had already been closed. However, the change didn't seem to improve session stability. If I had to guess, some of the stability issues might be caused because there is no way to formally properly clean-up a previous session.
- Session instability on second session and afterwards.
This instability isn't completely reproducible, but can be observed in sessions that are closed when they should be open in a call to SSH Shell. I'm unsure whether this occurs from sessions outside of the current run or simply as a side-effect of finalizing the first session, but it seems to be the latter, as I can't say I've been able to pinpoint a flow with the problem were it occurred during the first session.
Any help, alternatives, or suggestions on how to debug these issues would be appreciated. Our HPOO version is 10.70 and we are using the v2.0 of the operations.