VirtualBox

Ticket #15206 (closed defect: fixed)

Opened 21 months ago

Last modified 19 months ago

VirtualBox 5.x errors when deleting a snapshot, while VM is running or paused

Reported by: Jacob Klein Owned by:
Priority: major Component: VM control
Version: VirtualBox 5.0.16 Keywords: delete deleting snapshot
Cc: Jacob_W_Klein@… Guest type: all
Host type: Windows

Description

VirtualBox 5.x errors when deleting a snapshot, while VM is running or paused

Steps to Reproduce the problems (Tested on Windows 10 Production, fully patched, Version 1511 Build 10586.122):

Prep: 1) Download a pre-made VM. For my example, I downloaded the "IE6 on XP" "VirtualBox" VM from:  https://dev.windows.com/en-us/microsoft-edge/tools/vms/windows/ ... and extracted it. 2) Uninstall VirtualBox, then install the version of VirtualBox that you want to test

Problem 1: Deletion of snapshot, while VM is running, fails: 1) Remove any instances of the VM you are testing 2) Double-click the ".ova" file and Import the Virtual Appliance, or add your VM Machine to the VirtualBox Manager 3) Start the VM. If using 5.x, then start the VM using "Normal Start" 4) Let the VM run for a minute or so 5) While the VM is "Running", take a snapshot called "Snapshot 1". While the snapshot is being saved, if on 5.x, you'll see it say "Taking Online Snapshot" 6) While the VM is "Running", take another snapshot called "Snapshot 2". 7) While the VM is "Running", try to delete "Snapshot 1".

Problem 2: Deletion of snapshot, while VM is paused, fails: 1) Redo steps 1-6 above 2) Pause the VM 3) While the VM is "Paused", try to delete "Snapshot 1".

Expected Results: The snapshots get merged such that "Snapshot 1" is successfully deleted

Current Results:

4.3.37 r105748: The UI says "Merging differencing image" for several seconds, then successfully deletes "Snapshot 1" without error

5.0.16 r105871: Failed to delete the snapshot Snapshot 1 of the virtual machine IE6 - WinXP. Result Code: E_FAIL (0x80004005)

Note 1: From what I could tell, there is nothing useful in the .log file. So please follow the steps above to easily reproduce the problems. Note 2: Deleting the snapshot while the VM is Powered Off, *does* seem to work correctly using VirtualBox 5.x. Note 3: BOINC uses the VirtualBox COM API, in order to perform operations. I briefly inspected the code, and it seems to me that BOINC may not be getting an "error return value" when this snapshot deletion error occurs. So, this may be an additional bug, I'm not sure.

Thanks, Jacob Klein

Change History

comment:1 Changed 21 months ago by Jacob Klein

My apologies for the bad spacing in the original post. Here's the same text, with the steps spaced correctly so it is a bit easier to read:

VirtualBox 5.x errors when deleting a snapshot, while VM is running or paused

Steps to Reproduce the problems (Tested on Windows 10 Production, fully patched, Version 1511 Build 10586.122):

Prep:

  1. Download a pre-made VM. For my example, I downloaded the "IE6 on XP" "VirtualBox" VM from:  https://dev.windows.com/en-us/microsoft-edge/tools/vms/windows/ ... and extracted it.
  2. Uninstall VirtualBox, then install the version of VirtualBox that you want to test

Problem 1: Deletion of snapshot, while VM is running, fails:

  1. Remove any instances of the VM you are testing
  2. Double-click the ".ova" file and Import the Virtual Appliance, or add your VM Machine to the VirtualBox Manager
  3. Start the VM. If using 5.x, then start the VM using "Normal Start"
  4. Let the VM run for a minute or so
  5. While the VM is "Running", take a snapshot called "Snapshot 1". While the snapshot is being saved, if on 5.x, you'll see it say "Taking Online Snapshot"
  6. While the VM is "Running", take another snapshot called "Snapshot 2".
  7. While the VM is "Running", try to delete "Snapshot 1".

Problem 2: Deletion of snapshot, while VM is paused, fails:

  1. Redo steps 1-6 above
  2. Pause the VM
  3. While the VM is "Paused", try to delete "Snapshot 1".

Expected Results:
The snapshots get merged such that "Snapshot 1" is successfully deleted

Current Results:

4.3.37 r105748: The UI says "Merging differencing image" for several seconds, then successfully deletes "Snapshot 1" without error

5.0.16 r105871: Failed to delete the snapshot Snapshot 1 of the virtual machine IE6 - WinXP. Result Code: E_FAIL (0x80004005)

Note 1: From what I could tell, there is nothing useful in the .log file. So please follow the steps above to easily reproduce the problems.
Note 2: Deleting the snapshot while the VM is Powered Off, *does* seem to work correctly using VirtualBox 5.x.
Note 3: BOINC uses the VirtualBox COM API, in order to perform operations. I briefly inspected the code, and it seems to me that BOINC may not be getting an "error return value" when this snapshot deletion error occurs. So, this may be an additional bug, I'm not sure.

Thanks, Jacob Klein

Last edited 21 months ago by frank (previous) (diff)

comment:2 Changed 21 months ago by frank

Confirmed although the testcase is much easier. It's sufficient to create 2 snapshots of a VM and try to remove the older snapshot while the VM is running. This must be some regression.

comment:3 Changed 21 months ago by Jacob Klein

Thanks. I hope we can get it fixed!

My additional testing indicates:

  • It has been a problem for VirtualBox 5.x, as far back as I could test on Windows 10, all the way back to 5.0.2 I believe. I suspect it's always been an issue for 5.x.
  • Once you get the error, if you try to create/delete other snapshots, the VM can get into a really hosed state, with "Invalid State" errors.
  • We believe this may be a source of the BOINC VM errors we sometimes see, for our users who are using 5.x instead of 4.3.x.

Hope this helps! More importantly, I hope you guys nail it down and fix it! :) Thanks, Jacob Klein

Last edited 21 months ago by Jacob Klein (previous) (diff)

comment:4 Changed 19 months ago by frank

  • Status changed from new to closed
  • Resolution set to fixed

Fix is part of VBox 5.0.18.

comment:5 Changed 19 months ago by Jacob Klein

I was able to confirm this fix - Thank you very much for making it a priority.

In fact, a BOINC user whose VM task was having trouble getting started/resumed ... recently stated that 5.0.18 fixed his problem. I believe it was this Ticket's solution, that fixed his problem.

So, thanks again! :)

comment:6 Changed 19 months ago by frank

Thanks for the confirmation!

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use