The question that I don't understand is why does this process have to be involve the database to begin with?
If you want to archive images per-say, on deletion just export it to a 'backup tape' (for example) and store enough of the metadata on that 'tape' to re-insert it if this is really desired and then delete it from the database (or do the export... asynchronously). The same could be said with VMs, although likely not all resources, aka networks/.../ make sense to do this. So instead of deleted = 1, wait for cleaner, just save the resource (if possible) + enough metadata on some other system ('backup tape', alternate storage location, hdfs, ceph...) and leave it there unless it's really needed. Making the database more complex (and all associated code) to achieve this same goal seems like a hack that just needs to be addressed with a better way to do archiving. In a cloudy world of course people would be able to recreate everything they need on-demand so who needs undelete anyway ;-) My 0.02 cents. -----Original Message----- From: Tim Bell <tim.b...@cern.ch> Reply-To: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev@lists.openstack.org> Date: Tuesday, March 11, 2014 at 11:43 AM To: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev@lists.openstack.org> Subject: Re: [openstack-dev] [all][db][performance] Proposal: Get rid of soft deletion (step by step) > >Typical cases are user error where someone accidentally deletes an item >from a tenant. The image guys have a good structure where images become >unavailable and are recoverable for a certain period of time. A regular >periodic task cleans up deleted items after a configurable number of >seconds to avoid constant database growth. > >My preference would be to follow this model universally (an archive table >is a nice way to do it without disturbing production). > >Tim > > >> On Tue, Mar 11, 2014, Mike Wilson <geekinu...@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@lists.openstack.org >> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > >_______________________________________________ >OpenStack-dev mailing list >OpenStack-dev@lists.openstack.org >http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev _______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev