On Fri, Jul 6, 2012 at 2:03 PM, Goffredo Baroncelli <kreij...@libero.it> wrote:
> On 07/06/2012 01:55 PM, Chris Mason wrote:
>> On Fri, Jul 06, 2012 at 02:51:43AM -0600, Alexander Block wrote:
>>> On Fri, Jul 6, 2012 at 12:34 AM, Goffredo Baroncelli <kreij...@libero.it> 
>>> wrote:
>>>> On 07/05/2012 06:51 PM, Alexander Block wrote:
>>>>> Hello all,
>>>>>
>>>>> in IRC we had a discussion on how we could solve sending live
>>>>> subvolumes and how to send subvolumes without the need to
>>>>> administrate/keep old snapshots for incremental sends. One of the
>>>>> ideas was to introduce "sendshots", which are basically snapshots
>>>>> where no refs are counted for file data. This means, that when file
>>>>> data is changed in the sendshot origin, we do not consume extra space
>>>>> for two copies of the data. We would only have the metadata
>>>>> duplicated.
>>>>>
>>>>> For the initial btrfs send we could do this:
>>>>> 1. Create a hidden read-only snapshot of the subvolume to send. Hidden
>>>>> means that it's not referenced by any subvolume. It is however still a
>>>>> normal snapshot (not a sendshot!). Hidden snapshots are not possible
>>>>> atm so we would have to implement that. This step allows us to send
>>>>> read-write subvolumes, because we have a freezed version of it.
>>>>
>>>> Why we should want/need an hidden snapshot ? We could put this kind of
>>>> hidden snapshot under a directory dot-prefixed (like /.hidden-subvolumes)
>>> That would have the problem that the user may modify the subvolume
>>> in-between (by removing the ro flag). Or he could simple cd into it
>>> and we would later fail to delete it.
>>
>> I prefer to make this more explicit.  We could add a hard-readonly flag
>> that cannot be cleared.  Having the snapshot show in the FS lets the
>> admin know what things are really using space.
Yepp sounds like a better solution then hidden snapshots. Or, we could
protect against RO flag changes while performing the send.
>
>
> Me too, but I am guessing what should happens when the users try to read
> an old data ? (I am talking about sendshot ). If I understood correctly
> the old data isn't tracked by the sendshot.
Two possible solutions that I see:
1. Hidden sendshots :P
2. Reading files from a sendshot will always give dummy data (e.g. all
zero). But I really can't estimate how hard this is to implement.
>
> GB
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to