Description of problem: tried to resize a dynamic disk. "shrink" should not be avaiable for this disks type. And anaconda should present a normal error message instead of crashing. Version-Release number of selected component: anaconda-18.19 Additional info: libreport version: 2.0.14 cmdline: /usr/bin/python /sbin/anaconda kernel: 3.6.1-1.fc18.x86_64 description: :The following was filed automatically by anaconda: :anaconda 18.19 exception report :Traceback (most recent call first): : File "/usr/lib64/python2.7/site-packages/parted/disk.py", line 309, in setPartitionGeometry : start, end) : File "/usr/lib64/python2.7/site-packages/parted/decorators.py", line 32, in new : ret = fn(*args, **kwds) : File "/usr/lib64/python2.7/site-packages/pyanaconda/storage/devices.py", line 1230, in _setTargetSize : start=geometry.start, end=geometry.end) : File "/usr/lib64/python2.7/site-packages/pyanaconda/storage/devices.py", line 599, in <lambda> : lambda s, v: s._setTargetSize(v), : File "/usr/lib64/python2.7/site-packages/pyanaconda/storage/deviceaction.py", line 367, in __init__ : self.device.targetSize = newsize : File "/usr/lib64/python2.7/site-packages/pyanaconda/storage/__init__.py", line 1261, in resizeDevice : self.devicetree.registerAction(action_class(device, new_size)) : File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/lib/resize.py", line 239, in _scheduleActions : self.storage.resizeDevice(device, device.minSize) :PartitionException: Parted can't resize partitions managed by Windows Dynamic Disk.
Created attachment 633352 [details] File: anaconda-tb
Created attachment 633353 [details] File: product
Created attachment 633354 [details] File: type
Created attachment 633355 [details] File: ifcfg.log
Created attachment 633356 [details] File: storage.log
Created attachment 633357 [details] File: version
Created attachment 633358 [details] File: environ
Created attachment 633359 [details] File: anaconda.log
Created attachment 633360 [details] File: syslog
Created attachment 633361 [details] File: hashmarkername
Created attachment 633362 [details] File: packaging.log
Created attachment 633363 [details] File: cmdline_file
Created attachment 633364 [details] File: release
Created attachment 633365 [details] File: program.log
We can't really remove "Shrink" from those drop-downs on a per-device basis. At least, not without making a giant mess. For things that do not support resizing, Shrink is delete.
I can understand the issue, but please remember that for people that are not aware of it, they will still think: preserve = preserve delete = delete shrink != delete which is the meaning of the words. So, if shrink cannot be used and the word 'shrink' will mean 'delete' (for which there is already an option), it is imperative for anaconda to add another description/warning/whatever that explains what will happen. Failing to do so will have unexpected consequences, and most likely bug-reports will be opened post-release. (and some of the reporters might be angry).
it still is possble to try to shrink a dynamic disk Package: anaconda-18.24 OS Release: Fedora release 18-Beta-TC7
Until we write our own cell renderer, we are not going to be able to change the wording options in this dialog.
I tried smoke5 (anaconda 18.37) and the issue worsened, now the guest REBOOTS when i hit 'reclaim space'. (there is an 'unknown error' but there is no time to even read the box. Is there any debug parameter to disable reboot-on-error?
Using the parameter 'nokill' i was able to confirm that the 'unknown error' is indeed the same (some line numbers differ) as before. F18-TC2: anaconda 18.37.2 exception report Traceback (most recent call first): File "/usr/lib64/python2.7/site-packages/parted/disk.py", line 309, in setPartitionGeometry start, end) File "/usr/lib64/python2.7/site-packages/parted/decorators.py", line 32, in new ret = fn(*args, **kwds) File "/usr/lib64/python2.7/site-packages/pyanaconda/storage/devices.py", line 1233, in _setTargetSize start=geometry.start, end=geometry.end) File "/usr/lib64/python2.7/site-packages/pyanaconda/storage/devices.py", line 602, in <lambda> lambda s, v: s._setTargetSize(v), File "/usr/lib64/python2.7/site-packages/pyanaconda/storage/deviceaction.py", line 367, in __init__ self.device.targetSize = newsize File "/usr/lib64/python2.7/site-packages/pyanaconda/storage/__init__.py", line 1239, in resizeDevice self.devicetree.registerAction(action_class(device, new_size)) File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/lib/resize.py", line 303, in _scheduleActions self.storage.resizeDevice(device, device.minSize) PartitionException: Parted can't resize partitions managed by Windows Dynamic Disk. This is the partition table: Disk /dev/sdb: 6501 MB, 6501171200 bytes, 12697600 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00067592 Device Boot Start End Blocks Id System /dev/sdb1 63 12691349 6345643+ 42 SFS What about this: Treating all ntfs file-systems found that to not belong to any Partition ID 07 (for msdos disk-label at least) in a similar way to an unknown file-system: * Graying out the 'shrink' for such 'dynamic' disks. * Only allowing to preserve or delete.
Tested with TC4 (18.37.8), in AUTOMATIC PARTITIONING, the only options for ntfs dynamic disks is 'preserve' and 'delete' which looks good.