[openstack-dev] [all][db][performance] Proposal: Get rid of soft deletion (step by step)

Boris Pavlovic boris at pavlovic.me
Thu Mar 13 18:52:00 UTC 2014


Hi all,


I would like to fix direction of this thread. Cause it is going in wrong
direction.

To assume:
1) Yes restoring already deleted recourses could be useful.
2) Current approach with soft deletion is broken by design and we should
get rid of them.

More about why I think that it is broken:
1) When you are restoring some resource you should restore N records from N
tables (e.g. VM)
2) Restoring sometimes means not only restoring DB records.
3) Not all resources should be restorable (e.g. why I need to restore
fixed_ip? or key-pairs?)


So what we should think about is:
1) How to implement restoring functionally in common way (e.g. framework
that will be in oslo)
2) Split of work of getting rid of soft deletion in steps (that I already
mention):
a) remove soft deletion from places where we are not using it
b) replace internal code where we are using soft deletion to that framework
c) replace API stuff using ceilometer (for logs) or this framework (for
restorable stuff)


To put in a nutshell: Restoring Delete resources / Delayed Deletion != Soft
deletion.


Best regards,
Boris Pavlovic



On Thu, Mar 13, 2014 at 9:21 PM, Mike Wilson <geekinutah at gmail.com> wrote:

> For some guests we use the LVM imagebackend and there are times when the
> guest is deleted on accident. Humans, being what they are, don't back up
> their files and don't take care of important data, so it is not uncommon to
> use lvrestore and "undelete" an instance so that people can get their data.
> Of course, this is not always possible if the data has been subsequently
> overwritten. But it is common enough that I imagine most of our operators
> are familiar with how to do it. So I guess my saying that we do it on a
> regular basis is not quite accurate. Probably would be better to say that
> it is not uncommon to do this, but definitely not a daily task or something
> of that ilk.
>
> I have personally "undeleted" an instance a few times after accidental
> deletion also. I can't remember the specifics, but I do remember doing it
> :-).
>
> -Mike
>
>
> On Tue, Mar 11, 2014 at 12:46 PM, Johannes Erdfelt <johannes at erdfelt.com>wrote:
>
>> On Tue, Mar 11, 2014, Mike Wilson <geekinutah at gmail.com> wrote:
>> > Undeleting things is an important use case in my opinion. We do this in
>> our
>> > environment on a regular basis. In that light I'm not sure that it
>> would be
>> > appropriate just to log the deletion and git rid of the row. I would
>> like
>> > to see it go to an archival table where it is easily restored.
>>
>> I'm curious, what are you undeleting and why?
>>
>> JE
>>
>>
>> _______________________________________________
>> OpenStack-dev mailing list
>> OpenStack-dev at lists.openstack.org
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>
>
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140313/8aa712d4/attachment.html>


More information about the OpenStack-dev mailing list