Bug 1378156

Summary: TypeError: Must be number, not str
Product: [Fedora] Fedora Reporter: Adam Williamson <awilliam>
Component: python-blivetAssignee: Blivet Maintenance Team <blivet-maint-list>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: anaconda-maint-list, blivet-maint-list, g.kaviyarasu, jonathan, mkolman, pschindl, robatino, vanmeeuwen+fedora
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: AcceptedBlocker abrt_hash:7181e7a816d4d63056b967f4b436dc0351459e0ceb546bebb7265edbe05fbdac;
Fixed In Version: python-blivet-2.1.6-3.fc25 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-15 13:32:47 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 1277289    
Description Flags
File: anaconda-tb
File: anaconda.log
File: dnf.librepo.log
File: environ
File: hawkey.log
File: lsblk_output
File: nmcli_dev_list
File: os_info
File: program.log
File: storage.log
File: syslog
File: ifcfg.log
File: packaging.log none

Description Adam Williamson 2016-09-21 16:08:54 UTC
Description of problem:
Crash happens during iSCSI install with Fedora-Rawhide-20160921.n.0. See https://openqa.fedoraproject.org/tests/35244

Version-Release number of selected component:

The following was filed automatically by anaconda:
anaconda 26.3-1 exception report
Traceback (most recent call first):
  File "/usr/lib64/python3.5/site-packages/gi/overrides/GLib.py", line 126, in _create
    v = constructor(args[0])
  File "/usr/lib64/python3.5/site-packages/gi/overrides/GLib.py", line 167, in _create_tuple
    (v, format, _) = self._create(format, args[0][i:])
  File "/usr/lib64/python3.5/site-packages/gi/overrides/GLib.py", line 132, in _create
    return self._create_tuple(format, args)
  File "/usr/lib64/python3.5/site-packages/gi/overrides/GLib.py", line 243, in __new__
    (v, rest_format, _) = creator._create(format_string, [value])
  File "/usr/lib/python3.5/site-packages/blivet/iscsi.py", line 372, in discover
    args = GLib.Variant("(sqa{sv})", (ipaddr, port, auth_info))
  File "/usr/lib64/python3.5/site-packages/pyanaconda/ui/gui/spokes/advstorage/iscsi.py", line 221, in _discover
  File "/usr/lib64/python3.5/threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib64/python3.5/site-packages/pyanaconda/threads.py", line 251, in run
    threading.Thread.run(self, *args, **kwargs)
TypeError: Must be number, not str

Additional info:
addons:         com_redhat_kdump, com_redhat_docker
cmdline:        /usr/bin/python3  /sbin/anaconda
cmdline_file:   BOOT_IMAGE=vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=Fedora-S-dvd-x86_64-rawh quiet
executable:     /sbin/anaconda
hashmarkername: anaconda
kernel:         4.8.0-0.rc7.git1.1.fc26.x86_64
product:        Fedora
release:        Cannot get release name.
type:           anaconda
version:        rawhide

Comment 1 Adam Williamson 2016-09-21 16:08:59 UTC
Created attachment 1203379 [details]
File: anaconda-tb

Comment 2 Adam Williamson 2016-09-21 16:09:00 UTC
Created attachment 1203380 [details]
File: anaconda.log

Comment 3 Adam Williamson 2016-09-21 16:09:02 UTC
Created attachment 1203381 [details]
File: dnf.librepo.log

Comment 4 Adam Williamson 2016-09-21 16:09:03 UTC
Created attachment 1203382 [details]
File: environ

Comment 5 Adam Williamson 2016-09-21 16:09:04 UTC
Created attachment 1203383 [details]
File: hawkey.log

Comment 6 Adam Williamson 2016-09-21 16:09:05 UTC
Created attachment 1203384 [details]
File: lsblk_output

Comment 7 Adam Williamson 2016-09-21 16:09:06 UTC
Created attachment 1203385 [details]
File: nmcli_dev_list

Comment 8 Adam Williamson 2016-09-21 16:09:08 UTC
Created attachment 1203386 [details]
File: os_info

