Bug 432362 - Traceback from isys.py with dmraid
Traceback from isys.py with dmraid
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: anaconda (Show other bugs)
rawhide
x86_64 Linux
low Severity high
: ---
: ---
Assigned To: Peter Jones
Fedora Extras Quality Assurance
:
: 437162 439367 (view as bug list)
Depends On:
Blocks: F9Blocker
  Show dependency treegraph
 
Reported: 2008-02-11 11:02 EST by Andy Wingo
Modified: 2013-01-09 23:34 EST (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-04-08 13:47:29 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Anaconda crash traceback (17.42 KB, text/plain)
2008-03-25 22:57 EDT, Dawid Zamirski
no flags Details
Traceback in anaconda-11.4.0.61-1 (17.44 KB, text/plain)
2008-03-30 01:48 EDT, Dawid Zamirski
no flags Details
Anaconda debug log (309.03 KB, text/plain)
2008-04-02 05:59 EDT, Daniel Rindt
no flags Details

  None (edit)
Description Andy Wingo 2008-02-11 11:02:13 EST
Right after choosing my keyboard (US english), anaconda had a fatal error. PDB
says that isys.py:494 there is an error that RaidSet instances have no __getitem__.

Fatal, can't go on any farther than that :(
Comment 1 Henk Spaan 2008-02-20 10:56:37 EST
I got the same thing, but I wrote down the stacktrace (as I was not able to
upload it to a remote site).

The problem occurs when a RaidSet is present as can be seen in the stacktrace (I
copied another stacktrace and filled it out).

I got a fakeraid controller, ICH9R, but I guess the bug is not chipset specific.  

The stacktrace:
anaconda 11.4.0.28 exception report
Traceback (most recent call first):
  File "/usr/lib/anaconda/isys.py", line 494, in hardDriveDict
    ret[item] = dict[item]['description']
  File "/usr/lib/anaconda/partedUtils.py", line 841, in driveList
    drives = isys.hardDriveDict().keys()
  File "/usr/lib/anaconda/partedUtils.py", line 615, in startDmRaid
    (self.driveList(), ))
...

AttributeError: RaidSet instance has no attribute '__getitem__'

Local variables in innermost frame:
item: mapper/isw_cjabddijaa_Spin500Raid1V1
dict: {'mapper/isw_cjabddijaa_Spin500Raid1V1' : <block.device.RaidSet instance
at 0x...., [second raid set ...], [dbus items ...]>
Comment 2 Henk Spaan 2008-02-21 03:02:07 EST
CC me
Comment 3 Chris Adams 2008-03-22 15:45:15 EDT
*** Bug 437162 has been marked as a duplicate of this bug. ***
Comment 4 Chris Adams 2008-03-23 23:13:54 EDT
Digging around a little (and maybe I'm missing something), but I don't see that
the description set in hardDriveDict is used anywhere.  I changed it like:

-        ret[item] = dict[item]['description']
+       try:
+           ret[item] = dict[item]['description']
+       except:
+           ret[item] = "no description"

and anaconda appeared to find the dmraid drives okay.

The description is copied in partedUtils.py drivesByName, but I don't see that
it is called anywhere.  If the description really isn't used, maybe just drop
trying to copy it?
Comment 5 Dawid Zamirski 2008-03-25 22:57:10 EDT
Created attachment 299091 [details]
Anaconda crash traceback

I've run on the same problem today when trying to install Fedora 9 Beta. I
tried installing from both full install DVD and Live DVD.
Comment 6 Jeremy Katz 2008-03-27 15:59:14 EDT
Fixed in git
Comment 7 Jeremy Katz 2008-03-28 09:57:03 EDT
*** Bug 439367 has been marked as a duplicate of this bug. ***
Comment 8 Dawid Zamirski 2008-03-30 01:48:03 EDT
Created attachment 299612 [details]
Traceback in anaconda-11.4.0.61-1

Jeremy,

I'm still getting the traceback (attached). I've tested with the released
rawhide 20080328 snaphot and also reproduced with Fedora 9 Beta Live after
updating anacona via yum to version 11.4.0.61-1 that's available in rawhide as
of now.
Comment 9 Chris Adams 2008-03-30 14:57:25 EDT
The change in git adds an empty description.  However, the problem isn't a
missing description; it is that a RaidSet object doesn't have __getitem__ but
hardDriveDict() in isys.py tries to access it that way.  Either the RaidSet
object (I believe from python-pyblock) needs to be updated to add __getitem__ or
isys.py needs to be changed to not try to access it.
Comment 10 Jesse Keating 2008-04-01 17:25:54 EDT
Confirmed, this still happens in rawhide 04/01.  Going to get some attention on
it since we have a box in the office that can reproduce.
Comment 11 Daniel Rindt 2008-04-02 05:59:39 EDT
Created attachment 300036 [details]
Anaconda debug log
Comment 12 Jesse Keating 2008-04-02 07:48:25 EDT
Changing the subject to reflect what the bug actually is.  This should be fixed
with the work Peter Jones did last night and was built into anaconda this
morning.  It missed rawhide though, so will try later.
Comment 13 Jesse Keating 2008-04-08 13:47:29 EDT
This is fixed.  dmraid installs now boot.

Note You need to log in before you can comment on or make changes to this bug.