[Bug 812630] New: yast crashes on updates during installation
https://bugzilla.novell.com/show_bug.cgi?id=812630 https://bugzilla.novell.com/show_bug.cgi?id=812630#c0 Summary: yast crashes on updates during installation Classification: openSUSE Product: openSUSE 12.3 Version: Final Platform: x86-64 OS/Version: SUSE Other Status: NEW Severity: Critical Priority: P5 - None Component: Installation AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: mike.catanzaro@gmail.com QAContact: jsrain@suse.com Found By: --- Blocker: --- Created an attachment (id=532742) --> (http://bugzilla.novell.com/attachment.cgi?id=532742) y2logs User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:19.0) Gecko/20100101 Firefox/19.0 I was installing openSUSE 12.3 (GNOME desktop) from the DVD. I unchecked "automatic configuration" at the beginning and so I had the opportunity to do a system update at the end of the installation. During the update, yast died; I wound up on a tty that said something along the lines of "yast caught signal 15" (I believe that was the number) and then "yast caught signal 1". I powered off my computer manually; when I powered on I was allowed to complete the installation but chose to skip updates this time. I did NOT lose any data; YaST remembered all of my settings and most of the updates had been applied. So +1 for graceful failure, at least. Reproducible: Didn't try y2logs attached! -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c
Xiaolong Li
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c1
Thomas Fehr
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c2
Jiří Suchomel
crash occured in /usr/share/YaST2/clients/online_update_install.yc reassigned to maintainer of yast2-online-update
It's actually PkgCommit call that was done from that ycp code. Ladislav, any idea what went wrong? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c3
Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c4
Ladislav Slezak
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c5
--- Comment #5 from Ladislav Slezak
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c6
Jiří Suchomel
And AFAIK the problem has not been reported for installed system I guess the problem is in the scripts which are executed when the second stage is running, so it is probably somehow related to changes in YaST2-Second-Stage.service file.
... additionally, we've not met this before since we didn't release update for yast2-installation until now. Frederic, seems like those RPM scripts in yast2-installation are wrong... ? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c7
Frederic Crozat
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c8
Jiří Suchomel
Hmm, the systemd macros are running "/usr/bin/systemctl try-restart YaST2-Second-Stage.service YaST2-Firstboot.service" on upgrade, which is causing the issue.
Is YaST setting a specific environment variable during the upgrade ?
I'm not aware of any other than YAST_IS_RUNNING. Is there a way to adapt systemd macros during 2nd stage, so I can test if it will help? I'm able to reproduce the situation described in bug, so if I could patch/restart something right before YaST starts online update, that would be nice. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c9
--- Comment #9 from Ladislav Slezak
Is YaST setting a specific environment variable during the upgrade ?
Unfortunately not, it sets only YAST_IS_RUNNING to "instsys" in the first stage, in the second stage it is "yes" which is the same as in installed system. (https://github.com/yast/yast-core/blob/master/liby2/src/genericfrontend.cc#L...) But maybe you could check for running yast via pgrep or something like that... (I use it in webyast like this: https://github.com/webyast/webyast/blob/master/plugins/status/app/models/met...) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c10
Frederic Crozat
(In reply to comment #7)
Hmm, the systemd macros are running "/usr/bin/systemctl try-restart YaST2-Second-Stage.service YaST2-Firstboot.service" on upgrade, which is causing the issue.
Is YaST setting a specific environment variable during the upgrade ?
I'm not aware of any other than YAST_IS_RUNNING.
Is there a way to adapt systemd macros during 2nd stage, so I can test if it will help?
Arggg, it is in %service_del_postun, so the 'try-restart' call is in the "old" package being uninstalled, not the "new" one being upgraded.. I don't think we can prevent the %postun in the old package of being run :( -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c11
--- Comment #11 from Frederic Crozat
Arggg, it is in %service_del_postun, so the 'try-restart' call is in the "old" package being uninstalled, not the "new" one being upgraded..
I don't think we can prevent the %postun in the old package of being run :(
After searching a little more in systemd, we could add either RefuseManualStart=true or RefuseManualStop=true in Yast second-stage systemd unit file. This should make the try-restart do nothing. I didn't test it, though.. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c12
Jiří Suchomel
After searching a little more in systemd, we could add either RefuseManualStart=true or RefuseManualStop=true in Yast second-stage systemd unit file. This should make the try-restart do nothing.
But that file is still part of yast2-installation, right? So we could not update it before the old one is used... -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c13
--- Comment #13 from Ladislav Slezak
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c14
--- Comment #14 from Jiří Suchomel
Well, it depends how systemd handles service files, if try-restart call loads the updated config it could help...
The problem is, how could we deliver corrected service file without reinstalling yast2-installation? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c15
--- Comment #15 from Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c16
Frederic Crozat
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c17
Jiří Suchomel
Be sure to put: RefuseManualStart=true in the [Unit] section of yast2 second stage (and not in [Service]).
That's what I did with YaST2-Second-Stage.service and it did not seem to help. Should I reload/restart something after the editing? Latest log lines from /var/log/messages: 2013-04-02T16:38:46.812222+02:00 linux systemd[1]: Reloading. 2013-04-02T16:38:50.746452+02:00 linux systemd[1]: Reloading. 2013-04-02T16:38:50.926531+02:00 linux systemd[1]: Stopping YaST2 Second Stage... Would it help to add some more debugging? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c18
Frederic Crozat
(In reply to comment #16)
Be sure to put: RefuseManualStart=true in the [Unit] section of yast2 second stage (and not in [Service]).
That's what I did with YaST2-Second-Stage.service and it did not seem to help. Should I reload/restart something after the editing?
Yes, you need to run systemctl daemon-reload (this should be done by the current systemd macros). This should make try-restart to fail.
Latest log lines from /var/log/messages:
2013-04-02T16:38:46.812222+02:00 linux systemd[1]: Reloading. 2013-04-02T16:38:50.746452+02:00 linux systemd[1]: Reloading. 2013-04-02T16:38:50.926531+02:00 linux systemd[1]: Stopping YaST2 Second Stage...
Would it help to add some more debugging?
you can try to boot with systemd.log_level=debug but I don't think you'll get more info. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c19
--- Comment #19 from Jiří Suchomel
(In reply to comment #17)
(In reply to comment #16)
Be sure to put: RefuseManualStart=true in the [Unit] section of yast2 second stage (and not in [Service]).
That's what I did with YaST2-Second-Stage.service and it did not seem to help. Should I reload/restart something after the editing?
Yes, you need to run systemctl daemon-reload (this should be done by the current systemd macros).
This should make try-restart to fail.
This did not help either. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c20
--- Comment #20 from Frederic Crozat
(In reply to comment #18)
(In reply to comment #17)
(In reply to comment #16)
Be sure to put: RefuseManualStart=true in the [Unit] section of yast2 second stage (and not in [Service]).
That's what I did with YaST2-Second-Stage.service and it did not seem to help. Should I reload/restart something after the editing?
Yes, you need to run systemctl daemon-reload (this should be done by the current systemd macros).
This should make try-restart to fail.
This did not help either.
Are you sure ? I've tested with another package which uses %service_* macros, adding RefuseManualStart=true to .service [Unit] and the service wasn't restarted after upgrading the package (I checked the service status before and after the upgrade). -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c21
--- Comment #21 from Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c22
Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c23
Frederic Crozat
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c24
--- Comment #24 from Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c25
--- Comment #25 from Bill Wayson
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c26
--- Comment #26 from Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c27
Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c28
Frederic Crozat
Frederic: preparing new yast2-installation with modified YaST2-Second-Stage.service and offering this one to online update really helps.
I assume this is gonna be our 12.3 solution. What about Factory, do you have something better?
For Factory, I'll modify the systemd rpm macros to allow packages to not restart a service on upgrade (similar to what we have with the old %restart_on_upgrade macro). Therefore, I suggest to not commit RefuseManualStart=true in yast master branch but only in 12.3 branch. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c
Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c29
Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c30
Marcus Meissner
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c31
Jiří Suchomel
osc maintenancerequest home:jsuchome:12.3 yast2-installation openSUSE:12.3 Using target project 'openSUSE:Maintenance' 163381
-- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c32
Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c32
Jiří Suchomel
https://bugzilla.novell.com/show_bug.cgi?id=812630
https://bugzilla.novell.com/show_bug.cgi?id=812630#c34
--- Comment #34 from Swamp Workflow Management
participants (1)
-
bugzilla_noreply@novell.com