WIP: Add Tasks and Jobs Index Column for Improved Sorting and Progress Tracking #104301
No reviewers
Labels
No Label
Good First Issue
Priority
High
Priority
Low
Priority
Normal
Status
Archived
Status
Confirmed
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Job Type
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: studio/flamenco#104301
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "MrJW/flamenco:seq_job_sorting"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This pull request introduces a new index column to both the "Jobs" and "Tasks" tables to enhance sorting and progress tracking. Previously large amount of jobs and / or tasks would jumble up which was hard to visually see what is going on.
Behavior before:
Behavior after:
Experimented with aligning content to center, however It does not look good:
It can be changed by adding
hozAlign: 'center'
param to column definition. UnfortunatelyheaderHozAlign
does nothing in this case.I like that order starts from 0, however changing it to 1 is also a feasible solution. Would like to hear feedback.
Thanks, this is an interesting approach.
@Andy_Goralczyk @SimonThommes do you have feedback / ideas / opinions?
I have run into the issue that tasks are jumping around in order a couple of times, so introducing something like this sounds like a solid idea to me.
I'm a little bit confused what the index means exactly though. Is it just a sequential index that is not manually editable? Then I feel like a
Created
column would achieve the same result while holding some additional useful information.👍
All tasks are created pretty much at once, so unless we can get sub-millisecond granularity in the timestamps I wouldn't mind some explicit index.
The question is what to do with job indices, though. At some point they're going to become prohibitively large. For jobs it's probably, as Simon also said, good enough to be able to sort by creation timestamp.
The task indices should probably be generated by Flamenco Manager, and not by the web interface. There is no guarantee in which order the tasks are reported by the API. It's probably better to create task indices when the job gets compiled.
About the PR itself: please do not include unrelated formatting changes. If your editor auto-formats differently from my editor, we'd have a constant battle between formatters.
I didn't have better name for that as there is no direct translation from my language. But the idea was to sort jobs by their frame range chronology. So the first jobs would be for frames at the begging of the animation and similarly the end frame jobs - their actual order of operation. I checked the API output, in my cases the order it gave me was the one I was looking for. I tried that with current release and my version with multiple jobs.
I agree, I'm not familiar with go backend (yet).
I see. For the tasks within a job I think that works and indeed it's probably best to do explicit indexing when the tasks are being created, but for the job level I don't think that works, since the frame range doesn't necessarily have the same meaning. So I'd propose to rely on the creation date there instead.
Ok, I'll see If I can do that on frontend and report back.
Which language is that, and which word would you use in that language?
That would be tasks, right? Not jobs?
The order of operation is not linear. When there are multiple Workers, they can execute tasks in any order. The only thing that's fixed is that a task
X
that depends on tasksY1
,Y2
, etc. will be executed after those dependencies are completed.If the API doesn't guarantee any ordering, I wouldn't rely on what it happens to do right now.
You can't do the task part on the frontend, that has to be done on the backend. The job part should be doable on the frontend though.
Add Tasks and Jobs Index Column for Improved Sorting and Progress Trackingto WIP: Add Tasks and Jobs Index Column for Improved Sorting and Progress Tracking@MrJW are you still working on this?
Checkout
From your project repository, check out a new branch and test the changes.