Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Gentoo Development (http://www.linux-archive.org/gentoo-development/)
-   -   F18 RC2 btrfs options (http://www.linux-archive.org/gentoo-development/702951-f18-rc2-btrfs-options.html)

Chris Murphy 09-11-2012 09:04 PM

F18 RC2 btrfs options
 
I'm finding the current options and UI for the btrfs options to be non-discoverable, i.e. I don't know what they do.

1. Each option has a red (-0Gb) after it.

2. Redundancy (mirror) is presumably "-d raid1", unclear why it's checkable with one disk.

3. Optimized performance (stripe) is presumably "-d raid0", unclear why it's checkable with one disk.

4. The Technology pop-up menu is unclear which option it applies to, I'm guessing just mirroring and striping. A thin black line separating would make this more clear. Or drop the option entirely (honestly in a GUI I don't see the advantage of LVM or MD over btrfs integrated RAID, compared to the cluttering of the UI that results from providing the choice.)

5. Error detection (parity). Is this the metadata profile? If so, I think it being unchecked by default is confusing, because there isn't a -m none option. I'd even suggest the UI could be eliminated by making some reasonable choices for the user based on the first two options:

Single disk, use metadata default of duplicated on that single disk.
Multiple disk where -d raid0 or raid1, use -m raid1 because it's safer.
Multiple disk where -d raid10, use -m raid10

6. Compression lacks an LZO option, and defaults to ZLIB.


Chris Murphy

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

Chris Lumens 09-12-2012 04:10 PM

F18 RC2 btrfs options
 
> 1. Each option has a red (-0Gb) after it.

This is supposed to indicate to you how much space each option will
consume. So if you turn on redundancy, you're going to use up some of
the available disk space for that mirroring.

I don't believe they are hooked up yet - at least not on the alpha.
Perhaps they will make more sense when they do something? Or perhaps,
they don't really make sense like this at all and a tooltip with the
same information is better.

> 2. Redundancy (mirror) is presumably "-d raid1", unclear why it's
> checkable with one disk.
>
> 3. Optimized performance (stripe) is presumably "-d raid0", unclear
> why it's checkable with one disk.

dlehman will have to weigh in here, but most of this isn't really usable
on the alpha yet given that the alpha does not require custom
partitioning to work. I know he's put a lot of time into this screen
lately for post-alpha.

> 4. The Technology pop-up menu is unclear which option it applies to,
> I'm guessing just mirroring and striping. A thin black line separating
> would make this more clear. Or drop the option entirely (honestly in a
> GUI I don't see the advantage of LVM or MD over btrfs integrated RAID,
> compared to the cluttering of the UI that results from providing the
> choice.)

I'll see what mizmo thinks about making this a little more separated
out. Believe it or not, though, a fair number of people want to do
things like LVM-on-RAID (or the other way around - I don't really
remember).

> 5. Error detection (parity). Is this the metadata profile? If so, I
> think it being unchecked by default is confusing, because there isn't
> a -m none option. I'd even suggest the UI could be eliminated by
> making some reasonable choices for the user based on the first two
> options:
>
> Single disk, use metadata default of duplicated on that single disk.
> Multiple disk where -d raid0 or raid1, use -m raid1 because it's safer.
> Multiple disk where -d raid10, use -m raid10

For RAID, at least, I believe this option is basically for toggling
RAID6.

> 6. Compression lacks an LZO option, and defaults to ZLIB.

We're walking a bit of a fine line here with how much data to present on
this screen. I don't really think we want to offer different
compression algorithms as a drop-down or something. So, whatever is the
recommended scheme is the one we should default to.

- Chris

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

Chris Murphy 09-12-2012 06:21 PM

F18 RC2 btrfs options
 
On Sep 12, 2012, at 10:10 AM, Chris Lumens wrote:

>> 1. Each option has a red (-0Gb) after it.
>
> This is supposed to indicate to you how much space each option will
> consume. So if you turn on redundancy, you're going to use up some of
> the available disk space for that mirroring.

I think that's fine, either way. But I also think if people don't understand basic terminology, they shouldn't be using the option. I'm primarily a Mac user, we tend to expect lots of hand holding in the GUI, and even I think this is excessive.

Most importantly, with a single disk, these options need to be grayed out or not exist. I haven't seen what the behavior is with two disks.

>> 4. The Technology pop-up menu is unclear which option it applies to,
>> I'm guessing just mirroring and striping. A thin black line separating
>> would make this more clear. Or drop the option entirely (honestly in a
>> GUI I don't see the advantage of LVM or MD over btrfs integrated RAID,
>> compared to the cluttering of the UI that results from providing the
>> choice.)
>
> I'll see what mizmo thinks about making this a little more separated
> out. Believe it or not, though, a fair number of people want to do
> things like LVM-on-RAID (or the other way around - I don't really
> remember).

Why do they want it? My first suspicion is they don't understand btrfs if they want LVM or md RAID to implement RAID 0, 1, or 10, which are the only RAID types allowed in the RC2 UI. If people want LVM, RAID or LVM on RAID, they should use ext4 or XFS.

My second suspicion is conflating either LVM or md RAID in a BTRFS specific UI is just confusing, so I still think it should be dropped.

>
>> 5. Error detection (parity). Is this the metadata profile? If so, I
>> think it being unchecked by default is confusing, because there isn't
>> a -m none option. I'd even suggest the UI could be eliminated by
>> making some reasonable choices for the user based on the first two
>> options:
>>
>> Single disk, use metadata default of duplicated on that single disk.
>> Multiple disk where -d raid0 or raid1, use -m raid1 because it's safer.
>> Multiple disk where -d raid10, use -m raid10
>
> For RAID, at least, I believe this option is basically for toggling
> RAID6.

Yeah but RAID 5/6 are both distributed parity, so the terminology still doesn't make sense. It should be called RAID 5 and RAID 6 in any case, rather than Error Detection. But this option is gone in RC2, so maybe it's going away entirely.


>> 6. Compression lacks an LZO option, and defaults to ZLIB.
>
> We're walking a bit of a fine line here with how much data to present on
> this screen. I don't really think we want to offer different
> compression algorithms as a drop-down or something. So, whatever is the
> recommended scheme is the one we should default to.

This is my argument for the Technology pop-up menu. But Compression is likewise gone in RC2.

I'd rather have zlib than no compression option. But for lower performing hardware, LZO is a performance advantage over no compression and zlib. And I'd use radio buttons rather than a pop-up menu, since there are only two options.


Chris Murphy

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

Chris Murphy 09-12-2012 06:51 PM

F18 RC2 btrfs options
 
On Sep 12, 2012, at 12:21 PM, Chris Murphy wrote:

> [Error Detection] option is gone in RC2, so maybe it's going away entirely.
>
> But Compression is likewise gone in RC2.

Weird. I'm getting different behaviors between reboots of RC2. When I wrote the above, only Redundancy (mirror) and Optimized performance (stripe) were visible. The others simply weren't there. Reboot, and they're back.

Chris

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

David Lehman 09-12-2012 09:59 PM

F18 RC2 btrfs options
 
On Tue, 2012-09-11 at 15:04 -0600, Chris Murphy wrote:
> I'm finding the current options and UI for the btrfs options to be non-discoverable, i.e. I don't know what they do.

First and foremost, that whole section does exactly nothing in the alpha
as I recall. There's a lot that doesn't seem to make sense because it is
just ui elements with nothing hooked up to them.

>
> 1. Each option has a red (-0Gb) after it.
>
> 2. Redundancy (mirror) is presumably "-d raid1", unclear why it's checkable with one disk.
>
> 3. Optimized performance (stripe) is presumably "-d raid0", unclear why it's checkable with one disk.
>
> 4. The Technology pop-up menu is unclear which option it applies to, I'm guessing just mirroring and striping. A thin black line separating would make this more clear. Or drop the option entirely (honestly in a GUI I don't see the advantage of LVM or MD over btrfs integrated RAID, compared to the cluttering of the UI that results from providing the choice.)

