Red Hat Bugzilla – Bug 893026
Installer crashes after selecting "Malay (Malaysia)" language
Last modified: 2013-05-10 02:00:26 EDT
Description of problem:
I tried to reproduce bug 891489. This happened after selecting Malay (Malaysia) language and enabling the checkbox.
The following was filed automatically by anaconda:
anaconda 18.37.11 exception report
Traceback (most recent call first):
File "/usr/lib64/python2.7/site-packages/pyanaconda/keyboard.py", line 482, in <genexpr>
if layout in country_layouts)
File "/usr/lib64/python2.7/site-packages/pyanaconda/keyboard.py", line 485, in get_default_lang_country_layout
File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/welcome.py", line 97, in _set_keyboard_defaults
File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/welcome.py", line 70, in apply
File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/__init__.py", line 72, in _on_continue_clicked
File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/welcome.py", line 287, in _on_continue_clicked
File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/__init__.py", line 77, in <lambda>
self.window.connect("continue-clicked", lambda *args: self._on_continue_clicked(cb))
TypeError: argument of type 'NoneType' is not iterable
cmdline: /usr/bin/python /sbin/anaconda
cmdline_file: initrd=initrd.img inst.stage2=hd:LABEL=Fedora\x2018\x20x86_64 quiet BOOT_IMAGE=vmlinuz
other involved packages:
release: Cannot get release name.
Created attachment 674824 [details]
Created attachment 674825 [details]
Created attachment 674826 [details]
Created attachment 674827 [details]
Created attachment 674828 [details]
Created attachment 674829 [details]
Created attachment 674830 [details]
Created attachment 674831 [details]
Proposing as blocker. Language selection crashes installer.
Based on clumens comment on #irc the problem is in undefined keyboards for Malayam but also code should react by returning  instead of None.
Note, on this one, we don't want to be picking the 'Malayalam" keyboard layout for the "Malay (Malaysia)" language. Malayalam is an Indian language, and despite the superficially similar name, has nothing to do with Malay.
I guess I'd say that if we need a new anaconda for any other reason it may be worth trying to fix this: otherwise I'd incline to just signing off on RC2 and documenting this. It's kinda a crappy bug but it only affects one (probably not that heavily used) language, and there's a very obvious workaround (don't check the box). So my inclination would be -1/+/-0/CommonBugs.
my inclination is +1 blocker, just because we hit this in one rare case, its quite possible that it hits other languages/layouts also.
(In reply to comment #13)
> my inclination is +1 blocker, just because we hit this in one rare case,
> its quite possible that it hits other languages/layouts also.
Dennis - if this bug is really caused by the patch for #893026, it seems other languages are really fixed. There's also possibility it was just broken even before. Btw. it should be easy to go through the list and recheck.
It's also trade-off - we could have better support for Catalan, Greek, Spanish, Dutch but in case we would have to revert the patch, as we don't have fix for this one to make RC3 in a reasonable time.
So I'm with Adam - in case we will hit some significant issue, we can try to get fix, otherwise document workaround, -1 blocker, CommonBugs.
But just to be sure, would be great to go through the list and check other languages.
I've just tested every language offered in RC2. The only one that crashes is Malay. No other crashes. A couple of other inaccurate results, but they wouldn't be any better if we fixed this crash or reverted the patch.
I stick with my vote in comment #12. Dennis, does this result change yours?
As much as I'm not crazy about the idea of a language selection crashing, if it's just Malay, I'd be OK with -1/+1/CommonBugs
Do we know how complete the translation was or if it worked before? It'd suck if we had people testing Malay before now only to have it broken at the last minute with no fix available.
there's a perfectly reasonable fix available: just _don't check the box_. the checkbox is a convenience setting, nothing more. It doesn't do the right thing even if we fix it - it gives you the 'Malayalam' keyboard layout, which is not at all what you want if you speak Malay - and if you actually need to use a particular keyboard layout, you can perfectly easily pick it manually. (I'm not sure there even actually is a "Malayasian" layout, I think Malaysian itself is typed in Roman characters, and Chinese-speaking Malaysians use regular Chinese input).
The bug relates only to keyboard layouts. It only happens if you pick Malay (Malaysian) as your language/locale, _and then check the box marked 'Set keyboard to default layout for selected language.'_ If you don't check the box, no crash. All the checkbox does is change the _initial_ state of the Keyboard spoke: whatever you do with the checkbox, you can still go into the spoke and do whatever you like manually. So the bug has no kind of unavoidable consequences.
Given that this affects language *and* Anaconda does crash +1 blocker
(In reply to comment #18)
> Given that this affects language *and* Anaconda does crash +1 blocker
See comment #17 - language & crash alone sounds bad but with the clarification it is not. It's even not the default as far as I understand and affects one "minor" language in non-default state and revert would lead to worst user experience (as we would have to revert NTH probably) for the bigger group of users (Catalan, Greek, Spanish, Dutch at least). Please consider it.
While a crash is normally a blocker, I think this is isolated enough to not block on.
So my inclination would be -1 blocker, +1 NTH, commonbugs it.
Let's leave this for more discussion/input for a few hours while we test RC2, but as things stand, the blocker votes with a 'generous' count are +3 / -5:
dan408 (irc vote)
there's a solid majority for +1 nth (didn't count, but it's comfortable), so marking AcceptedNTH for now - we all at least agree that if anything else comes up to cause a respin, this fix should be included.
So I talked this over with KageSenshi (one of our Malaysian community representatives). Useful details from the discussion:
* He thinks most Malaysian users don't actually use the Malaysian locale/translation, they just pick English
* Malay speakers use a standard U.S. keyboard layout, so they'll probably not be particularly inclined to check the checkbox
His vote was that it should be OK to leave the bug in, so long as we make sure it's documented.
With the votes as they stand (unchanged from above) and the input from KageSenshi, setting to RejectedBlocker for now. This can be revisited if more +1 votes come in.
one more bit of data - the Malay translation was 40% in F16, 21% in F17 and is 7% in F18. So I can see that Malaysian community members wouldn't expect the translation to be worth using.
Adam if its just the one then I guess we can document it. though it seems like it shouldnt be to hard to catch oh user selected malay lets not blow up.
im more 0 to blocker but +1 to NTH and defiantly document.
What is the workaround? and is it really a viable workaround?
dennis: it's not hard to fix at all, chris wrote a fix, I tested it. It works. It's just that if we're rebuilding anaconda, we'll wind up taking other anaconda fixes, and then we've got a new RC with new anaconda and _something_ else will come up...we have to just stop at some point. this doesn't seem enough to warrant a new anaconda, to me.
the workaround is 100% simple and 100% viable: don't check the checkbox. I wrote this at least three times above, but that is really it. Don't check the checkbox. You don't _need_ to check the checkbox. Checking it does nothing to help any Malaysian user of any kind. All we need to document is, hey, if for some reason you're picking the hilariously incomplete Malaysian translation, don't check the checkbox. That's it.
(In reply to comment #21)
I proposed the bug for blocker discussion, but that doesn't mean I'm +1. It just means I suspect that other people can be +1 and it's worth the discussion.
I agree with -1, it makes sense in this case and with all the details you provided. Thanks for that.
Patch that fixes the crash posted to anaconda-patches. I think that getting Malayalam layout for the Malay language is better than the crash. And just to make it clear the crash happens no matter whether the checkbutton is checked or not.
Patch pushed to the master branch (Rawhide). This should be fixed in the next anaconda rawhide build.
"And just to make it clear the crash happens no matter whether the checkbutton is checked or not."
? No it doesn't. I tested that.
Huh. Yes it does. Well, crap. I was _sure_ I tested that. No idea what happened there. Well, poop. The workaround is to install in English, then...
Confirmed this is fixed in 19 Beta TC3.