All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Austin S. Hemmelgarn" <ahferroin7@gmail.com>
To: Marat Khalili <mkh@rqc.ru>, Btrfs BTRFS <linux-btrfs@vger.kernel.org>
Cc: "Lentes, Bernd" <bernd.lentes@helmholtz-muenchen.de>
Subject: Re: btrfs-subv-backup v0.1b
Date: Thu, 26 Oct 2017 11:55:21 -0400	[thread overview]
Message-ID: <caaa3503-102e-176e-85d0-b9c81a19eea3@gmail.com> (raw)
In-Reply-To: <49c49e21-0834-5038-2059-5171a6a154d5@rqc.ru>

On 2017-10-26 11:25, Marat Khalili wrote:
> Hello Austin,
> 
> Looks very useful. Two questions:
> 
> 1. Can you release it under some standard license recognized by github, 
> in case someone wants to include it in other projects? AGPL-3.0 would be 
> nice.
The intent is for it to be under what Github calls the BSD 'new' 
3-clause license, I'll attempt to get it updated so that Github 
recognizes it properly shortly.  It's most likely not matching correctly 
due to the differences between the 'official' version of the license 
text, and the version I pulled out of the Gentoo portage tree on my 
local system (in particular, the portage copy uses numbers instead of 
bullet points, and assumes the project creators will be referenced 
directly in the third clause like in the original BSD licenses, instead 
of in an abstract manner like the text that Github uses).
> 
> 2. I don't understand mentioned restore performance issues. It shouldn't 
> apply if data is restored _after_ subvolume structure is re-created, but 
> even if (1) data is already there, and (2) copyless move doesn't work 
> between subvolumes (really a limitation of some older systems, not 
> Python), there's a known workaround of creating a reflink and then 
> removing the original.
As of right now, if the data is there, it will use the shutil.copytree() 
function to copy it.  This is roughly equivalent to calling `cp -a` on 
the directory in a shell, so it's potentially very slow compared to what 
it could be, and will temporarily duplicate data on-disk.  I hope to 
have it using reflinks eventually, but for the time being, I wanted to 
get something working out there so that people can use it, and then 
worry about improving performance, and I'm still not 100% confident 
about mucking around with ioctls from Python.  I'll get the README 
updated to clarify that the performance issues are only present when 
recreating subvolumes after the data has been restored.

As far as restoring subvolume structure first, that will work too, and I 
should probably mention that in the README file, I just didn't see that 
as being the most likely case (in the backup software I've dealt with, 
it's simpler to just extract everything and run a script afterwards than 
to extract one file, run a script, and then extract the rest).

  reply	other threads:[~2017-10-26 15:55 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-26 13:32 btrfs-subv-backup v0.1b Austin S. Hemmelgarn
2017-10-26 15:25 ` Marat Khalili
2017-10-26 15:55   ` Austin S. Hemmelgarn [this message]
2017-10-31 12:40 ` Lentes, Bernd
2017-10-31 13:59   ` Austin S. Hemmelgarn
2017-10-31 16:54     ` Lentes, Bernd
2017-10-31 17:00       ` Austin S. Hemmelgarn
2017-10-31 19:54         ` Lentes, Bernd
2017-10-31 20:00           ` Austin S. Hemmelgarn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=caaa3503-102e-176e-85d0-b9c81a19eea3@gmail.com \
    --to=ahferroin7@gmail.com \
    --cc=bernd.lentes@helmholtz-muenchen.de \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=mkh@rqc.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.