RESOLVED FIXED 205875
run-webkit-tests: clobber-old-results should remove the entire results folder
https://bugs.webkit.org/show_bug.cgi?id=205875
Summary run-webkit-tests: clobber-old-results should remove the entire results folder
Jonathan Bedard
Reported 2020-01-07 11:38:19 PST
In automation, we want to clear out the entirety of the results folder when --clobber-old-results is passed. In particular, we want to remove timeout and crash logs.
Attachments
Patch (3.63 KB, patch)
2020-01-07 11:42 PST, Jonathan Bedard
no flags
Patch (3.64 KB, patch)
2020-01-07 14:19 PST, Jonathan Bedard
no flags
Patch for landing (3.64 KB, patch)
2020-01-07 14:41 PST, Jonathan Bedard
no flags
Patch (3.26 KB, patch)
2020-01-08 13:36 PST, Jonathan Bedard
no flags
Patch (5.43 KB, patch)
2020-01-09 08:17 PST, Jonathan Bedard
no flags
Patch (5.40 KB, patch)
2020-01-27 16:56 PST, Jonathan Bedard
no flags
Patch (5.41 KB, patch)
2020-01-27 17:13 PST, Jonathan Bedard
no flags
Jonathan Bedard
Comment 1 2020-01-07 11:38:56 PST
Jonathan Bedard
Comment 2 2020-01-07 11:42:20 PST
Alexey Proskuryakov
Comment 3 2020-01-07 13:53:34 PST
Comment on attachment 387007 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=387007&action=review > Tools/ChangeLog:3 > + run-webki-tests: clobber-old-results should remove the entire results folder run-webkit-tests > Tools/Scripts/webkitpy/layout_tests/controllers/manager.py:-462 > - # files in the results directory are explicitly used for cross-run > - # tracking. What is this "cross-run tracking"? Is it about saving results for a retry? Without having thought about the code much, I wonder if the patch makes it so that orginal results will be deleted when using --retry (which is the default).
Alexey Proskuryakov
Comment 4 2020-01-07 13:53:55 PST
Or when running iPad tests after the main suite.
Jonathan Bedard
Comment 5 2020-01-07 14:08:37 PST
(In reply to Alexey Proskuryakov from comment #3) > Comment on attachment 387007 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=387007&action=review > > > Tools/ChangeLog:3 > > + run-webki-tests: clobber-old-results should remove the entire results folder > > run-webkit-tests > > > Tools/Scripts/webkitpy/layout_tests/controllers/manager.py:-462 > > - # files in the results directory are explicitly used for cross-run > > - # tracking. > > What is this "cross-run tracking"? Is it about saving results for a retry? > > Without having thought about the code much, I wonder if the patch makes it > so that orginal results will be deleted when using --retry (which is the > default). I'm not really sure what this was originally referring to, but I can't see it being anything except undesirable when passing --clobber-old-results. _clobber_old_results is run before all the rounds, so this doesn't effect results on iOS where we have separate iPhone/iPad rounds. Another approach we could take its only deleting crashlogs, python stack traces and spindumps instead of the entire directory. The problem with that approach is that I still can't think of a reason why keeping any result data between tests would ever be useful in infrastructure, especially since sometimes we build out of order.
Jonathan Bedard
Comment 6 2020-01-07 14:19:05 PST
Alexey Proskuryakov
Comment 7 2020-01-07 14:32:51 PST
Comment on attachment 387032 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=387032&action=review Yes, I also don't remember any files or run-webkit-tests modes where we wanted to keep any files in the results directory between invocations. > Tools/Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:628 > - # Now we test that --clobber-old-results does remove the old entries and the old retries, > - # and that we don't retry again. > + # Now we test that --clobber-old-results does remove the old entries and the old retries Please keep the period at the end of the sentence.
Jonathan Bedard
Comment 8 2020-01-07 14:41:06 PST
Created attachment 387035 [details] Patch for landing
WebKit Commit Bot
Comment 9 2020-01-07 15:54:42 PST
Comment on attachment 387035 [details] Patch for landing Clearing flags on attachment: 387035 Committed r254165: <https://trac.webkit.org/changeset/254165>
WebKit Commit Bot
Comment 10 2020-01-07 15:54:43 PST
All reviewed patches have been landed. Closing bug.
Truitt Savell
Comment 11 2020-01-07 16:41:40 PST
Reverted r254165 for reason: Caused 500+ missing results on Mac Committed r254176: <https://trac.webkit.org/changeset/254176>
Jonathan Bedard
Comment 12 2020-01-08 07:11:37 PST
I guess we have our answer. We are using the previous test results to detect when certain tests (compositing, in particular) change their output. This seems like a very unstable way of doing things.
Jonathan Bedard
Comment 13 2020-01-08 13:33:32 PST
(In reply to Jonathan Bedard from comment #12) > I guess we have our answer. We are using the previous test results to detect > when certain tests (compositing, in particular) change their output. This > seems like a very unstable way of doing things. Probably would have helped to actually delete the right thing. The previous patch was deleting WebKit/LayoutTests instead of WebKit/build/*/layout-test-results.
Jonathan Bedard
Comment 14 2020-01-08 13:36:23 PST
WebKit Commit Bot
Comment 15 2020-01-08 16:31:06 PST
Comment on attachment 387134 [details] Patch Clearing flags on attachment: 387134 Committed r254235: <https://trac.webkit.org/changeset/254235>
WebKit Commit Bot
Comment 16 2020-01-08 16:31:08 PST
All reviewed patches have been landed. Closing bug.
Aakash Jain
Comment 17 2020-01-08 18:19:50 PST
This seems to have broken the layout-tests completely. https://build.webkit.org/builders/Apple%20High%20Sierra%20Release%20WK1%20%28Tests%29/builds/18157 https://build.webkit.org/builders/Apple%20Mojave%20Release%20WK2%20%28Tests%29/builds/9327 17:22:50.857 39532 Stopping HTTP server ... 17:22:50.859 39532 Attempting to shut down httpd server at pid 39550 ServerError raised: Failed to stop httpd: httpd: Could not open configuration file /Volumes/Data/slave/mojave-release-tests-wk2/build/layout-test-results/httpd.conf: No such file or directory (exit code=None) Traceback (most recent call last): File "/Volumes/Data/slave/mojave-release-tests-wk2/build/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py", line 91, in main run_details = run(port, options, args, stderr) File "/Volumes/Data/slave/mojave-release-tests-wk2/build/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py", line 485, in run run_details = manager.run(args) File "/Volumes/Data/slave/mojave-release-tests-wk2/build/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py", line 314, in run self._runner.stop_servers() File "/Volumes/Data/slave/mojave-release-tests-wk2/build/Tools/Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py", line 230, in stop_servers self._port.stop_http_server() File "/Volumes/Data/slave/mojave-release-tests-wk2/build/Tools/Scripts/webkitpy/port/base.py", line 1063, in stop_http_server self._http_server.stop() File "/Volumes/Data/slave/mojave-release-tests-wk2/build/Tools/Scripts/webkitpy/layout_tests/servers/http_server_base.py", line 134, in stop self._stop_running_server() File "/Volumes/Data/slave/mojave-release-tests-wk2/build/Tools/Scripts/webkitpy/layout_tests/servers/apache_http_server.py", line 209, in _stop_running_server raise self._server_error('Failed to stop %s' % self._name, err, retval) ServerError: Failed to stop httpd: httpd: Could not open configuration file /Volumes/Data/slave/mojave-release-tests-wk2/build/layout-test-results/httpd.conf: No such file or directory (exit code=None)
WebKit Commit Bot
Comment 18 2020-01-08 18:21:44 PST
Re-opened since this is blocked by bug 205981
Alexey Proskuryakov
Comment 19 2020-01-08 19:55:04 PST
Next time, please wait for EWS.
Jonathan Bedard
Comment 20 2020-01-09 07:53:56 PST
Sorry about that....we apparently clobber results after starting the HTTP server.
Jonathan Bedard
Comment 21 2020-01-09 08:17:17 PST
Alexey Proskuryakov
Comment 22 2020-01-27 16:08:51 PST
Comment on attachment 387232 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=387232&action=review > Tools/Scripts/webkitpy/layout_tests/controllers/manager.py:460 > + self._printer.write_update("Clobbering all results in {}".format(self._results_directory)) I think that you can just as well say "deleting directory" now, as it's no longer about just results.
Jonathan Bedard
Comment 23 2020-01-27 16:56:12 PST
Jonathan Bedard
Comment 24 2020-01-27 17:13:34 PST
WebKit Commit Bot
Comment 25 2020-01-28 08:46:34 PST
Comment on attachment 388945 [details] Patch Clearing flags on attachment: 388945 Committed r255240: <https://trac.webkit.org/changeset/255240>
WebKit Commit Bot
Comment 26 2020-01-28 08:46:36 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.