Closed zenspider closed 1 month ago
I'll send in a PR in a bit... still poking
Taking a look...
It seems like this can be reproduced reliably by:
vernier run --allocation-sample-rate=1 -- ruby examples/minitest.rb
(my bet would be this is related to thread creation, which iirc has some weird quirks)
We can't replace -1 with 0 (0 is a valid 1-depth stack which we probably don't want), we might be able to reject -1 bit it would be better to avoid emitting it in the first place. Let me see what I can do.
It's not thread creation but even earlier when trying to load the initial script (which profiling is enabled for since Vernier is loaded in a -r
flag). #94 will skip over any -1 samples, in the future I hope to have a better solution.
Thanks again! This should be fixed by #94 and in v1.2.1. Please let me know if it isn't 🙇♂
Just bumped to hopefully get fixes that allow me to look at the object allocations in #89 ... ironically, it now crashes on run and it seems to be a -1 index that is causing it:
It looks like the samples starts with a
-1
and that causes a crash. This simple fix lets it finish running but I have no idea if this leads to a valid set of data or if everything is thrown off.