Bug 211245
Summary: | Enable NSZombieEnabled=YES on bots to catch use-after-release bugs sooner | ||
---|---|---|---|
Product: | WebKit | Reporter: | David Kilzer (:ddkilzer) <ddkilzer> |
Component: | Tools / Tests | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | aakash_jain, ap |
Priority: | P2 | ||
Version: | Other | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
See Also: | https://bugs.webkit.org/show_bug.cgi?id=211386 |
David Kilzer (:ddkilzer)
EWS bots running on Apple operating systems should run with NSZombieEnabled=YES environment variable.
Will likely catch bugs earlier that are caused by over-released Objective-C objects in WebKit or in dependent frameworks.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Alexey Proskuryakov
I don't think that EWS should be getting more different from the normal way of running tests. If tests run well with NSZombieEnabled, then we should have that in local testing and post-commit too. EWS-only failures are the worst.
I don't know if NSZombieEnabled comes for free though.
David Kilzer (:ddkilzer)
(In reply to Alexey Proskuryakov from comment #1)
> I don't think that EWS should be getting more different from the normal way
> of running tests. If tests run well with NSZombieEnabled, then we should
> have that in local testing and post-commit too. EWS-only failures are the
> worst.
EWS finding failures early is also the best. Lots of ways to implement this: Enable NSZombieEnabled=YES everywhere; add separate bots just to run in NSZombieEnabled=YES mode; make NSZombieEnabled=YES part of a "catch flakey tests before they're committed" effort; etc.
I probably made the title too specific. Tried to update the title.
> I don't know if NSZombieEnabled comes for free though.
It's not 100% free, but it may be worth the cost of catching bugs before they're committed. Might be hard to gather metrics, though.
Part of the reason I filed this was simply to track issues that might have been caught sooner had this been implemented (to provide a case for it later), like Bug 211386.