[Bash-completion-devel] Bug#717462: bash-completion: all kinds of issues with the lvm2 completitions

Christoph Anton Mitterer calestyo at scientia.net
Sun Jul 21 02:17:29 UTC 2013


Package: bash-completion
Version: 1:2.0-1
Severity: normal
Tags: upstream


1) pvcreate and vgcreate should complete to existin PV / VG names.
It's usually not intended to re-create (overwrite) already existing
PV / VG names, actually it even risks data loss if one accidentally completes
to that and has --force given.
Rather let it at the plain normal bash file completion here.

2) _units() and _sizes() functions
The strings used there seems to differ from what lvm currently supports
bBsSkKmMgGtTpPeE
also, not all parameters seem to support all of these units, e.g.
--poolmetadatasize has only bBsSkKmMgG (or perhaps that's a documentation
error).

3) Direct use of programs
The completions seem to make direct use of some programs (e.g. vgscan, etc.)
Please use lvm <command> in all these cases instead, since the "shortcuts"
may not be present

4) Many options to the different commands and attributes to vgs/pvs/lvs seem
to be missing.

5) Big issue: in _volumegroups(), _physicalvolumes(), _logicalvolumes() you
use vgscan, lvscan, pvscan to find out the names.
This should not be done, as it also modifies the cache, which may be undesired.
Why not simply using the faster, more easy to parse:
pvs -o pv_name
vgs -o vg_name
lvs -o lv_name
?

6) The current patterns in _volumegroups(), _physicalvolumes(), _logicalvolumes()
seem to be buggy anyway.
E.g. the one for the LVs doesn’t match LVs which don't belong to a VG.
And when doing e.g. pvremove, these are the most likely ones, one want to
complete to.
So I gess one needs to functions, which reports assigned and unassigned PVs
and those are used depending on the command.

Cheers,
Chris.



More information about the Bash-completion-devel mailing list