I'd be happy to spin up a gem version of this and see what the difference is. I'll report back once I have some code and findings there.jasonrclark (Jason Clark)
allocation_tracer is awesome for debugging, and I've happily used it a number of times. Thank you for building it Koichi! While most people certainly wouldn't use this, I do have a case for it in production. Specifically, I work at Ne...jasonrclark (Jason Clark)
So apparently I didn't have notifications turned on and lost track of this. Sorry! I've rebased this to current trunk and modified it per your suggestions Eric. How's this look? Anything else I can do to help this along?jasonrclark (Jason Clark)
This patch introduces a thread-local allocation count. Today you can get a global allocation count from `GC.stat`, but in multi-threaded contexts that can give a muddied picture of the allocation behavior of a particular piece of code...jasonrclark (Jason Clark)
Any thoughts on this patch Koichi? It just adds a `GC.stat` counter, and doesn't move anything outside the current `GC::Profiler` gating.jasonrclark (Jason Clark)
That makes sense, Koichi. I wondered if timing the small steps by default would be too heavy. By only measuring mark time, do you mean https://github.com/ruby/ruby/blob/trunk/gc.c#L5184-L5212? For my own curiosity, I'll probably see h...jasonrclark (Jason Clark)
This patch includes a `:total_time` value in `GC.stat` as a `Fixnum` of microseconds equivalent to `GC::Profiler.total_time`. A non-zero value is only provided if GC profiling is enabled. This avoids problems with `GC::Profiler`'s API...jasonrclark (Jason Clark)
A user of New Relic has reported seeing a seg fault using Ruby 2.1.1 with our agent. Given that newrelic_rpm is pure Ruby code, this seems likely to be a Ruby bug. We haven't been able to reliably reproduce it yet, but the user report...jasonrclark (Jason Clark)
I'd love to see this added. Gems using threads (like newrelic_rpm) have a lot of potential for deadlocks when forking happens. This would gives a nice mechanism for dealing with those issues more generally, rather than having to hook thi...jasonrclark (Jason Clark)