Continue Interrupted file uploads
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C#
- Sterne
- 4.4k
- Forks
- 993
- Ø Merge
- 9 T. 21 Std.
- Gemergte PRs (30 T.)
- 1
Beschreibung
Hi,
I am in a situation where I am uploading large files via SFTP , and sometimes this gets interrupted. The next time I try I want to continue where it stopped. The provided SftpClient.UploadFile functionality did not have that option, so I wrote it using an SftpStream to write to. However the throughput of that was something like 4 to 5 times lower than a call to uploadfile.
So I ended up forking, and added a parameter "continueAbortedTransfer", to the
(Internal)UploadFile function. And a few lines of code at the start of the function to set
the stream positions correctly if the user wants to continue where it stopped the last time.
I have some questions:
- Is there an interest in this option, and should I try to prepare a pull request?
- Is the best way to add this? I know very little about the internals of this library,
this was the first location that I found and it is just a couple of lines of code, but
it could well be that there are better ways to add options like this, or that I broke
some other code in the process.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, SftpClient.UploadFile und die interne UploadFile-Implementierung nachzuverfolgen, und vergleiche sie anschließend mit dem im Issue beschriebenen SftpStream-Ansatz. Ermittle, wie unterbrochene Übertragungen fortgesetzt werden sollen, wobei das bestehende Upload-Verhalten und der Durchsatz erhalten bleiben. Als abgeschlossen gilt die Aufgabe, wenn die Option eindeutig definiert ist und fortsetzbare Uploads zuverlässig funktionieren.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp
- Bereich
- networking
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100