[Engine-devel] Adding atomic restore snapshot command at backend
Michael Pasternak
mpastern at redhat.com
Mon May 28 11:37:10 UTC 2012
Hi Livnat,
On 05/28/2012 02:07 PM, Livnat Peer wrote:
> On 28/05/12 12:59, Michael Pasternak wrote:
>>
>> Currently 'restore snapshot' done in two steps on a client side:
>>
>> 1. TryBackToAllSnapshotsOfVm
>> 2. RestoreAllSnapshots
>>
>> This implementation creates race condition on 1 and therefore unstable & bug prone,
>> i suggested refactoring 2 to include 1 as single atomic operation at backend.
>>
>>
>
> Hi Michael,
>
> The two commands above are used for functionality that is needed
> regardless of the functionality you are looking for.
> We want to present the user the option to preview a snapshot without
> committing to it and without loosing the current snapshot.
> I think we need to model the the two options above in the REST, it is
> functionality that is used in the UI.
this is out of scope of this RFE.
>
> What you are looking for is a functionality 'restore to snapshot', this
> functionality does not exist in the engine in a single step, and I think
> that because we assumed that the user can get it in two steps It wasn't
> prioritize so far.
the cons. of this approach is an async nature of the former command.
>
> Implementing the missing functionality with the two functions above is
> a compromise that was done in the API.
>
> To summarize I think the requirement you present is a missing
> functionality in the engine and solving it is not about refactoring the
> two existing verbs into one.
what i meant is not deprecating/refactoring old commands, but introducing
new one that reusing them and expose as single (atomic) command called
'RestoreAllSnapshots',
sorry if i wasn't clear.
>
> Thanks, Livnat
>
--
Michael Pasternak
RedHat, ENG-Virtualization R&D
More information about the Engine-devel
mailing list