I have removed the "Technology" combobox for the time being. As of now,
there is no way to create new container devices (lvm vg, btrfs vol, md)
whose member/component devices are anything other than partitions. This
functionality will get in at some point, but it will have to wait a bit.

>
> 5. Error detection (parity). Is this the metadata profile? If so, I think it being unchecked by default is confusing, because there isn't a -m none option. I'd even suggest the UI could be eliminated by making some reasonable choices for the user based on the first two options:
>
> Single disk, use metadata default of duplicated on that single disk.
> Multiple disk where -d raid0 or raid1, use -m raid1 because it's safer.
> Multiple disk where -d raid10, use -m raid10

We're not allowing explicit selection of metadata profile. We'll
probably do something similar to what you have above. As of now, we're
not passing any -m option to mkfs.btrfs.

>
> 6. Compression lacks an LZO option, and defaults to ZLIB.

I've also removed the compression checkbutton since compression can be
enabled post-install. We're cutting out features that are not
install-time-only.

>
>
> Chris Murphy
>
> _______________________________________________
> Anaconda-devel-list mailing list
> Anaconda-devel-list@redhat.com
> https://www.redhat.com/mailman/listinfo/anaconda-devel-list


_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

"Brian C. Lane" 09-12-2012 10:10 PM

F18 RC2 btrfs options
 
On Wed, Sep 12, 2012 at 12:51:57PM -0600, Chris Murphy wrote:
>
> On Sep 12, 2012, at 12:21 PM, Chris Murphy wrote:
>
> > [Error Detection] option is gone in RC2, so maybe it's going away entirely.
> >
> > But Compression is likewise gone in RC2.
>
> Weird. I'm getting different behaviors between reboots of RC2. When I wrote the above, only Redundancy (mirror) and Optimized performance (stripe) were visible. The others simply weren't there. Reboot, and they're back.

I saw this once when selecting different options, switching between
btrfs, lvm, etc. without having to reboot.

--
Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)
_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

Chris Murphy 09-13-2012 05:04 PM

