0 votes
ago by (2.1k points)

Hi,

The following error occurs very rarely in Rebex version 7.0.9313:

System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
at Rebex.Net.Sftp.adqbk(String p0, Regex p1, ppnka p2, xsttp p3)
at Rebex.Net.Sftp.GetList(String path)

Please understand that we cannot request any more logs, as these are customer logs.

Has this been resolved in version 7.0.9448?

Thank you,

Applies to: Rebex SFTP
ago by (151k points)
According to the version history, this has not been fixed, and we have not even been aware of such issue. Unfortunately, the stack trace only points towards the inner implementation of the GetList method, which is quite complex, and it does not provide much clues about where exactly to look for the ArgumentOutOfRangeException. But we will still try!

However, can you look into a log for any clues, or ask the customer to do that? You don't have to share the log with us, but if it does provide any addition info, it would be helpful to know.

Additionally, if there is anything special or interesting regarding that particular GetList call, please let us know as well.
ago by (2.1k points)
Unfortunately, it's not possible to obtain any further logs from the user.
The folder name is generic, and the only special characters are a comma and a space.
The following requests to that folder will not cause any issues.
This seems to be a very rare occurrence, so it may be a temporary, strange response from the server.
ago by (2.1k points)
Note that sftp.GetList is called from multiple threads simultaneously.
Please let me know if GetList might be problematic when called concurrently from multiple threads.
ago by (151k points)
Thanks for the update, this actually looks promising! We have found a possible issue related to thread synchronization of access to a list of current transfers of an Sftp object, which could be triggered by lot of GetList calls from multiple threads.
ago by (2.1k points)
That's encouraging news.
Will the update arrive this month?
If the update is delayed, can we temporarily handle it using the following method:

var list = sftp.GetListAsync(sftppath).GetAwaiter().GetResult();

Thank you for your support.

Please log in or register to answer this question.

...