Ticket #6601 (closed defect: wontfix)

Opened 9 years ago

Last modified 13 months ago

"Delete snapshot" is actually "merge snapshot"

Reported by: pgquiles Owned by:
Component: GUI Version: VirtualBox 3.1.6
Keywords: Cc:
Guest type: other Host type: other


In the "Snapshots" tab in the GUI, when you right-click on a snapshot there are two options:

  • Restore snapshot
  • Delete snapshot

When clicking "Delete snapshot", the expected behavior would be:

  1. remove the snapshot
  2. return to the state previous to the snapshot

But what it actually does is merging the snapshot into the previous state.

My request: have three options for snapshots:

  • Restore snapshot
  • Merge snapshot with previous state (what "Delete snapshot" currently does
  • Discard snapshot, which would actually remove the snapshot. If there is a child snapshot, this option should not be available (you'd need to use "merge snapshot with previous state" in the child snapshot before being able to discard this snapshot)

Change History

comment:1 Changed 9 years ago by sandervl73

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

No, we will not change the terminology again. People do not know what merge means. What each action does is clearly explained in the manual.

comment:2 Changed 9 years ago by pgquiles

If people do not know what 'merge' means, then do not use that term. It is very confusing to see a warning saying changes will be merged and a "merging" progress bar after I have clicked "delete".

comment:3 Changed 9 years ago by sandervl73

We need to keep it as simple as possible. When you delete the snapshot, then it's gone. Whether the state will be merged backwards or forwards is not really relevant.

The delete action removes the snapshot, but that implies merging to make sure the tree stays consistent.

We had something similar to what you propose and it simply confused everybody. And also keep in mind that snapshots are much more complicated than they may appear to be.

comment:4 Changed 9 years ago by klaus

It makes no sense to talk about merging snapshots. The snapshot is deleted - how else you want to call making something go away? It's not like deleting snapshot 2 will logically change the contents of either snapshot 1 or 3.

The progress messages talk about merging diff images, and again that's correct. Those are really merged as part of deleting a snapshot. If there's ambiguous wording then please report it. That's considered a bug.

comment:5 Changed 3 years ago by Dantoys

I got to read up on this snapshot feature, cause it does more than what i expected, I almost shit my pants when I hit the delete button and saw a message about merging.. I wanted to remove the old snap shot to prevent it from messing up my changes and updates I made to the guest OS... this feature really needs to be better explained in the popup message... I spent hours working, when I thought it was going to destroy my work, I felt so sick, and angry, I would have thrown something through a window if my guest OS didn't start back up... Holy Sheeet... I've been using computers when I loaded an OS from a tape drive, this wording is really screwed up, anyone not understanding that needs to go get their head examined..

comment:6 Changed 2 years ago by jelabarre59

I would also agree with sandervl73 and Dantoys that the whole terminology around "snapshots" is confusing/misleading. I had made a snapshot of a VM because I wanted to test a couple of application updates, but be able to revert to the original configuration afterwards. Had I not carefully read the comments in the dialogue box when I tried to delete the snapshot when I was done, I would have ended up with a main image that had all the changes, which I most decidedly did not want.

comment:7 Changed 20 months ago by treysis

It's only confusing if you're looking at the concept the wrong way. You all seem to think a snapshot is the whole part that changes after marking a specific point in time. But the snapshot is just that: a specific point in time, which state you have saved. Suppose you have states A->B->C. A=new VM, B=snapshot, C=current. But you seem to think that the snapshot is the whole part B->C. That is not true. The snapshot is just a single point B. It's snapSHOT. So if you delete the snapshot, of course it deletes that state, and you will be left with C, the current state, and all what has happened after the snapshot will have to be merged to the original file. However, having alternate stream starting from a snapshot, and then better looking at this "snapstream" instead of a snapshot might be more what people are after. So, let's say you have setup your perfect VM, and you want to have different streams that originate from that original state. And that is what people think what snapshots are. But they are not. Hence, the current terminology is correct for what it does.

comment:8 Changed 17 months ago by raywood

That last remark seems to capture the situation. There is a conflict between "what people think ... snapshots are" and The VirtualBox Way, and there is also a determination not to seek a user-friendly solution.

Last edited 17 months ago by raywood (previous) (diff)

comment:9 Changed 13 months ago by starfry

I find the whole snapshot thing very confusing too, but perhaps that's because I don't "manage" them very often.

Today I was trying to do some cleaning up and wanted to remove a stack of snapshots. I thought I'd be able to delete the one nearest the root and have its child snapshots follow it into the cracks of doom. But no, it removes the selected snapshot by merging it into its child. That makes sense when you think about it, but I couldn't find a way to delete a snapshot tree except to delete-walk up the tree from the leaf back to the last node to be deleted, removing the snapshots one-by-one.

I think that, now I've written it out, it does make sense but I do think there is a 'roll-up' option missing.

Perhaps a check-box "also delete all child snapshots" could appear on the question dialog if the selected snapshot has children?

Note: See TracTickets for help on using tickets.
ContactPrivacy policyTerms of Use