DYN-7145: handle large package upload #16375
Open
+931
−61
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose
Addresses https://jira.autodesk.com/browse/DYN-7145(https://jira.autodesk.com/browse/DYN-7145): As a Dynamo Dev, Dynamo should not hang and crash when the package upload is more than 1 GB.
Frontend PR - https://git.autodesk.com/Dynamo/PackagePublishWizard/pull/52
Analysis
The issue postulates that the PM cannot handle large packages - packages above 1Gb of data, and causes Dynamo to crash. Running a small amount of large files disproves this statement, as shown below. However, processing a large number of files is handled poorly at the moment, and without a UI update, causes the user to think Dynamo has crashed, although eventually the files will be processed.
> 1 Gb not a problem in itself
Introducing UI visual cue to show the progress of processing files as well as offloading this process from the main thread dramatically enhances the user experience.
Async process of file loading with progress update - processing Dynamo build with over 18k files
Declarations
Check these if you believe they are true
*.resx
filesRelease Notes
(FILL ME IN) Brief description of the fix / enhancement. Use N/A to indicate that the changes in this pull request do not apply to Release Notes. Mandatory section
Reviewers
@jasonstratton
@zeusongit
FYIs
@QilongTang