AFE hosts view shows special tasks and jobs in the wrong orders
Reported by
jrbarnette@chromium.org,
May 18 2016
|
|||
Issue description
Please specify Cr-* of the system to which this bug/feature applies (add
the label below).
Steps To Reproduce:
(1) Go to the AFE "Host List" tab, and select a working host.
(2) On the "View Host" page, enable the "Show verifies,
repairs, cleanups and resets" checkbox.
(3) Look at the display in the jobs box.
Expected Result:
Test jobs and special tasks should be shown interleaved, in the
order in which they occurred.
Actual Result:
Ordering is sometimes right, but is frequently haphazardly wrong.
Sometimes, the special task of interest doesn't show until several
screens after the job it preceded.
How frequently does this problem reproduce? (Always, sometimes, hard to
reproduce?)
The problem won't happen every time, but it happens often enough
to make the "View Host" tab unhelpful for meaningful debug.
What is the impact to the user, and is there a workaround? If so, what is
it?
The only way to get a time-ordered sequence of jobs and tasks together
is with the "dut-status" command. That tool can be quite useful, but for
some use cases, the web UI is preferable. Unfortunately, the web UI
is all too often worse than worthless.
Please provide any additional information below. Attach a screen shot or
log if possible.
The root of the problem is in the implementation of this RPC function:
def interleave_entries(queue_entries, special_tasks):
"""
Both lists should be ordered by descending ID.
"""
_compute_next_job_for_tasks(queue_entries, special_tasks)
# start with all special tasks that've run since the last job
interleaved_entries = []
for task in special_tasks:
if task['next_job_id'] is not None:
break
interleaved_entries.append(task)
# now interleave queue entries with the remaining special tasks
special_task_index = len(interleaved_entries)
for queue_entry in queue_entries:
interleaved_entries.append(queue_entry)
# add all tasks that ran between this job and the previous one
for task in special_tasks[special_task_index:]:
if task['next_job_id'] < queue_entry['job']['id']:
break
interleaved_entries.append(task)
special_task_index += 1
return interleaved_entries
The function makes no attempt to order by time.
,
May 24 2017
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Mar 14 2018
This bug is very old, is Untriaged, and has no owner. If it is still relevant, reopen as Untriaged or open a new bug |
|||
►
Sign in to add a comment |
|||
Comment 1 by autumn@chromium.org
, May 23 2016Labels: Hotlist-Fixit