linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Roman Mamedov <rm@romanrm.net>
To: kreijack@inwind.it
Cc: kreijack@libero.it, Brendan Hide <brendan@swiftspirit.co.za>,
	linux-btrfs@vger.kernel.org
Subject: Re: Provide a better free space estimate on RAID1
Date: Fri, 7 Feb 2014 10:40:05 +0600	[thread overview]
Message-ID: <20140207104005.7bd1438a@natsu> (raw)
In-Reply-To: <52F3E86B.4030805@libero.it>

[-- Attachment #1: Type: text/plain, Size: 1917 bytes --]

On Thu, 06 Feb 2014 20:54:19 +0100
Goffredo Baroncelli <kreijack@libero.it> wrote:

> I agree with you about the needing of a solution. However your patch to me seems even worse than the actual code.
> 
> For example you cannot take in account the mix of data/linear and metadata/dup (with the pathological case of small files stored in the metadata chunks ), nor different profile level like raid5/6 (or the future raidNxM)
> And do not forget the compression...

Every estimate first and foremost should be measured by how precise it is, or
in this case "wrong by how many gigabytes". The actual code returns a result
that is pretty much always wrong by 2x, after the patch it will be close
within gigabytes to the correct value in the most common use case (data raid1,
metadata raid1 and that's it). Of course that PoC is nowhere near the final
solution, what I can't agree with is "if another option is somewhat better,
but not ideally perfect, then it's worse than the current one", even
considering the current one is absolutely broken.

> The situation is very complex. I am inclined to use a different approach.
> 
> As you know, btrfs allocate space in chunk. Each chunk has an own ration between the data occupied on the disk, and the data available to the filesystem. For SINGLE the ratio is 1, for DUP/RAID1/RAID10 the ratio is 2, for raid 5 the ratio is n/(n-1) (where n is the stripes count), for raid 6 the ratio is n/(n-2)....
> 
> Because a filesystem could have chunks with different ratios, we can compute a global ratio as the composition of the each chunk ratio

> We could further enhance this estimation, taking in account also the total files sizes and their space consumed in the chunks (this could be different due to the compression)

I wonder what would be performance implications of all that. I feel a simpler
approach could work.

-- 
With respect,
Roman

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

  reply	other threads:[~2014-02-07  4:40 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-05 20:15 Provide a better free space estimate on RAID1 Roman Mamedov
2014-02-06  7:38 ` Brendan Hide
2014-02-06 12:45   ` Roman Mamedov
2014-02-06 19:54     ` Goffredo Baroncelli
2014-02-07  4:40       ` Roman Mamedov [this message]
2014-02-07  5:30         ` Chris Murphy
2014-02-07  6:08           ` Roman Mamedov
2014-02-07 18:44             ` Chris Murphy
2014-02-08 21:46               ` Kai Krakow
2014-02-08 11:21             ` Roman Mamedov
2014-02-07 10:02           ` Martin Steigerwald
2014-02-08 21:50             ` Kai Krakow
2014-02-08 15:46         ` Goffredo Baroncelli
2014-02-08 16:36         ` [PATCH][V2] " Goffredo Baroncelli
2014-02-09 17:20         ` [PATCH][V3] Provide a better free space estimate [was]Re: " Goffredo Baroncelli
2014-02-07 14:05       ` Frank Kingswood
2014-02-06 20:21 ` Josef Bacik
2014-02-07 20:32   ` Kai Krakow
2014-02-08 11:33     ` Roman Mamedov
2014-02-08 11:46       ` Hugo Mills
2014-02-08 21:35         ` Kai Krakow
2014-02-08 22:10           ` Roman Mamedov
2014-02-08 22:45             ` cwillu
2014-02-08 23:27               ` Kai Krakow
2014-02-08 23:32             ` Kai Krakow
2014-02-09  1:08               ` Roman Mamedov
2014-02-09  9:39                 ` Kai Krakow
2014-02-09  6:38             ` Duncan
2014-02-09  9:20               ` Roman Mamedov
2014-02-10  0:02                 ` Duncan
2014-02-10  9:14                   ` Roman Mamedov
2014-02-09  9:37               ` Kai Krakow
2014-02-08 23:17       ` Kai Krakow
2014-02-09  1:55         ` Roman Mamedov
2014-02-09  2:21           ` Chris Murphy
2014-02-09  2:29             ` Chris Murphy

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=20140207104005.7bd1438a@natsu \
    --to=rm@romanrm.net \
    --cc=brendan@swiftspirit.co.za \
    --cc=kreijack@inwind.it \
    --cc=kreijack@libero.it \
    --cc=linux-btrfs@vger.kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).