Bug 1938168

Summary: GUI dies with backtrace "TypeError: unknown type (null)"
Product: Red Hat Enterprise Linux 8 Reporter: Renaud Métrich <rmetrich>
Component: anacondaAssignee: Radek Vykydal <rvykydal>
Status: CLOSED ERRATA QA Contact: Release Test Team <release-test-team-automation>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 8.3CC: anaconda-maint-list, jkonecny, jstodola, lmiksik, pgm-rhel-tools, pratshar, pzatko, rvykydal, sbarcomb, thashimo, zveleba
Target Milestone: rcKeywords: Triaged
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: anaconda-33.16.4.14-1.el8 Doc Type: Bug Fix
Doc Text:
Cause: If network was activated shortly before visiting Time & Date spoke and opening of the dialog for NTP servers configuration in the spoke, Anaconda performed NTP status check on an invalid internal object. f. Consequence: Installation crashed with a traceback. Fix: The check of object created when entering the Time & Date spoke and invalidated by opening the dialog for NTP server was made more robust. Result: Anaconda no more crashes in case of opening of NTP servers configuration dialog shortly after network activation.
Story Points: ---
Clone Of:
: 1940472 (view as bug list) Environment:
Last Closed: 2021-05-18 15:47:16 UTC Type: Bug
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: 1940472, 1944724    
Attachments:
Description Flags
Crash in Subscription Manager spoke when proxy is badly configured none

Description Renaud Métrich 2021-03-12 10:57:01 UTC
Description of problem:

A customer trying to install RHV4.4-20210202.0 (based on RHEL8.3) cannot install using the graphical interface because he gets the following backtrace shortly after configuring its NTP servers:
-------- 8< ---------------- 8< ---------------- 8< ---------------- 8< --------
The following was filed automatically by anaconda:
anaconda 33.16.3.26 exception report
Traceback (most recent call first):
  File "/usr/lib64/python3.6/site-packages/gi/overrides/Gtk.py", line 1099, in __getitem__
    return self.model.get_value(self.iter, key)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/ui/gui/spokes/datetime_spoke.py", line 326, in _set_server_ok_nok
    actual_hostname = self._serversStore[itr][SERVER_HOSTNAME]
  File "/usr/lib64/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib64/python3.6/site-packages/pyanaconda/threading.py", line 280, in run
    threading.Thread.run(self)
TypeError: unknown type (null)
-------- 8< ---------------- 8< ---------------- 8< ---------------- 8< --------


Version-Release number of selected component (if applicable):

33.16.3.26-1


How reproducible:

Always on customer system, didn't manager on my lab systems

Steps to Reproduce:

Comment 13 Jan Stodola 2021-03-17 15:48:56 UTC
Also see bug 1917797, which has the same traceback and a reproducer that was confirmed to be working.

Comment 17 Radek Vykydal 2021-03-18 18:29:43 UTC
Thank you for the reproducer Jan, setting dev_ack+.

Comment 18 Radek Vykydal 2021-03-19 15:53:39 UTC
https://github.com/rhinstaller/anaconda/pull/3252

Comment 20 Radek Vykydal 2021-03-22 09:00:41 UTC
Updates image for RHEL 8.3 containing the fix from comment #18:
https://rvykydal.fedorapeople.org/updates.rhbz1938168.img

It is possible that fetching the image from network using boot option
inst.updates=https://rvykydal.fedorapeople.org/updates.rhbz1938168.img
can spoil the reproducer (configuring network in early stage / initramfs) so using hd: or cdrom: variants of inst.updates may be needed:
https://anaconda-installer.readthedocs.io/en/latest/boot-options.html#inst-updates

Comment 21 Renaud Métrich 2021-03-22 09:56:57 UTC
Hi Radek,

With the update image, I can still reproduce the crash on the Subscription Manager spoke.
I guess only the NTP panel is fixed here.

Comment 22 Radek Vykydal 2021-03-22 10:18:21 UTC
Could you please attach the logs from the crash on the Subscription Manager spoke ?

Comment 23 Renaud Métrich 2021-03-22 10:56:33 UTC
Created attachment 1765209 [details]
Crash in Subscription Manager spoke when proxy is badly configured

Comment 24 Jan Stodola 2021-03-22 11:13:48 UTC
Hi Renaud,
the traceback from comment 23 is a different issue than the NTP problem originally reported in this bug. Can you please create a new bug for it? Please, also describe the reproducer there.
This bug will track only the initial problem with NTP.
Thank you for understanding.

Comment 25 Renaud Métrich 2021-03-22 12:16:11 UTC
OK I filed BZ #1941578

Comment 26 Jan Stodola 2021-03-23 10:17:36 UTC
*** Bug 1917797 has been marked as a duplicate of this bug. ***

Comment 30 Zdenek Veleba 2021-03-24 14:42:54 UTC
Switching to Verified - fix is present in RHEL-8.4.0-20210324.n.0

Comment 31 Radek Vykydal 2021-03-29 14:56:57 UTC
I've updated the Doc Text field.

Adding more detailed info here in a comment, hope it helps to understand the cause of the issue:

There are two checks of the list of NTP servers, each run in a separate thread (ie concurrently):
1) one when entering the spoke
2) another one when entering NTP servers configuration dialog in the spoke

The 2) invalidates some objects checked in 1) (it clears the list used in 1)) so if it happens before 1) is finished there is the crash. And the condition in which the check 1) takes so long that it collides with the check initiated by 2) is that network is activated only shortly before the NTP configuration (ie not at the early stage of installation) or takes too long.

(More technical explanation is in the PR https://github.com/rhinstaller/anaconda/pull/3252 for the fix.)

Comment 32 Jiri Konecny 2021-04-15 16:19:20 UTC
*** Bug 1940472 has been marked as a duplicate of this bug. ***

Comment 34 errata-xmlrpc 2021-05-18 15:47:16 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (anaconda bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:1844