On Saturday, 04 February, 2012 15:47:17 Ilya Dryomov wrote: > On Sat, Feb 04, 2012 at 02:06:28PM +0100, Goffredo Baroncelli wrote: > > Hi Ilya, > > > > On Friday, 03 February, 2012 22:49:09 Ilya Dryomov wrote: > > > Hello, > > > > > > This is the userspace part of restriper, rebased onto the new progs > > > infrastructure. Restriper commands are located under 'balance' prefix, > > > which is now the top level command group. However to not confuse > > > existing users 'balance' prefix is also available under 'filesystem': > > > > > > btrfs [filesystem] balance start > > > btrfs [filesystem] balance pause > > > btrfs [filesystem] balance cancel > > > btrfs [filesystem] balance resume > > > btrfs [filesystem] balance status > > > > > > Backwards compatibility is fully preserved thanks to the new command > > > parser: the old 'btrfs filesystem balance <path>' works as expected. > > > > I prefer to avoid prefix which may confuse the user. If I have a > > subvolume > > > > called "s", what means: > > btrfs filesystem balance s > > > > Is it a missing argument (the path required for btrfs filesystem balance) > > or is it a synonymus of > > > > btrfs filesystem balance start ./s > > > > (or btrfs filesystem balance stop ./s) > > > > ? > > It's a path. It's unambiguous because every subcommand requires an > argument. If you omit the path argument you get the following:
Sorry, I disagree. It is ambiguous because you are not able to understand if there is an error of missing parameters. If exist a filesystem called 's' # btrfs fi bal s could be: 1) an error (missing parameters for the command "btrfs filesystem balance start/status" ) 2) the starting of the balance of the filesystem 's' > > btrfs-progs-new$ ./btrfs fi balance > usage: btrfs [filesystem] balance [<command>] [options] <path> > > btrfs [filesystem] balance start [options] <path> > Balance chunks across the devices > btrfs [filesystem] balance pause <path> > Pause running balance > btrfs [filesystem] balance cancel <path> > Cancel running or paused balance > btrfs [filesystem] balance resume <path> > Resume interrupted balance > btrfs [filesystem] balance status [-v] <path> > Show status of running or paused balance > > 'btrfs filesystem balance' command is deprecated, please use > 'btrfs balance start' command instead. > > which clearly indicates that <command> is optional. Finally, if you type > > btrfs fi balance s /mnt > > (which is ambiguous because 's' could mean 'start' or 'status') you get > the following: > > btrfs-progs-new$ ./btrfs fi balance s /mnt > btrfs filesystem balance: ambiguous token 's' > > Did you mean one of these ? > start > status > > Pretty clear to me. > > > To me I prefer to add another family of command called > > > > btrfs balance * > > > > and to leave > > > > btrfs filesystem balance > > > > as synonymus of > > > > btrfs balance start > > I discussed this with Chris and we agreed that it will be confusing if > 'btrfs filesystem balance' is different from 'btrfs balance'. > > > This was discussed several years ago. Allowing the user to abbreviate the > > commands fights with the ability to have different length of commands , > > when an option could beconfused with a command (s vs start/stop....). > > It generally does, but in this particular case (where every subcommand > in the group requires at least one argument) it does not. > > Thanks, > > Ilya > -- > To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in > the body of a message to [email protected] > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
