Mailinglist Archive: yast-devel (35 mails)

< Previous Next >
Re: [yast-devel] Incredibly slow YCP files parsing (after 11.1 -> 11.3 upgrade)
  • From: Martin Vidner <mvidner@xxxxxxx>
  • Date: Tue, 10 Aug 2010 10:39:24 +0200
  • Message-id: <20100810083924.GA9996@xxxxxxxxxxxxxxxx>
On Mon, Aug 09, 2010 at 10:41:48PM +0200, Bubli wrote:
Hola YaST hackers,

recently I've upgraded my laptop from the ancient 11.1 to 11.3 and since
YaST became slower than molasses. It's not my subjective impression only, I
have some evidence to support that claim, though I have (so far) no clue why
is this happening.

Watching the log, I noticed the whole thing hangs on importing some (random?)
modules and the hangs last from 20-30 secs up to several minutes. After that,

it imports some more modules and hangs again on importing something else ...
and so on.

Are they really random, hanging on different places in different
runs of the same command?

Allright, so I deployed strace. Looking at its output, this command is fast:
'/usr/lib/YaST2/bin/y2base $module qt'

OTOH, this one is incredibly slow:
'/sbin/yast2 $module'

Watching strace output, lines like this scroll by for ages:

[pid 8194] read(7, "b", 1) = 1
[pid 8194] read(7, "u", 1) = 1
[pid 8194] read(7, "s", 1) = 1
[pid 8194] read(7, ";", 1) = 1

Argh, unbuffered reads like this distort the strace quite a lot, we
must get rid of them. You can work around it by redirecting the
strace output to a file so that it does not have to scroll :-/

OK, so obviously the more YCP files it has to parse, the longer it takes to
launch. Comparing y2-users (lots of YCP files) with y2-inst_release_notes
(relatively few YCP files), the former takes ~5 minutes to launch, while the
latter needs only 5 seconds.

Soo - this can't be a secret YaST feature, can it? :) Am I doing anything
wrong? Did upgrade mess something up? If so, what? Has anyone seen something
like this before (in bugzilla etc.)?
If needed, I can make my laptop available if someone wants to play with it

Please file me a bug, with y2logs, without strace, and I'll fix the
unbuffered reads to make stracing more useful.

Martin Vidner, YaST developer

Kuracke oddeleni v restauraci je jako fekalni oddeleni v bazenu
< Previous Next >