Mutt eat all system resources if color is used...

2008-07-13 Thread Michelle Konzack

*   Do not Cc: me, because I READ THIS LIST, if I write here   *
*Keine Cc: am mich, ich LESE DIESE LISTE wenn ich hier schreibe*


Hello *,

I am working with an IBM ThinkPad 570  (P2/366MHz/192MB)  and  it  works
perfectly but for some days I have setup some new colorization  and  now
mutt kill all of my CPU and Memory resources...

[ '~/.mutt/colors' ]
color body brightmagentadefault ^\-\-\-\-\\[ STDIN \\]\-\-.*
color body brightmagentadefault ^\\+\-\-\-\\[ STDIN \\]\-\-.*
color body brightmagentadefault ^\-\-\-\-\\[ manpage \'.*\' \\]\-\-.*
color body brightmagentadefault ^\\+\-\-\-\\[ manpage \'.*\' \\]\-\-.*
color body brightmagentadefault ^\-\-\-\-\\[ command \'.*\' \\]\-\-.*
color body brightmagentadefault ^\\+\-\-\-\\[ command \'.*\' \\]\-\-.*
color body brightmagentadefault '^| '
color body brightmagentadefault '^\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-.*'
color body brightmagentadefault '^\+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-.*'


This sniplet is the reason...

OK, I have arround 150  mailfolder  defined  in  mailboxes  and  after
checkig the 15th, mutt has eaten then whle memory (192 MByte) and  begin
to eat my SWAP (256 MByte).  Also if I press PAGEDOWN in  the  message
view, the CPU utilization jumps for 4-7 seconds to 100%

Can anyone tell me why?

Note:  I use colorization since many years and it was NEVER a problem.

Thanks, Greetings and nice Day/Evening
Michelle Konzack
Systemadministrator
24V Electronic Engineer
Tamay Dogan Network
Debian GNU/Linux Consultant


-- 
Linux-User #280138 with the Linux Counter, http://counter.li.org/
# Debian GNU/Linux Consultant #
Michelle Konzack   Apt. 917  ICQ #328449886
+49/177/935194750, rue de Soultz MSN LinuxMichi
+33/6/61925193 67100 Strasbourg/France   IRC #Debian (irc.icq.com)


signature.pgp
Description: Digital signature


Re: Mutt eat all system resources if color is used...

2008-07-13 Thread Cameron Simpson
On 12Jul2008 14:21, Michelle Konzack [EMAIL PROTECTED] wrote:
| I am working with an IBM ThinkPad 570  (P2/366MHz/192MB)  and  it  works
| perfectly but for some days I have setup some new colorization  and  now
| mutt kill all of my CPU and Memory resources...
| 
| [ '~/.mutt/colors' ]
| color body brightmagentadefault ^\-\-\-\-\\[ STDIN \\]\-\-.*

1: Why are all the dashes ('-') backslashed?
2: You do not need the trailing '.*' on all these patterns.

| color body brightmagentadefault ^\\+\-\-\-\\[ STDIN \\]\-\-.*
| color body brightmagentadefault ^\-\-\-\-\\[ manpage \'.*\' 
\\]\-\-.*

The inner '.*' here may be raising the cost to evaluate this pattern.
See if [^\]*] works better than .*.

| color body brightmagentadefault ^\\+\-\-\-\\[ manpage \'.*\' 
\\]\-\-.*
| color body brightmagentadefault ^\-\-\-\-\\[ command \'.*\' 
\\]\-\-.*
| color body brightmagentadefault ^\\+\-\-\-\\[ command \'.*\' 
\\]\-\-.*
| color body brightmagentadefault '^| '

You probably want to backslash the '|' here - it is a regexp punctuation
character.
[...snip...]

| OK, I have arround 150  mailfolder  defined  in  mailboxes  and  after
| checkig the 15th, mutt has eaten then whle memory (192 MByte) and  begin
| to eat my SWAP (256 MByte).  Also if I press PAGEDOWN in  the  message
| view, the CPU utilization jumps for 4-7 seconds to 100%
| 
| Can anyone tell me why?

I can't speculate about the memory usage.
But it is easy to write regular expressions that are very expensive.

I would do the following:

1: Get rid of the backslashes on the '-' characters.
   The just make everything hard to read.
   Test that the patterns still work.

2: Get rid of the trailing '.*' on each pattern.
   It is not needed and just makes extra work.
   (Urr, unless mutt colours only the matched part of the line.
   I have not checked that. But it is still a useful experiment.)
   Test that the patterns still work.
   And if so, see if the performance issues are improved.

3: Comment out the patterns with '.*' in the middle.
   See if the performance problems are affected.
   I would expect that you could comment out all the patterns
   in your snippet and add them back one at a time.
   This should tell you that a particular pattern is expensive,
   and presumably the others like it.

What results do you get?
-- 
Cameron Simpson [EMAIL PROTECTED] DoD#743
http://www.cskk.ezoshosting.com/cs/