F18 RC2 btrfs options
 
On Sep 12, 2012, at 3:59 PM, David Lehman wrote:
>
> I have removed the "Technology" combobox for the time being. As of now,
> there is no way to create new container devices (lvm vg, btrfs vol, md)
> whose member/component devices are anything other than partitions. This
> functionality will get in at some point, but it will have to wait a bit.

In alpha RC2, if /home and / are set to btrfs, this causes /home and / to not be partitions but rather two subvols, which is great. Eventually it'd be nice for /boot to join.

However, checking "Redundancy (mirror)" does nothing for a two disk setup for data. It's basically default mkfs.btrfs: i.e. -m raid1 -d raid0, but it sounds like this is expected behavior in alpha.

The UI eventually ought to reflect that you can't have a 2+ disk setup without either raid0, raid1, or raid10 with btrfs. The default for 2+ disk btrfs volumes is -d raid0, so the UI should have "Optimized performance (stripe)" checked by default.


>> 5. Error detection (parity). [snip]

> We're not allowing explicit selection of metadata profile. We'll
> probably do something similar to what you have above. As of now, we're
> not passing any -m option to mkfs.btrfs.

OK so what is this Error detection option supposed to do?

>
>>
>> 6. Compression lacks an LZO option, and defaults to ZLIB.
>
> I've also removed the compression checkbutton since compression can be
> enabled post-install. We're cutting out features that are not
> install-time-only.

Fair enough. Although, compression post-install only compresses that which is added after installation. There's a pretty good performance boost, esp on read, for compressed data.


Chris Murphy

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

David Lehman 09-13-2012 07:18 PM

F18 RC2 btrfs options
 
On Thu, 2012-09-13 at 11:04 -0600, Chris Murphy wrote:
> >> 5. Error detection (parity). [snip]
>
> > We're not allowing explicit selection of metadata profile. We'll
> > probably do something similar to what you have above. As of now, we're
> > not passing any -m option to mkfs.btrfs.
>
> OK so what is this Error detection option supposed to do?

Error detection (parity) enables a parity disk AKA RAID4.

Distributed is really a modifier for the above and enables distributed
parity AKA RAID5.

Redundant is another modifier that enables redundant distributed parity
AKA RAID6.

Yes, the UI will prevent you from selecting invalid combinations.


_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

Chris Murphy 09-13-2012 08:56 PM

F18 RC2 btrfs options
 
On Sep 13, 2012, at 1:18 PM, David Lehman wrote:
>
> Error detection (parity) enables a parity disk AKA RAID4.
>
> Distributed is really a modifier for the above and enables distributed
> parity AKA RAID5.
>
> Redundant is another modifier that enables redundant distributed parity
> AKA RAID6.

OK sorry but this is confusing for the following reasons, regardless of whether this is based on md RAID or btrfs RAID.

1.) Wide spread vernacular is "RAID 5 (single parity)" and "RAID 6 (dual parity)". Btrfs's implementation is different from conventional RAID 5, so you could arguably call it "Btrfs single parity (RAID 5)" and "Btrfs dual parity (RAID 6)". But the way it's described now is peculiar, so I suggest the former if this is md RAID, and the latter if it's btrfs RAID.

2.) If this is md RAID, I think it's confusing for it to be in btrfs options, and available for no other file system.

3.) If this is md RAID, RAID 4, 5, 6 do not detect errors at all in normal operation.

4.) If this is btrfs RAID, none of these RAID levels are implemented yet. Btrfs single parity (RAID 5) is supposed to make its way into linux 3.7. But I'm not finding reference for RAID 4 at all, and RAID 6 isn't yet slated for a kernel release.

5.) If this is btrfs RAID, Btrfs always does error detection by default. You'd have to mount with nodatasum or nodatacow at mount time to disable it.

Maybe I'm missing something. But it seems to me like punting this down the road to F19 is OK.

> Yes, the UI will prevent you from selecting invalid combinations.

OK good.


[1] RAID 4 as far as I know is not going to be implemented in btrfs. Btrfs RAID 5 is in linux 3.7, and Btrfs RAID 6 isn't slated for a kernel release yet. It could be a while before it is.


Chris Murphy


_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

David Lehman 09-13-2012 09:17 PM

F18 RC2 btrfs options
 
On Thu, 2012-09-13 at 14:56 -0600, Chris Murphy wrote:
> On Sep 13, 2012, at 1:18 PM, David Lehman wrote:
> >
> > Error detection (parity) enables a parity disk AKA RAID4.
> >
> > Distributed is really a modifier for the above and enables distributed
> > parity AKA RAID5.
> >
> > Redundant is another modifier that enables redundant distributed parity
> > AKA RAID6.
>
> OK sorry but this is confusing for the following reasons, regardless of whether this is based on md RAID or btrfs RAID.

If I didn't make it clear enough in my response to your original post,
there has been a significant amount of change in this exact area since
we branched for alpha stabilization. I'll wait until you have seen those
changes before discussing it further.

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list


All times are GMT. The time now is 11:40 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.