Closed Bug 1370242 Opened 2 years ago Closed 2 years ago

Fix AWSY test_memory_usage.py failure on linux64-ccov.

Categories

(Testing :: Code Coverage, defect)

defect
Not set

Tracking

(firefox55 fixed)

RESOLVED FIXED
mozilla55
Tracking Status
firefox55 --- fixed

People

(Reporter: sparky, Assigned: sparky)

References

(Depends on 1 open bug)

Details

Attachments

(2 files)

This bug is for the work needed to be done to ensure that all the tests in the AWSY test suite are passing (or can be skipped). Currently, there is only one failure with the file test_memory_usage.py during the test_open_tabs test.

I've attached a log to the error. [1], and [2] have some debugging information available within their logs.

[1]: https://treeherder.mozilla.org/#/jobs?repo=try&revision=d7ba3c5dd60bdbac0d51d749cab35a0348bcacbb

[2]: https://treeherder.mozilla.org/#/jobs?repo=try&revision=343218ff6c942306ee5d1e07eb4945e515b64daa&selectedJob=104551423
Here's a link to a log which contains more debugging information [0]. I've found that there seems to be items found at [1] but then at [2], nothing is recorded because totals_heap_allocated is empty.

[0]: https://treeherder.mozilla.org/#/jobs?repo=try&revision=343218ff6c942306ee5d1e07eb4945e515b64daa
[1]: https://dxr.mozilla.org/mozilla-central/source/testing/awsy/awsy/parse_about_memory.py#22
[2]: https://dxr.mozilla.org/mozilla-central/source/testing/awsy/awsy/parse_about_memory.py#38

:bc, would you know why totals_heap_allocated is empty now? It contains information when we don't have GCOV code coverage enabled and that's the only difference that I know off.

If it's expected, code coverage doesn't need to have the tests upload perf data so we can disable that part of the test whenever code coverage is on.
Flags: needinfo?(bob)
erahm: Any thoughts on why these measurements would be empty when GCOV is enabled?
Flags: needinfo?(bob) → needinfo?(erahm)
(In reply to Bob Clary [:bc:] from comment #2)
> erahm: Any thoughts on why these measurements would be empty when GCOV is
> enabled?

gcov or lcov or ccov or whatever also broke the arena allocator tests (bug 1353882, comment 6). I think they're hooking/patching some memory functions and breaking them. If we can isolate this we should probably file an upstream bug.
Flags: needinfo?(erahm)
We could add command line options to testing/mozharness/scripts/awsy_script.py and testing/awsy/mach_commands.py to pass info to testing/awsy/awsy/test_memory_usage.py via the testvars json file which TestMemoryUsage.tearDown could use to skip trying to process the data.
This patch disables gathering performance data, and you can see an example of it's use here: https://treeherder.mozilla.org/#/jobs?repo=try&revision=9934fe84dfbfb0d5aefc62cfed6b0a0e7dc4d992
Comment on attachment 8875293 [details]
Bug 1370242 - Prevent performance data from being uploaded when collecting code coverage.

https://reviewboard.mozilla.org/r/146698/#review150836

nice and simple
Attachment #8875293 - Flags: review?(jmaher) → review+
I still think someone working on the ccov builds should figure out why this is failing, it's the second instance of ccov breaking memory related tests (that I know of).
Pushed by jmaher@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/4aaf7ad4fef8
Prevent performance data from being uploaded when collecting code coverage. r=jmaher
:gmierz, can you file a follow up bug pointing to the two memory issues we have hacked around for ccov?
Flags: needinfo?(gmierz2)
Depends on: 1371009
It has been made and is one of the blockers for this bug.
Flags: needinfo?(gmierz2)
https://hg.mozilla.org/mozilla-central/rev/4aaf7ad4fef8
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
Assignee: nobody → gmierz2
You need to log in before you can comment on or make changes to this bug.