Enable parallel/out-of-sequence large file uploads in session
Currently it appears that a [file] UploadSession only supports receiving content chunks in the exact order the file needs to be constructed in (exact sequence). This defeats a straightforward method to improve large file upload performance by orders of magnitude.
If we can put content chunks in any sequence, we can leverage .Net parallel tasks and substantially improve customer experience.
Since the UploadSession (and the .NET library's helper-class ChunkedUploadProvider) already keep track of which byte-ranges are missing, it appears to be a reasonably simple update for the service to allow this (and simply collate all the chunks and append them when all ranges have been received).
I have sample/prototype ParallelUpload code to offer the .NET project if/when the service can support it (because I didn't read the fine-print before I wrote it, only to track down ServiceExceptions when testing).
Thanks for considering it.