You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Immediately after checking that iscsi->fd is valid, iscsi_tcp_service will check if there is a pending reconnect:
if (iscsi->pending_reconnect) {
if (time(NULL) >= iscsi->next_reconnect) {
return iscsi_reconnect(iscsi);
} else {
if (iscsi->old_iscsi) {
return 0;
}
}
}
If it finds one, it will either attempt a reconnect and return, or just return (my reading of the code tells me old_iscsi is non-NULL for essentially the entire time we are disconnected).
This is problematic for use cases where the task timeout has been set, as tasks which should be timing out during the disconnect are unable to do so.
I wonder if either moving the call to iscsi_timeout_scan(iscsi); before the pending reconnect block, or adding a call before each return statement, would solve this issue safely.
The text was updated successfully, but these errors were encountered:
Immediately after checking that
iscsi->fd
is valid,iscsi_tcp_service
will check if there is a pending reconnect:If it finds one, it will either attempt a reconnect and return, or just return (my reading of the code tells me
old_iscsi
is non-NULL for essentially the entire time we are disconnected).This is problematic for use cases where the task timeout has been set, as tasks which should be timing out during the disconnect are unable to do so.
I wonder if either moving the call to
iscsi_timeout_scan(iscsi);
before the pending reconnect block, or adding a call before each return statement, would solve this issue safely.The text was updated successfully, but these errors were encountered: