> On Sep 12, 2017, at 11:19 AM, Zachary Turner <ztur...@google.com> wrote:
> 
> 
> 
> On Tue, Sep 12, 2017 at 11:07 AM Greg Clayton <clayb...@gmail.com> wrote:
> 
>> On Sep 12, 2017, at 10:10 AM, Zachary Turner <ztur...@google.com> wrote:
>> 
>> 
>> 
>> On Tue, Sep 12, 2017 at 10:03 AM Greg Clayton <clayb...@gmail.com> wrote:
>>> On Sep 12, 2017, at 9:53 AM, Zachary Turner <ztur...@google.com> wrote:
>>> 
>>> If you had just logged it, the bug would still not be fixed because nobody 
>>> would know about it.  I also can't believe we have to keep saying this :-/
>> 
>> By log, I mean Host::SystemLog(...) which would come out in the command 
>> line. Not "log enable ...". So users would see the issue and report the bug. 
>> Crashing doesn't mean people always report the bug.
>> I mentioned earlier in the thread that I assumed Xcode had an automatic 
>> crash that would handle the crash and automatically upload it to Apple.  Is 
>> this really not the case?  If core dumps are too big, why not just a stack 
>> trace?  Surely the Xcode team must have some kind of internal metrics system 
>> to track stability.
> 
> They do just upload text crash logs. It doesn't tell us what expression 
> triggered the issue though. It shows a crash in an expression, but doesn't 
> show the expression text as this violates privacy. 
> 
> So, you do get a bug report when a crash occurs then.  In contrast to the 
> case where you simply log something, and don't get a crash report.
> 
> In some cases, you can look at the code and figure out why it crashed.  In 
> other cases the bug occurs extremely infrequently (you can build heuristic 
> matching of call-stacks into your infrastructure that processes the crash 
> logs).  If it's a high incidence crasher then you do some investigation.  And 
> the good news is, once you fix it, you've *actually* fixed it.  Now instead 
> of hundreds of thousands of people using something that doesn't work quite 
> right for presumably the rest of the software's life (since nobody knows 
> about the bug), they have something that actually works.
> 
> There's probably some initial pain associated with this approach since the 
> test coverage is so low right now (I came up with about ~25% code coverage in 
> a test I ran a while back).  When you get this higher, your tests start 
> catching all of the high incidence stuff, and then you're left with only 
> occasional crashes.
> 
> And since you have the out of process stuff, it doesn't even bring down Xcode 
> anymore.  Just a debugging session.  That's an amazing price to pay for 
> having instant visibility into a huge class of bugs that LLDB is currently 
> willfully ignoring.


I guess I'm speaking at someone who is supporting a debugger used by tens of 
thousands of people.  The debugger crashing is a vastly bigger problem to us 
than bugs that didn't announce themselves by taking down the debugger.  
lldb_asserts that activate when we're running debug builds are fine, that's 
exactly when I want to see the debugger crash on my desktop or when it's 
running the testsuite.  Asserting when it's on the customer's desktop is a 
no-go.
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
              • ... Zachary Turner via lldb-commits
              • ... Zachary Turner via lldb-commits
              • ... Zachary Turner via lldb-commits
              • ... Jim Ingham via lldb-commits
              • ... Zachary Turner via lldb-commits
              • ... Jim Ingham via lldb-commits
              • ... Jim Ingham via lldb-commits
              • ... Zachary Turner via lldb-commits
              • ... Jim Ingham via lldb-commits
              • ... Greg Clayton via lldb-commits
              • ... Jason Molenda via lldb-commits
              • ... Zachary Turner via lldb-commits
              • ... Greg Clayton via lldb-commits
              • ... Zachary Turner via lldb-commits
              • ... Jason Molenda via lldb-commits
              • ... Jason Molenda via lldb-commits
              • ... Jim Ingham via lldb-commits
              • ... Jim Ingham via lldb-commits
  • [Lldb-commits] [PATCH] D3... Jim Ingham via Phabricator via lldb-commits
  • [Lldb-commits] [PATCH] D3... Jim Ingham via Phabricator via lldb-commits
  • [Lldb-commits] [PATCH] D3... Leonard Mosescu via Phabricator via lldb-commits

Reply via email to