Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The MediaHaven REST API already allows for uploading files but this manner is not robust for uploading large files or when the network connection is unstable. Resumble Resumable uploads will fix this problem case, by offering a robust resumable uploadsmultipart chunked upload.

Design

Drawio sketch
mVer2
zoom1
simple0
inComment0
custContentId4555538458
pageId4555931652
lbox1
diagramDisplayNameresumable uploads
contentVer2
revision2
baseUrlhttps://mediahaven.atlassian.net/wiki
diagramNameresumable uploads
pCenter0
width914.5000424978057
links
tbstyle
height981.5

Business Logic

...

Metadata

  • The upload API accepts the record ID as an input parameter. To obtain the corresponding session ID of the S3 multipart upload

    • Store the session ID as a new metadata field RecordInformation.ResumableUpload.SessionId with the type HiddenField

    • The workflow to be started when the resumable upload is completed will be stored in RecordInformation.ResumableUpload.Workflow

    • Stores the result session ID in a memory cache, to prevent excessively contacting the REST API

Record status

Error handling

  • When the multipart upload to S3 encounters an error (i.e. incorrect checksum of a chunk), the record will be Rejected

Storage

The S3 storage is treated as one of /wiki/spaces/CS/pages/20643843 in the system to re-use many existing features

...