0

Think about the following scenario: An application developer figured out the library he is in use crashes. So he created a test project to isolate this problem, and have it sent to the library developer.

However the feedback of the library developer is that they cannot reproduce the problem. So the application developer used the same test project in different computers and have the same result. Finally, he run a stand alone VirtualBox machine with minimum software installed, and catches a crash.

What he wanted to do is to let the library developer have a look at this and confirm the issue. Just telling them “something gone wrong” means nothing, you have to give them the whole crime scene. So the best way is to take a snapshot of the running machine (with the crash dialog still open), and let the library developer to access this and (probably) work on it.

However, there are difficulties to do so in VirtualBox. Here is some attempts:

  1. Export and import appliance is just creating snapshot of hard drive, not the memory.

  2. I can copy all .vbox files, .sav file and .vdi file across, and have the target machine set everything up. However, when I tried to bring the saved state it says it is invalid (VERR_SSM_INTEGRITY_FOOTER). (I tried to preserve the machine UUID but this does not help)

4
  • @JakeGould, the saved state is for best convenience in this case but that is the major point of this question. I know how to copy VBox settings. Also, a crashing state a undeniable evidence, so people cannot say this is not reproducible. If they have to boot the computer and then run the application till it crashes, 1) it may very hard to happen 2) somebody can say they didn't observed one Oct 14, 2014 at 3:57
  • Discarding a saved state could be very expansive. Say you have spend several months tracking a problem, and then finally catch it in a simplest example, but you are not sure if you let it go you can still catch it the second time... Oct 14, 2014 at 10:49
  • The simpler thing to do in this scenario is if you could have a shared resource/system that the VM runs on, and the app dev and library dev and other folks all access the same machine over remote desktop or physically going to the machine. This way no need to transfer VM related files around. This is more optimal when all folks are in the same organization.
    – David
    Jun 26, 2015 at 0:31
  • For the crash and memory related issue, a good idea would be to use tools to pull the data out of the memory, and if the crash caused a memory dump to file, can send over that for analysis. Granted that means folks need to know how to analysis memory dumps. But this way, you can tell state of system's memory in the dump and no need the whole damn VM.
    – David
    Jun 26, 2015 at 0:33

0

You must log in to answer this question.

Browse other questions tagged .