Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upRemoved panic channel, replaced by integrated logging and issue reporting #12468
Conversation
highfive
commented
Jul 15, 2016
|
Heads up! This PR modifies the following files:
|
highfive
commented
Jul 15, 2016
|
This impacts issue reporting, so cc @Gozala, and removes almost all of the threading / panicking code from util, so cc @Manishearth. |
| if opts::get().hard_fail { | ||
| // It's quite difficult to make Servo exit cleanly if some threads have failed. | ||
| // Hard fail exists for test runners so we crash and that's good enough. | ||
| error!("Pipeline failed in hard-fail mode. Crashing!"); | ||
| warn!("Pipeline failed in hard-fail mode. Crashing!"); |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
asajeffrey
Jul 17, 2016
•
Author
Member
Yes, but the very next thing is an exit, so it shouldn't matter too much. I made it a warn! rather than an error! so we don't trigger the issue reporting in the (rather unlikely) --hard-fail --browserhtml case.
|
|
559a13c
to
b3019c6
|
Rebased. |
|
First, sorry for the delay reviewing. I love negative diffs, and the code looks good to me. I left two (uber-minor) nits, and one question. r=me with or without the nits addressed, but preferably with the question answered please :) -S-awaiting-review +S-awaiting-answer Reviewed 21 of 21 files at r1. components/constellation/constellation.rs, line 333 [r1] (raw file):
Should we somehow detect when a thread is expected to have a pipeline id installed (via thread_state), and warn (even with a simple message to stderr, to prevent retriggering the mechanism) that is not found? Or something like components/msg/constellation_msg.rs, line 313 [r1] (raw file):
nit: The braces here might be excessive. components/msg/constellation_msg.rs, line 316 [r1] (raw file):
ditto. Comments from Reviewable |
|
|
b3019c6
to
fd27ca6
|
Rebased. |
|
It would be nice to add a check that the thread-local pipeline id is set whenever the thread state says it should be, but I'd be concerned about putting it in the logging code. For example, logging during panic is quite common, and if the logging panics, then we'll get a double panic and the whole of servo will close. So I'd rather leave this un-asserted, even in debug mode. |
|
@bors-servo r=emilio |
|
|
… r=emilio Removed panic channel, replaced by integrated logging and issue reporting <!-- Please describe your changes on the following line: --> Remove the previous ad hoc panic channel, replace it by an integrated logging and panicking mechanism, including crash reporting. All thread panics are now reported, not just content threads. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #11838 - [X] These changes do not require tests because we don't test error reporting <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12468) <!-- Reviewable:end -->
|
|
|
I think #12516 is a blocker for this landing, unless we disable some of the tests. In I think the thing to do may be to disable the consistently failing tests: /eventsource/dedicated-worker/eventsource-constructor-non-same-origin.htm and /eventsource/eventsource-constructor-non-same-origin.htm. |
…ting.
64b085f
to
c889900
|
Replaced the @bors-servo r=emilio (I'm expecting this to fail because of #12516 but you never know). |
|
|
… r=emilio Removed panic channel, replaced by integrated logging and issue reporting <!-- Please describe your changes on the following line: --> Remove the previous ad hoc panic channel, replace it by an integrated logging and panicking mechanism, including crash reporting. All thread panics are now reported, not just content threads. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #11838 - [X] These changes do not require tests because we don't test error reporting <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12468) <!-- Reviewable:end -->
|
|
|
#12518 seems to fix the problems with #12516, hooray! @bors-servo retry |
… r=emilio Removed panic channel, replaced by integrated logging and issue reporting <!-- Please describe your changes on the following line: --> Remove the previous ad hoc panic channel, replace it by an integrated logging and panicking mechanism, including crash reporting. All thread panics are now reported, not just content threads. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #11838 - [X] These changes do not require tests because we don't test error reporting <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12468) <!-- Reviewable:end -->
|
|
asajeffrey commentedJul 15, 2016
•
edited by larsbergstrom
Remove the previous ad hoc panic channel, replace it by an integrated logging and panicking mechanism, including crash reporting. All thread panics are now reported, not just content threads.
./mach build -ddoes not report any errors./mach test-tidydoes not report any errorsThis change is