Re: Re: Snapshot - Commit and Rollback

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 18 Jan 2008, Rahul Sahadevan wrote:

>      I have posted this mail regarding the SNAPSHOT operations in LVM2.
> If anyone has any clue or comments please put forward. I am deliberately
> waiting for a reply from this group. 

COMMIT and ROLLBACK features are not currently implemented.  They are
certainly possible using device-mapper.

Here is an idea about ROLLBACK.  Assume a primary LV 'P' and a snapshot
'S'.  Any writes to 'P' copies the cluster to 'S' first.  Any reads
from 'S' get the data from 'P' unless it was copied to 'S'.

Now, for a rollback, create a new snapshot 'R' (in case we change our
minds!).  In addition, reads from 'P' fetch clusters from 'S' that were
copied there, until that cluster is written on 'P'.  'P' now depends on 'S'.

To eventually get rid of 'S', we also have reads from 'P' that are mapped
to 'S' also copy the cluster from 'S' back to 'P' (after copying from 'P'
to 'R' of course).  So simply by reading all of 'P', the clusters mapped
to 'S' (the percentage displayed in lvs) can be reduced to 0, and 'S' can then
be deleted.  

This works even if 'S' is rw, but isn't a true rollback, of course, unless 'S'
is ro.  If 'S' is rw, we can call the above operation a 'COMMIT', and if we
change our minds and revert to 'R', *that* is the 'ROLLBACK'.

-- 
	      Stuart D. Gathman <stuart@bmsi.com>
    Business Management Systems Inc.  Phone: 703 591-0911 Fax: 703 591-6154
"Confutatis maledictis, flammis acribus addictis" - background song for
a Microsoft sponsored "Where do you want to go from here?" commercial.

_______________________________________________
linux-lvm mailing list
linux-lvm@redhat.com
https://www.redhat.com/mailman/listinfo/linux-lvm
read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/

[Index of Archives]     [Gluster Users]     [Kernel Development]     [Linux Clusters]     [Device Mapper]     [Security]     [Bugtraq]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]

  Powered by Linux