No gecko profile for Talos test with "mozharness: --geckoProfile" syntax

RESOLVED FIXED in Firefox 57

Status

enhancement
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: schien, Assigned: rwood)

Tracking

unspecified
mozilla57
Points:
---

Firefox Tracking Flags

(firefox57 fixed)

Details

(Whiteboard: [PI:August][qf:p1])

Attachments

(1 attachment)

"mozharness: --geckoProfile" syntax broke again on latest m-c. Expect to see corresponding artifact in Job Details tab.

https://treeherder.mozilla.org/#/jobs?repo=try&revision=d871c2420a3db25e8fc9d27ed68a849479202582&selectedJob=122945869
Whiteboard: [PI:August]
This blocks my analysis and experiment for bug 1369632. Maybe @rwood can help?
Flags: needinfo?(rwood)
(Assignee)

Comment 2

2 years ago
Hey :jmaher, I believe :ionut was looking at something similar in Bug 1354964, do you want him to take this one, or do you want me to have a look?
Flags: needinfo?(rwood) → needinfo?(jmaher)
feel free to take a look, Ionut is on holiday all week long.
Flags: needinfo?(jmaher)
(Assignee)

Updated

2 years ago
Assignee: nobody → rwood
Status: NEW → ASSIGNED
(Assignee)

Comment 7

2 years ago
Hmm debugging on production, it seems the 'mozharness --geckoProfile' text is not making it's way through:

15:12:18     INFO - * RW * self.buildbot_config:
15:12:18     INFO - {u'properties': {u'buildnumber': 107, u'product': u'firefox', u'basedir': u'C:\\slave\\test', u'installer_path': u'public/build/target.zip', u'builddir': u'try_win10_64_test-tp6-e10s', u'repository': u'https://hg.mozilla.org/try', u'buildername': u'Windows 10 64-bit try talos tp6-e10s', u'stage_platform': u'win64', u'who': u'rwood@mozilla.com', u'project': u'', u'platform': u'win10_64', u'master': u'http://buildbot-master111.bb.releng.scl3.mozilla.com:8201/', u'slavebuilddir': u'test', u'taskId': u'SgaZR96eTUG3PxU4gGY9mA', u'branch': u'try', u'script_repo_revision': u'production', u'repo_path': u'try', u'slavename': u't-w1064-ix-039', u'revision': u'77e10f661fbd4711789452000860195e4b9e3c5e'}, u'sourcestamp': {u'repository': u'https://hg.mozilla.org/try', u'hasPatch': False, u'project': u'', u'branch': u'try', u'changes': [], u'revision': u'77e10f661fbd4711789452000860195e4b9e3c5e'}}

And results in catching this IndexError which just sets opts to None, and therefore not setting self.gecko_profile:

http://searchfox.org/mozilla-central/rev/48ea452803907f2575d81021e8678634e8067fc2/testing/mozharness/mozharness/mozilla/testing/talos.py#209
(Assignee)

Updated

2 years ago
Duplicate of this bug: 1354964
(Assignee)

Comment 19

