Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(211)

Issue 302003009: Make rebaselining not use gigabytes of memory. (Closed)

Created:
6 years, 6 months ago by ojan
Modified:
6 years, 6 months ago
Reviewers:
Dirk Pranke, eseidel
CC:
blink-reviews, eae
Visibility:
Public.

Description

Make rebaselining not use gigabytes of memory. The TestExpectations objects we were creating in a loop would consume memory and never return it. I'm not sure why the memory wasn't getting freed, but reparsing TestExpectations over and over again is really slow and by far the longest pole in rebaseline performance. So, fix both issues by not doing this. Instead, grab all the test_configurations that we want to remove up front and then remove them all in one go from TestExpectations. This makes the work and memory cost be O(number of ports) instead of O(number of tests * number of ports). Also, fix a bug where we would not remove lines for passing tests that were being rebaselined. I had previously fixed this incorrectly in auto-rebaseline. Instead, fix it correctly in AbstractParallelRebaselineCommand so that the rebaseline-expectations, rebaseline-json and rebaseline commands also get the fix. BUG=379484 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=175250

Patch Set 1 #

Patch Set 2 : cleanup style #

Total comments: 12

Patch Set 3 : address review comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+191 lines, -65 lines) Patch
M Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py View 1 2 1 chunk +12 lines, -11 lines 0 comments Download
M Tools/Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py View 9 chunks +36 lines, -16 lines 0 comments Download
M Tools/Scripts/webkitpy/tool/commands/rebaseline.py View 1 2 7 chunks +48 lines, -26 lines 0 comments Download
M Tools/Scripts/webkitpy/tool/commands/rebaseline_unittest.py View 1 10 chunks +95 lines, -12 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
ojan
6 years, 6 months ago (2014-06-01 02:34:58 UTC) #1
ojan
6 years, 6 months ago (2014-06-01 02:44:25 UTC) #2
eseidel
I don't feel like I know this code very well, but I"m happy to rslgtm ...
6 years, 6 months ago (2014-06-01 04:03:42 UTC) #3
ojan
I'm fine waiting for Dirk's review. No rush. eae can patch this locally in the ...
6 years, 6 months ago (2014-06-01 04:26:33 UTC) #4
Dirk Pranke
lgtm with a few nits and comments ... https://codereview.chromium.org/302003009/diff/20001/Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py File Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py (right): https://codereview.chromium.org/302003009/diff/20001/Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py#newcode1033 Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py:1033: for ...
6 years, 6 months ago (2014-06-01 21:25:33 UTC) #5
ojan
https://codereview.chromium.org/302003009/diff/20001/Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py File Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py (right): https://codereview.chromium.org/302003009/diff/20001/Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py#newcode1033 Tools/Scripts/webkitpy/layout_tests/models/test_expectations.py:1033: for removal in removals: On 2014/06/01 21:25:33, Dirk Pranke ...
6 years, 6 months ago (2014-06-02 01:41:15 UTC) #6
ojan
The CQ bit was checked by ojan@chromium.org
6 years, 6 months ago (2014-06-02 01:41:19 UTC) #7
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ojan@chromium.org/302003009/40001
6 years, 6 months ago (2014-06-02 01:41:28 UTC) #8
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: mac_blink_rel on tryserver.blink ...
6 years, 6 months ago (2014-06-02 02:53:32 UTC) #9
commit-bot: I haz the power
6 years, 6 months ago (2014-06-02 03:31:47 UTC) #10
Message was sent while issue was closed.
Change committed as 175250

Powered by Google App Engine
This is Rietveld 408576698