Add non-blocking import/upload, plus per-user queue management #2958

Open
opened 2016-08-09 15:56:13 +00:00 by rlx · 6 comments
Owner

Queue should list items, not files.

Status can be uploading, queued or encoding.

Tasks can be cancelled. (Most minimal implementation: continue and discard results)

Tasks should have a start time. (Potentially + end time, i.e. include tasks finished in the last 24 (?) hours)

We need a warning when closing a tab with active uploads.

Queue should list items, not files. Status can be uploading, queued or encoding. Tasks can be cancelled. (Most minimal implementation: continue and discard results) Tasks should have a start time. (Potentially + end time, i.e. include tasks finished in the last 24 (?) hours) We need a warning when closing a tab with active uploads.
rlx added the
general
label 2016-08-09 15:56:13 +00:00
rlx added this to the 14.04 milestone 2016-08-09 15:56:13 +00:00
0x2620 was assigned by rlx 2016-08-09 15:56:13 +00:00
rlx added the
major
enhancement
labels 2016-08-09 15:56:13 +00:00
Author
Owner

Also see #1596 and #2615

Also see #1596 and #2615
Author
Owner

Would admins see items of all users in the queue?

Would admins see items of all users in the queue?
Author
Owner

Would this be the API?

getTasks({user: ''}) -> [{
    started: 0,
    ended: 0,
    status: 'pending|uploading|importing|queued|processing|finished|cancelled|failed',
    user: '',
    title: '',
    item: 'itemID',
    id: 'taskID'
}]
// returns all tasks that are not finished, or finished in the last 24 hours
// if user is missing and canSeeAllTasks==true, returns tasks for all users
// item title included in response to save one extra request per item

cancelTask({id: 'taskID' or ['taskID']}) -> {}
// cancels a task that is not finished, failed or cancelled
Would this be the API? ``` getTasks({user: ''}) -> [{ started: 0, ended: 0, status: 'pending|uploading|importing|queued|processing|finished|cancelled|failed', user: '', title: '', item: 'itemID', id: 'taskID' }] // returns all tasks that are not finished, or finished in the last 24 hours // if user is missing and canSeeAllTasks==true, returns tasks for all users // item title included in response to save one extra request per item cancelTask({id: 'taskID' or ['taskID']}) -> {} // cancels a task that is not finished, failed or cancelled ```
Owner

what about active uploads? they might need more info that is available client side...

what about active uploads? they might need more info that is available client side...
Owner

there is one more state: pending - files that should be uploaded from a volume

  • pending - waiting for pandora_client to upload files
  • uploading - ongoing upload (client or on site)
  • queued - waiting on server for processing
  • processing - extract streams, create timeline, etc
  • finished - item was made available in the last 24 hours
  • cancelled - upload was cancelled, not sure anything else can be
  • failed - processing file failed
there is one more state: pending - files that should be uploaded from a volume - pending - waiting for pandora_client to upload files - uploading - ongoing upload (client or on site) - queued - waiting on server for processing - processing - extract streams, create timeline, etc - finished - item was made available in the last 24 hours - cancelled - upload was cancelled, not sure anything else can be - failed - processing file failed
Author
Owner

If any file is uploading, the status is uploading.

If any file is processing, and no other file is pending or uploading, the status is processing.

If any file is uploading, the status is uploading. If any file is processing, and no other file is pending or uploading, the status is processing.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: 0x2620/pandora#2958
No description provided.