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

RESOLVED FIXED in Firefox 57

Status

RESOLVED FIXED
a year ago
a year 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

a year 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

a year ago
Assignee: nobody → rwood
Status: NEW → ASSIGNED
(Assignee)

Comment 7

a year 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

a year ago
Duplicate of this bug: 1354964
(Assignee)

Comment 19

a year 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

a year 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

a year 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

a year 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

a year 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

a year 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

a year 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

a year 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

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

Comment 33

a year 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

a year 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

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

Comment 37

a year ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/b4ea43ebf346
Status: ASSIGNED → RESOLVED
Last Resolved: a year ago
status-firefox57: --- → fixed
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.