Bug 156935

Summary: During system updating, SuSEconfig.fonts will be call when updating each font package, wasting lots of time.
Product: [openSUSE] openSUSE 10.2 Reporter: Zhe Su <zsu>
Component: InstallationAssignee: Ruediger Oertel <ro>
Status: RESOLVED FIXED QA Contact: E-mail List <nld10-bugs-qa>
Severity: Normal    
Priority: P5 - None CC: aj, andreas.hanke, coolo, kukuk, ro
Version: Alpha 1   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Zhe Su 2006-03-10 08:22:54 UTC
When trying to update my NLD10 beta6 to beta7, I found that SuSEconfig.fonts will be called when updating each font package. As you know SuSEconfig.fonts is very slow, so the updating becomes very very slow.

Because all SuSEconfig scripts will be called by the end of updating, is it possible to disable calling SuSEconfig.fonts during updating?

Maybe other SuSEconfig scripts have similiar issue.
Comment 1 Lukas Ocilka 2006-03-13 12:55:52 UTC
It seems like a general problem of updating, script SuSEconfig.fonts might be called only once at the end of the update.
Comment 2 Jiri Srain 2006-04-18 21:02:30 UTC
This is problem of the particular packages - they should check the "YAST_IS_RUNNING" variable and if it is set, then not run SuSEconfig at all (it will be run by YaST after packages are installed/upgraded). Please, reassign to maintainer of affected font packages (don't know whether really all of them are affected, or only some and which)
Comment 3 Zhe Su 2006-04-19 02:50:30 UTC
Mike, please help look at this bug.
Comment 4 Mike Fabian 2006-04-19 10:34:53 UTC
All font packages are already using the macro '%run_suseconfig_fonts'
in the %post and %postun scripts.

As you can see in /usr/lib/rpm/suse_macros, this macro just calls
the macro %run_suseconfig with some options.

And in the same file you can see that %run_suseconfig is defined as:


    %run_suseconfig(m:) \
       %{!-m:echo -e "\\nERROR: missing parameter for macro run_suseconfig\\n" ; exit 1 ; } \
       if test "$YAST_IS_RUNNING" != "instsys" ; then \
	 if test -x /sbin/SuSEconfig -a -f /sbin/conf.d/SuSEconfig.%{-m*} ; then \
	   /sbin/SuSEconfig --module %{-m*} \
	 else \
	   echo -e "\\nERROR: SuSEconfig or requested SuSEconfig module not present!\\n" ; exit 1 \
	 fi \
       fi \
       %nil

i.e. this macro already checks the whether the YAST_IS_RUNNING is set to "instsys"
and if yes it does nothing.

So the problem on update is probably that YAST_IS_RUNNING is not set to "instsys".

Why not? Should it be set to "instsys"? Are there other values for
this variable beside "instsys"? Which ones?  Maybe the %run_suseconfig
macro should be changed so that it does not do anything if
YAST_IS_RUNNING is set to *any* value?

Comment 5 Mike Fabian 2006-04-19 16:44:54 UTC
reassign to ro@suse.de.
Comment 6 Mike Fabian 2006-04-19 16:47:57 UTC
I discussed with Stefan Hundhammer <sh@suse.de> and we found that
YaST2 sets YAST_IS_RUNNING=yes after the initial reboot.

YAST_IS_RUNNING=instsys is set only before the initial reboot.

Therefore, the %run_suseconfig macro should most likely do nothing if
YAST_IS_RUNNING is set to any value and only execute SuSEconfig
modules if YAST_IS_RUNNING is not set.

Comment 7 Ruediger Oertel 2006-04-24 12:12:29 UTC
to keep the changes minimal at this point, I'd propose to only
change %run_suseconfig_fonts and not %run_suseconfig in general.
Comment 8 Mike Fabian 2006-04-24 17:23:47 UTC
I think that's OK.
Comment 9 Ruediger Oertel 2006-05-10 13:28:52 UTC
I guess the possible impact may be worse than the problem we try to fix.
can we move this forward to 10.2 ?
Comment 10 Mike Fabian 2006-05-10 14:29:41 UTC
I think yes.

In that case we can probably do it right and change %run_suseconfig
instead of only changing %run_suseconfig_fonts.
Comment 11 Zhe Su 2006-05-16 07:50:14 UTC
Will you fix this issue in SLE 10?
Comment 12 Thorsten Kukuk 2006-05-16 07:54:16 UTC
No, I will not accept such a change now for SLE10.
Comment 13 Andreas Jaeger 2006-09-01 08:28:14 UTC
Rudi, can you fix this?
Comment 14 Ruediger Oertel 2006-11-02 14:36:14 UTC
ok,%run_suseconfig_fonts will now skip anything if YAST_IS_RUNNING is set