Comment 9 Adam Williamson 2016-09-21 16:09:09 UTC
Created attachment 1203387 [details]
File: program.log

Comment 10 Adam Williamson 2016-09-21 16:09:10 UTC
Created attachment 1203388 [details]
File: storage.log

Comment 11 Adam Williamson 2016-09-21 16:09:11 UTC
Created attachment 1203389 [details]
File: syslog

Comment 12 Adam Williamson 2016-09-21 16:09:12 UTC
Created attachment 1203390 [details]
File: ifcfg.log

Comment 13 Adam Williamson 2016-09-21 16:09:14 UTC
Created attachment 1203391 [details]
File: packaging.log

Comment 14 Adam Williamson 2016-09-21 16:18:14 UTC
This is the latest crash we get in *Rawhide* iSCSI testing, I guess others have been fixed now (or this is a new one that comes before them, I'm losing track). Current F25 is hitting https://bugzilla.redhat.com/show_bug.cgi?id=1378159 .

Proposing as an F26 Final blocker, per criterion "The installer must be able to detect (if possible) and install to supported network-attached storage devices."

Comment 15 Adam Williamson 2016-09-28 22:46:41 UTC
As of Fedora-25-20160928.n.0 , Fedora 25 is hitting this too:


So proposing as 25 Final blocker.

Comment 16 Petr Schindler 2016-10-03 17:07:18 UTC
Discussed at 2016-10-03 blocker review meeting: [1]. 

This bug was accepted as Final blocker: This bug violates "The installer must be able to detect (if possible) and install to supported network-attached storage devices."

[1] https://meetbot-raw.fedoraproject.org/fedora-blocker-review/2016-10-03/

Comment 17 Adam Williamson 2016-10-27 00:14:57 UTC
So this is really kind of a follow-on to https://bugzilla.redhat.com/show_bug.cgi?id=1375712 ; that fixed the syntax of a GVariant tuple constructor, but it didn't fix the fact that one of the values we put in the tuple isn't the right type. I've got a fix for that; I'm now working through all the other things that turn out to be broken *after* that. PRs for blivet and anaconda pending.

Comment 18 Adam Williamson 2016-10-27 07:54:14 UTC
All these PRs, together, fix the openQA iSCSI install test for me:


I haven't tested that authentication works yet, though, as the openQA test doesn't use it. I can try testing that tomorrow, I'll have to look up how to set it up on the server end.

The fix for this particular bug is the first commit in https://github.com/rhinstaller/blivet/pull/518 , "Use correct type for port in GVariant tuple"; the other patches fix subsequent issues that appear after this bug is fixed.

Comment 19 Adam Williamson 2016-10-27 23:16:30 UTC
One more patch is needed to ensure anaconda populates `/var/lib/iscsi` on the installed system, as intended:


https://www.happyassassin.net/updates/1378156.12.img is an updates.img with all the patches applied. I've tested both non-authed and authed iSCSI installs with that updates image, and they work fine.

Comment 20 Fedora Update System 2016-11-07 19:29:19 UTC
python-blivet-2.1.6-3.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2016-91844f4982

Comment 21 Adam Williamson 2016-11-07 19:37:58 UTC
For the record, the blivet fixes alone should suffice to fix non-authenticated iSCSI installs. Authenticated installs also require anaconda-25.20.7-1.fc25 .

Comment 22 Adam Williamson 2016-11-09 00:06:02 UTC
Verified the fix for this with a test installer image. Will re-confirm that all iSCSI issues are fixed with the RC.

Comment 23 Fedora Update System 2016-11-09 02:26:09 UTC
anaconda-25.20.8-1.fc25, python-blivet-2.1.6-3.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-91844f4982

Comment 24 Adam Williamson 2016-11-09 09:06:41 UTC
back to verified. damnit, bodhi, stop this.

Comment 25 Fedora Update System 2016-11-15 13:32:47 UTC
anaconda-25.20.8-1.fc25, python-blivet-2.1.6-3.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.