2 years ago
(In reply to Robert Wood [:rwood] from comment #18)
> https://treeherder.mozilla.org/#/jobs?repo=try&revision=bffe901a979ddd9d54f8be76e3c59e303564cac3

Update: Patch makes gecko profiling work with it added in the try syntax, and the profiling data uploaded as an artifact; however now the "Performance" tab doesn't appear in treeherder when the job is selected.
(Assignee)

Comment 20

2 years ago
(In reply to Robert Wood [:rwood] from comment #19)
> (In reply to Robert Wood [:rwood] from comment #18)
> > https://treeherder.mozilla.org/#/jobs?repo=try&revision=bffe901a979ddd9d54f8be76e3c59e303564cac3
> 
> Update: Patch makes gecko profiling work with it added in the try syntax,
> and the profiling data uploaded as an artifact; however now the
> "Performance" tab doesn't appear in treeherder when the job is selected.

Hey :jmaher, so this makes sense as currently in Talos we aren't dumping out PERFHERDER_DATA when gecko profiling is turned on. However, in which case when a talos job with profiling is selected in treeherder, no "Performance" tab will appear, and therefore the profiling artifacts must be grabbed via the "Job Details" treeherder tab instead. I'm assuming that is acceptable? Or should I file another bug to change that?
Flags: needinfo?(jmaher)
(Assignee)

Comment 21

2 years ago
From the Description, "Expect to see corresponding artifact in Job Details tab." so I think that must be expected behaviour.
The performance numbers aren't particularly useful when the profiler is enabled, so I think that's fine. As long as we have performance results when the profiler is not enabled and profile results when it is :)
(Assignee)

Comment 23

2 years ago
Thanks :kmag, makes sense.

And this behaviour has been around for awhile, even when it was "spsProfiling":

http://searchfox.org/mozilla-central/rev/cd82cacec2cf734768827ff85ba2dba90a534c5e/testing/talos/talos/output.py#188
Flags: needinfo?(jmaher)
Comment hidden (mozreview-request)

Comment 25

2 years ago
mozreview-review
Comment on attachment 8902352 [details]
Bug 1390084 - Fix enabling gecko profiling on try;

https://reviewboard.mozilla.org/r/173916/#review179266

thanks for figuring this out.  I agree that we don't want perf data in perfherder while using --geckoProfile, so glad that is working!

::: testing/mozharness/mozharness/mozilla/testing/talos.py:230
(Diff revision 1)
> -              except ValueError:
> +                except ValueError:
> -                  pass
> +                    pass
> +            else:
> +                # no opts, check for '--geckoProfile' in try message text directly
> +                if self.try_message_has_flag('geckoProfile'):
> +                    self.gecko_profile = True

in this scenarion what is self.gecko_profile_interval?  I assume it defaults to something useful?
Attachment #8902352 - Flags: review?(jmaher) → review+
(Assignee)

Comment 26

2 years ago
(In reply to Joel Maher ( :jmaher) (UTC-5) from comment #25)
> Comment on attachment 8902352 [details]
> Bug 1390084 - Fix to turn on talos gecko profiling via try syntax;
> 
> https://reviewboard.mozilla.org/r/173916/#review179266
> 
> thanks for figuring this out.  I agree that we don't want perf data in
> perfherder while using --geckoProfile, so glad that is working!
> 
> ::: testing/mozharness/mozharness/mozilla/testing/talos.py:230
> (Diff revision 1)
> > -              except ValueError:
> > +                except ValueError:
> > -                  pass
> > +                    pass
> > +            else:
> > +                # no opts, check for '--geckoProfile' in try message text directly
> > +                if self.try_message_has_flag('geckoProfile'):
> > +                    self.gecko_profile = True
> 
> in this scenarion what is self.gecko_profile_interval?  I assume it defaults
> to something useful?

Thanks, yes gecko_profile_interval defaults to 1:

http://searchfox.org/mozilla-central/rev/51b3d67a5ec1758bd2fe7d7b6e75ad6b6b5da223/testing/talos/talos/config.py#32

Comment 27

2 years ago
Pushed by rwood@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c98c89a11df2
Fix to turn on talos gecko profiling via try syntax; r=jmaher
Backed out for mass environment setup failures:

https://hg.mozilla.org/integration/autoland/rev/6c192f0ce126e1386d4708267b1a54ccd3c5906c

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=c98c89a11df28e970c975088f1cfefc847aa06eb&filter-resultStatus=testfailed&filter-resultStatus=busted&filter-resultStatus=exception&filter-resultStatus=usercancel&filter-resultStatus=runnable&filter-resultStatus=retry
Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=127067058&repo=autoland

[task 2017-08-30T14:34:20.741311Z] 14:34:20     INFO - retry: Calling rmtree with args: ('/builds/worker/workspace/build',), kwargs: {}, attempt #1
[task 2017-08-30T14:34:20.747083Z] 14:34:20     INFO - Running post-action listener: _resource_record_post_action
[task 2017-08-30T14:34:20.749013Z] 14:34:20     INFO - [mozharness: 2017-08-30 14:34:20.748730Z] Finished clobber step (success)
[task 2017-08-30T14:34:20.751838Z] 14:34:20     INFO - [mozharness: 2017-08-30 14:34:20.751552Z] Skipping read-buildbot-config step.
[task 2017-08-30T14:34:20.753480Z] 14:34:20     INFO - [mozharness: 2017-08-30 14:34:20.752207Z] Running download-and-extract step.
[task 2017-08-30T14:34:20.755107Z] 14:34:20     INFO - Running pre-action listener: _pre_download_and_extract
[task 2017-08-30T14:34:20.769009Z] 14:34:20    ERROR - Exception during pre-action for download-and-extract: Traceback (most recent call last):
[task 2017-08-30T14:34:20.775544Z] 14:34:20    ERROR -   File "/builds/worker/workspace/mozharness/mozharness/base/script.py", line 1982, in run_action
[task 2017-08-30T14:34:20.778866Z] 14:34:20    ERROR -     method(action)
[task 2017-08-30T14:34:20.782692Z] 14:34:20    ERROR -   File "/builds/worker/workspace/mozharness/scripts/desktop_unittest.py", line 533, in _pre_download_and_extract
[task 2017-08-30T14:34:20.785071Z] 14:34:20    ERROR -     if not self.try_message_has_flag('artifact'):
[task 2017-08-30T14:34:20.787197Z] 14:34:20    ERROR -   File "/builds/worker/workspace/mozharness/mozharness/mozilla/testing/try_tools.py", line 155, in try_message_has_flag
[task 2017-08-30T14:34:20.789555Z] 14:34:20    ERROR -     message = message or self._extract_try_message()
[task 2017-08-30T14:34:20.791579Z] 14:34:20    ERROR -   File "/builds/worker/workspace/mozharness/mozharness/mozilla/testing/try_tools.py", line 90, in _extract_try_message
[task 2017-08-30T14:34:20.793585Z] 14:34:20    ERROR -     elif self._is_try():
[task 2017-08-30T14:34:20.795751Z] 14:34:20    ERROR -   File "/builds/worker/workspace/mozharness/mozharness/mozilla/testing/try_tools.py", line 166, in _is_try
[task 2017-08-30T14:34:20.799745Z] 14:34:20    ERROR -     return ('try' in self.config.get('branch', repo_path) or
[task 2017-08-30T14:34:20.803643Z] 14:34:20    ERROR - TypeError: argument of type 'NoneType' is not iterable
Flags: needinfo?(rwood)
(Assignee)

Comment 29

2 years ago
Thanks Sebastian, apologies, patch worked fine on try but obviously I missed something when it comes to the other branches.
Flags: needinfo?(rwood)
Comment hidden (mozreview-request)
(Assignee)

Updated

2 years ago
Attachment #8902352 - Flags: review+ → review?(jmaher)
Comment hidden (mozreview-request)
(Assignee)

Comment 33

2 years ago
Comment on attachment 8902352 [details]
Bug 1390084 - Fix enabling gecko profiling on try;

Not my day, updated again
Attachment #8902352 - Flags: review?(jmaher)

Comment 35

2 years ago
mozreview-review
Comment on attachment 8902352 [details]
Bug 1390084 - Fix enabling gecko profiling on try;

https://reviewboard.mozilla.org/r/173916/#review179682

sort of a rubber stamp here
Attachment #8902352 - Flags: review?(jmaher) → review+

Comment 36

2 years ago
Pushed by rwood@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b4ea43ebf346
Fix enabling gecko profiling on try; r=jmaher

Comment 37

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/b4ea43ebf346
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla57
Thank you :)
Whiteboard: [PI:August] → [PI:August][qf:p1]
You need to log in before you can comment on or make changes to this bug.