- 5
- 158
David Griffiths
เข้าร่วมเมื่อ 29 พ.ค. 2017
Going back in time to java object creation with Undo LiveRecorder
This is a preview of a new feature in the next release of Undo LiveRecorder for Java (docs.undo.io/java/index.html). It allows you to go back in time to see where an object was first created. So if you have an OutOfMemoryError for instance and you obtain the address of an object from a hprof file using Eclipse Memory Analyzer you can trace back to see where that object was first created. Despite the fact that the object may have been relocated multiple times by GC. It does this using the magic of reverse watchpoints on the object header.
มุมมอง: 8
วีดีโอ
Undo demo of debugging mixed Java and JNI C++ code
มุมมอง 372 หลายเดือนก่อน
Demonstration of using Undo technology (undo.io/) to go between Java and JNI C code in the same recording. We used Apache Spark Gluten Velox for this demo and it shows how we go from observing an exception on the Java side over to looking at the C google protocol buffer code on the JNI side which caused the exception. We look at the same recording first in IntelliJ and obtain the "bbcount" wher...
Undo Record and Replay of IntelliJ
มุมมอง 77 หลายเดือนก่อน
This is a demo of using Undo LiveRecorder for Java to record and replay IntelliJ itself. It shows the kind of slowdown you might expect to see during recording. You could use this for instance to either debug IntelliJ itself (which we demonstrate) or one of its plugins. For more details go to docs.undo.io/java/
Introduction to LiveRecorder for Java
มุมมอง 7410 หลายเดือนก่อน
This is a short video demonstrating some features of Undo's LiveRecorder for Java (docs.undo.io/java/). This is a time travel/reverse debugger that lets you record a Java process at the machine level. The demo concentrates mainly on recording the microservices version of the Spring PetClinic sample application using our API to start and save recordings. We record two of the microservices and th...
Debugging IntelliJ Plugin with Undo LiveRecorder
มุมมอง 3211 หลายเดือนก่อน
This is a short video that demonstrates the use of Undo's Time Travel debugger to locate a really obscure intermittent bug in our plugin Java code. It involves making two recordings - one with the bug and one without - and then going back in time from the error to see how the behaviour differed and hence locate the bug. As I was unfamiliar with IntelliJ internals it took a lot of going backward...
Yes, I can see that can be really useful. Traditionally you'd get the exception then rerun your code under a debugger and step through to where the exception occured; probably rinsing and repeating several times until you find the conditions that caused the error. Being able to step backwards, and being able to step into JNI code is a big advance in that process. What is the overhead of Undo, I assume you can't use it on production code? (I guess not judging by the last video) Does it play nicely with all the autogenerated code you get with things like Lombok and Spring annotations that can make debugging hard work.