Bug 967527

Summary: clearpart --none crashes anaconda if not enough space available
Product: [Fedora] Fedora Reporter: Vojtěch Boček <vbocek>
Component: anacondaAssignee: Chris Lumens <clumens>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 19CC: ajsfedora, awilliam, dshea, g.kaviyarasu, jonathan, kparal, mkolman, robatino, sbueno, vanmeeuwen+fedora
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: abrt_hash:53713078d0bfc18e26001752793a9cdbd3bc2ae5b051a966f3af1ce517e3aad6 AcceptedFreezeException RejectedBlocker
Fixed In Version: pykickstart-1.99.32-1.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-06-18 06:16:58 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 834091    
Attachments:
Description Flags
File: anaconda-tb
none
File: anaconda.log
none
File: backtrace
none
File: environ
none
File: ifcfg.log
none
File: ks.cfg
none
File: lsblk_output
none
File: nmcli_dev_list
none
File: packaging.log
none
File: program.log
none
File: storage.log
none
File: syslog none

Description Vojtěch Boček 2013-05-27 11:03:11 UTC
Description of problem:
I did default installation Beta RC4 from x86_64 netinst.iso, with everything left at default values. This installation generated kickstart file, which I tried to use in ks=... cmdline argument. With this kickstart file, Anaconda crashes a while after it shows main GUI.
The following was filed automatically by anaconda:
anaconda 19.30-1 exception report
Traceback (most recent call first):
  File "/usr/lib64/python2.7/site-packages/pyanaconda/threads.py", line 52, in add
    raise KeyError
  File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/storage.py", line 383, in execute
    target=self._doExecute))
  File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/hubs/__init__.py", line 335, in _update_spokes
    spoke.execute()
  File "/usr/lib64/python2.7/site-packages/gi/overrides/GLib.py", line 629, in <lambda>
    return (lambda data: callback(*data), user_data)
KeyError

Version-Release number of selected component:
anaconda-19.30-1

Additional info:
reporter:       libreport-2.1.4
cmdline:        /usr/bin/python  /sbin/anaconda
cmdline_file:   initrd=initrd.img inst.stage2=hd:LABEL=Fedora\x2019-Beta\x20x86_64 quiet ks=http://83.240.110.90/gen.ks BOOT_IMAGE=vmlinuz 
executable:     /sbin/anaconda
hashmarkername: anaconda
kernel:         3.9.2-301.fc19.x86_64
product:        Fedora
release:        Cannot get release name.
type:           anaconda
version:        19-Beta

Truncated backtrace:
Traceback (most recent call last):
  File "/usr/lib64/python2.7/site-packages/gi/overrides/GLib.py", line 629, in <lambda>
    return (lambda data: callback(*data), user_data)
  File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/hubs/__init__.py", line 335, in _update_spokes
    spoke.execute()
  File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/storage.py", line 383, in execute
    target=self._doExecute))
  File "/usr/lib64/python2.7/site-packages/pyanaconda/threads.py", line 52, in add
    raise KeyError
KeyError

Comment 1 Vojtěch Boček 2013-05-27 11:03:18 UTC
Created attachment 753568 [details]
File: anaconda-tb

Comment 2 Vojtěch Boček 2013-05-27 11:03:22 UTC
Created attachment 753569 [details]
File: anaconda.log

Comment 3 Vojtěch Boček 2013-05-27 11:03:26 UTC
Created attachment 753570 [details]
File: backtrace

Comment 4 Vojtěch Boček 2013-05-27 11:03:30 UTC
Created attachment 753571 [details]
File: environ

Comment 5 Vojtěch Boček 2013-05-27 11:03:34 UTC
Created attachment 753572 [details]
File: ifcfg.log

Comment 6 Vojtěch Boček 2013-05-27 11:03:38 UTC
Created attachment 753573 [details]
File: ks.cfg

Comment 7 Vojtěch Boček 2013-05-27 11:03:42 UTC
Created attachment 753574 [details]
File: lsblk_output

Comment 8 Vojtěch Boček 2013-05-27 11:03:46 UTC
Created attachment 753575 [details]
File: nmcli_dev_list

Comment 9 Vojtěch Boček 2013-05-27 11:03:50 UTC
Created attachment 753576 [details]
File: packaging.log

Comment 10 Vojtěch Boček 2013-05-27 11:03:54 UTC
Created attachment 753577 [details]
File: program.log

Comment 11 Vojtěch Boček 2013-05-27 11:03:59 UTC
Created attachment 753578 [details]
File: storage.log

Comment 12 Vojtěch Boček 2013-05-27 11:04:03 UTC
Created attachment 753579 [details]
File: syslog

