Comment # 4 on bug 1206285 from
The bug that you are describing I cannot reproduce, but I fully believe that
this happens on your machine.

The problem lies much deeper: That YaST module breaks a promise between the
YaST application code (the module) and the UI engine; it's completely misusing
the underlying widget that displays the text.

That widget is the YLogView widget which is meant to implement something like a
"tail -F" shell command in a terminal window, but on the YaST UI level:
Continuously display the last few lines of a log file as more and more lines
are added to that log file, while you can scroll back a number of lines to see
older content.

While the "tail -F" command takes care of always displaying the most recent
last few lines of the file, the xterm / KDE konsole / Gnome terminal / Xfce4
console window provides a scroll bar and buffers previous lines; depending on
how you configured that terminal window, it may be 50, 100, 1000 or even more
lines, but in any case, it will always be a limited number.

The YLogView widget has a property "visibleLines" for the number of lines that
the "tail -F" equivalent displays immediately, and a property "maxLines" for
the size of the scroll-back buffer.

While "visibleLines" must be a limited number because your screen / the window
has a limited size, there is the possibility to set "maxLines" to 0 which
means: Keep everything, do not cut anything off.

But that comes with a caveat: An application using that must take care to set
reasonable limits by some other means; or be very, very sure that the size of
that scroll-back buffer doesn't get out of hand. Otherwise, someting will
explode; if it isn't an OOM (out-of memory) that terminates the program, the
underlying widget (Qt widget in this case) may have limitations.

And that contract was broken here: That messages file is so large that it does
indeed appear to cause something to explode. It's 72 MB of text with 468,722
lines.

During my first tests I thought the process was in an endless loop; but no, it
just takes a looong time (about a minute or more) to process that huge amount
of text.


You are receiving this mail because: