Skip to content

[Enhancement:] Adjust alert about changing download thread count #729

Description

@sentry

As of the new downloading system, changing download thread count should not reset the download from 0

Sentry Issue: COLLAPSE-LAUNCHER-1BF

System.Net.Sockets.SocketException: The I/O operation has been aborted because of either a thread exit or an application request.
System.IO.IOException: net_io_readfailure, The I/O operation has been aborted because of either a thread exit or an application request.
  ?, in void AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
  ?, in async ValueTask<int> SslStream.EnsureFullTlsFrameAsync<TIOAdapter>(CancellationToken cancellationToken, int estimatedSize)
  ?, in async ValueTask<int> SslStream.ReadAsyncInternal<TIOAdapter>(Memory<byte> buffer, CancellationToken cancellationToken)
  ?, in async ValueTask<int> ContentLengthReadStream.ReadAsync(Memory<byte> buffer, CancellationToken cancellationToken)

System.Threading.Tasks.TaskCanceledException: OperationCanceled
  File "Session.cs", line 93, in async Task<int> HttpResponseInputStream.ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken)
    int read = await NetworkStream.ReadAsync(buffer.AsMemory(offset, count), cancellationToken);
  File "SessionTask.cs", line 67, in async Task Http.SessionTaskRunnerContainer(Session session, CancellationToken token)
    while ((read = await session.StreamInput.ReadAsync(buffer, 0, BufferSize, cooperatedToken.Token)) > 0)

System.TimeoutException: Request for session ID: 430204 has timed out!
  File "SessionTask.cs", line 132, in async Task Http.SessionTaskRunnerContainer(Session session, CancellationToken token)
    throw new TimeoutException($"Request for session ID: {session.SessionID} has timed out!", ex);
  File "SessionTask.cs", line 147, in async Task Http.SessionTaskRunnerContainer(Session session, CancellationToken token)
    }
  File "SessionTask.cs", line 22, in async ValueTask Http.TaskWhenAllSession(IAsyncEnumerable<Session> sessions, CancellationToken token, int taskCount)+(?) => { }
    await SessionTaskRunnerContainer(session, innerToken);
  File "SessionTask.cs", line 20, in async ValueTask Http.TaskWhenAllSession(IAsyncEnumerable<Session> sessions, CancellationToken token, int taskCount)
    await Parallel.ForEachAsync(sessions, parallelOptions, async (session, innerToken) =>
  File "Http.Multi.cs", line 19, in async Task Http.Download(string url, string output, int connectionSessions, bool overwrite, CancellationToken threadToken)
    await TaskWhenAllSession(GetMultisessionTasks(url, output, connectionSessions, overwrite, threadToken), threadToken, connectionSessions);
...
(5 additional frame(s) were not displayed)

System.TimeoutException: Timeout occurred when trying to install Honkai: Star Rail (Global)
	Check stability of your internet! If your internet speed is slow, please lower the download thread count.
	**WARNING** Changing download thread count WILL reset your download from 0, and you have to delete the existing download chunks manually!

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area: RuntimeIssue labeled for runtime, Hi3Helper.Core and other libraries used by CollapseEnhancementNew feature or requestGood first issueGood for newcomersNeed Translation UpdateThe translation is partially uncompleted or need to be updatedPriority: Medium

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions