Justin Mason wrote:
> I have a theory that this would indeed cause major slowdowns, since
> every warning message has to be transmitted via UDP to the syslogd
> daemon, who then writes it synchronously to disk.  That is a pretty
> slow operation, and causes I/O.

Just a guess: if strings being processed (mail contents or rules
or whatever) happen to get their utf8 flag set, Perl string operations
become significantly slower - as documented.

I haven't noticed performance degradation with SA under amavisd-new
(perhaps I wasn't paying attention, or it pays off that we are careful
never to let bytes become Perl characters unexpectedly), but it would be
worth checking at a couple of places within SA is strings suddenly
became utf8-flagged, which may happen as a result of some concatenations
or other string operations, or I/O from UTF8 file handles.

To test a string for utf8 flag, use function:  Encode::is_utf8($string).

An observation that 'use bytes' speeds things up, seems to confirm
my suspicions.

  Mark

Reply via email to