Hacker News new | past | comments | ask | show | jobs | submit login
Porting rr to x86-64 (blog.mozilla.org)
119 points by msiemens on Nov 1, 2014 | hide | past | favorite | 9 comments

Wow, rr's a pretty slick tool. Definitely filed away for future use. Anyone with use experience care to chime in about it?

rr also reminds me of when, ages ago, I first ran into the ocaml debugger's ability to step forward and step backward. To borrow the modern cliché: mind blown.

I haven't used rr, but I have used GDB's built in record and replay ability.

GDB's was quite useful, but painfully slow; I had to do a good amount of bisecting down to a small enough input to reproduce the issue without having to wait ages to execute before it was usable. Once I did that, though, it let me find the issue a lot sooner than I would have been able to otherwise.

rr promises to be substantially faster the GDB's record and replay; if so, I imagine it will be quite useful, though it is only once or twice a year that I actually have to debug a problem that these kinds of tools are relevant for.

undodb gdb (a commercial product) works a lot faster than gdb (which is so slow it's unusable). We used it with success to debug programs as big as pypy

rr uses/enhances gdb, so I guess you mean faster than gdb alone?

(It wasn't clear to me until I followed a few links - I hadn't heard of rr.)

Yes, I meant faster than gdb's native record and replay feature.

The nice thing about rr is that you can still use it with gdb, so you have the full power of gdb along with close to native speed record and reply. Once the x86-64 support is ready, it'll probably be a common tool for me.

I haven't used it, but Robert O'Callahan -- one of the project leads -- has been working on tools like this for a number of years. In http://robert.ocallahan.org/2014/03/introducing-rr.html he said:

> it's the first "research" tool I've ever built that I like to use myself.

This seems like an incredibly useful tool, I can't believe I haven't heard about it before.

Nevertheless, does anyone know if there's something like this for programs compiled to the JVM? I've never used gdb to debug JVM code, but I expect that it will not work well.

As of a few years ago someone was working on such a system for the JVM and had gotten quite some distance. Here it is: http://www.lambdacs.com/debugger/

A Google search https://www.google.com/search?q=java+backwards+debugger found some more hits.

Looks very promising. Did a quick set up but unfortunately some counters couldn't be initialized on my VM.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact