-
Notifications
You must be signed in to change notification settings - Fork 523
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Get NotSupportedException for a non-seekable stream when ResumeAsync is called after previous call on ResumeAsync timeout #602
Comments
Here are the pseudo-codes to reproduce this issue when the uploaded file size is less than chunk size and the 1st call on ResumeAsync timeouts. create an object of ResumableUpload.InsertMediaUpload |
Sorry for the late response....
Thanks, |
I'm fairly sure I've reproduced this bug in a test. I hope to have the new test-cases and a fix ready in the next few days. |
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart.
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Test more edge-cases of ResumableUpload, and test using an HTTP server fixing googleapis#735 Fix bugs * googleapis#755 Incorrect resume behaviour if first upload chunk fails. * googleapis#602 Resume fails with non-seekable stream when last chunk fails to upload. And adds test for resuming upload on program restart. Don't run most ImprovedResumableUploadTests on travis, as they fail on the Mono infrastructure. All tests pass on a Windows machine with MS .NET
Finally fixed :) |
Not sure if this is a real issue.
When the resumable sync is used with a non-seekable stream, we got the NotSupportedException sometimes. We went through the codes and found there may be something wrong in the ResumableUpload.cs.
if (StreamLength != UnknownSize)
{
PrepareNextChunkKnownSize(request, stream, cancellationToken);
}
else
{
PrepareNextChunkUnknownSize(request, stream, cancellationToken);
}
The text was updated successfully, but these errors were encountered: