On 06/25/2012 09:14 AM, Deepak C Shetty wrote:
> On 06/25/2012 07:47 AM, Shu Ming wrote:
>> I think VDSM-libstoragemgmt will let the storage array itself to make
>> the snapshot and handle the coordination of the various atomic
>> functions. VDSM should be blocked on the following access to the
>> specific luns which are under snapshotting.
> I kind of agree. If snapshot is being done at the array level, then the
> array takes care of quiesing the I/O, taking the snapshot and allowing
> the I/O, why does VDSM have to worry about anything here, it should all
> happen transparently for VDSM, isnt it ?
The array can take a snapshot in flight, but the data may be in an
inconsistent state. Only the end application/user of the storage knows
when a point in time is consistent. Typically the application(s) are
quiesced, the OS buffers flushed (outstanding tagged IO is allowed to
complete) and then the storage is told to make a point in time copy.
This is the only way to be sure of what you have on disk is coherent.
A transactional database (two-phase commit) and logging file systems
(meta data) are specifically written to handle these inconsistencies,
but many applications are not.
vdsm-devel mailing list