Comment 13 Kamil Páral 2013-05-27 11:06:41 UTC
Proposing as a Final blocker:
"The installer must be able to complete a scripted installation which duplicates the default interactive installation as closely as possible. "
http://fedoraproject.org/wiki/Fedora_19_Beta_Release_Criteria#Scripted_installation

Comment 14 Vojtěch Boček 2013-05-27 11:41:01 UTC
This appears to be a race condition - it does not crash every time, I managed to reproduce it 3 out of 5 times.

Also, pleas note that I forgot to "clearpart --none..." command in kickstart file to "clearpart --all...". After changing to --all, it no longer crashes, but disk setup is apparently bugged instead - it succeeds about 1 of 5 times, and fails at "No disks selected" the rest of the time.

Comment 15 Adam Williamson 2013-05-29 18:02:12 UTC
Discussed at 2013-05-29 blocker review meeting: http://meetbot.fedoraproject.org/fedora-blocker-review/2013-05-29/f19final-blocker-review-1.2013-05-29-16.02.log.txt . We agreed to punt the decision on this one: we'd at least like to know i) does it crash with 'clearpart --none' and an empty disk, and ii) does it complete an install with 'clearpart --all' and an empty disk...

Comment 16 Adam Williamson 2013-05-29 18:04:35 UTC
Oh, but we accepted it as a freeze exception at least - at minimum it seems to merit that, crashers in fairly 'normal' kickstart runs are bad.

Comment 17 Vojtěch Boček 2013-05-30 08:34:05 UTC
>> i) does it crash with 'clearpart --none' and an empty disk
No, but in 1 of 8 tries, the "Installation destination" section said "Automatic partitioning selected" instead of "No disks selected".

>> ii) does it complete an install with 'clearpart --all' and an empty disk...
No, results are the same as with --none: it stops with "No disks selected" most of the time, but at the fourth try it installed properly.

Comment 18 Adam Williamson 2013-05-30 19:38:28 UTC
We discussed this again at the meeting today. We still didn't come to a definite conclusion but there definitely appear to be worrying issues here. Kamil is going to split this bug into multiple bugs as the crash with clearpart --none and the failure to correctly configure storage with clearpart --all seem to be different issues.

tflink and kparal were able to reproduce the failure to complete storage config properly sometimes with http://www.happyassassin.net/ks/967527.ks (based on the ks in the report), I wasn't: I did five tries and it worked each time.

Comment 19 Kamil Páral 2013-05-31 08:22:20 UTC
Let's use this bug for the original crash with clearpart --none. I moved the race condition with clearpart --all into bug 969327.

Comment 20 Adam Williamson 2013-06-03 16:25:17 UTC
Discussed at 2013-06-03 blocker review meeting: http://meetbot.fedoraproject.org/fedora-blocker-review/2013-06-03/f19final-blocker-review-2.2013-06-03-16.00.log.txt . As the other case has been split off, this one is rejected as a blocker but accepted as a freeze exception issue. Outright crashes are bad and worth fixing, but we believe this one is hit only when using an invalid config: passing 'clearpart --none' when there is not sufficient free space for installation. Even if it didn't crash, the install wouldn't proceed until you entered some kind of valid disk configuration interactively - your kickstart configuration would not be used. So this doesn't seem to be blocker worthy. The 'workaround' is to actually use a valid configuration in your kickstart (either enough disk space available for install and 'clearpart --none', or specify some kind of space freeing operation).

Comment 21 Fedora Update System 2013-06-14 16:45:39 UTC
pykickstart-1.99.32-1.fc19,python-blivet-0.16-1.fc19,anaconda-19.30.6-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/pykickstart-1.99.32-1.fc19,python-blivet-0.16-1.fc19,anaconda-19.30.6-1.fc19

Comment 22 Fedora Update System 2013-06-15 17:07:16 UTC
Package anaconda-19.30.7-1.fc19, pykickstart-1.99.32-1.fc19, python-blivet-0.16-1.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing anaconda-19.30.7-1.fc19 pykickstart-1.99.32-1.fc19 python-blivet-0.16-1.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-10913/pykickstart-1.99.32-1.fc19,python-blivet-0.16-1.fc19,anaconda-19.30.7-1.fc19
then log in and leave karma (feedback).

Comment 23 Fedora Update System 2013-06-18 06:16:58 UTC
pykickstart-1.99.32-1.fc19, python-blivet-0.16-1.fc19, anaconda-19.30.8-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 24 Kamil Páral 2013-06-18 10:40:54 UTC
Verified fixed with F19 TC5 DVD.